Checkout Handler
Tích hợp trang thanh toán Dodo Payments vào ứng dụng Fastify của bạn.
Customer Portal
Cho phép khách hàng quản lý đăng ký và thông tin.
Webhooks
Nhận và xử lý các sự kiện webhook của Dodo Payments.
Cài đặt
1
Install the package
Chạy lệnh sau tại thư mục gốc dự án của bạn:
2
Set up environment variables
Tạo một
.env file trong thư mục gốc dự án của bạn:Ví dụ về Xử lý Đường dẫn
Tất cả ví dụ giả định bạn đang sử dụng Fastify App Router.
- Checkout Handler
- Customer Portal Handler
- Webhook Handler
Sử dụng trình xử lý này để tích hợp trang thanh toán Dodo Payments vào ứng dụng Fastify của bạn. Hỗ trợ các luồng thanh toán tĩnh (GET), động (POST) và phiên (POST).
Xử lý Đường dẫn Thanh toán
Dodo Payments hỗ trợ ba loại luồng thanh toán để tích hợp thanh toán vào trang web của bạn, bộ điều hợp này hỗ trợ tất cả các loại luồng đó.
- Liên kết Thanh toán Tĩnh: URL có thể chia sẻ ngay lập tức để thu thập thanh toán nhanh chóng, không cần mã.
- Liên kết Thanh toán Động: Tạo liên kết thanh toán theo chương trình với các chi tiết tùy chỉnh bằng cách sử dụng API hoặc SDK.
- Phiên Thanh toán: Tạo trải nghiệm thanh toán an toàn, tùy chỉnh với giỏ hàng sản phẩm và thông tin khách hàng được cấu hình trước.
Static Checkout (GET)
Static Checkout (GET)
Tham số truy vấn được hỗ trợ
string
bắt buộc
Mã định danh sản phẩm (ví dụ,
?productId=pdt_nZuwz45WAs64n3l07zpQR).integer
Số lượng sản phẩm.
string
Họ và tên đầy đủ của khách hàng.
string
Tên đầu tiên của khách hàng.
string
Họ của khách hàng.
string
Địa chỉ email của khách hàng.
string
Quốc gia của khách hàng.
string
Dòng địa chỉ của khách hàng.
string
Thành phố của khách hàng.
string
Tiểu bang/tỉnh của khách hàng.
string
Mã zip/bưu điện của khách hàng.
boolean
Vô hiệu hóa trường họ và tên.
boolean
Vô hiệu hóa trường tên.
boolean
Vô hiệu hóa trường họ.
boolean
Vô hiệu hóa trường email.
boolean
Vô hiệu hóa trường quốc gia.
boolean
Vô hiệu hóa trường dòng địa chỉ.
boolean
Vô hiệu hóa trường thành phố.
boolean
Vô hiệu hóa trường tiểu bang.
boolean
Vô hiệu hóa trường mã zip.
string
Chỉ định loại tiền thanh toán (ví dụ,
USD).boolean
Hiển thị trình chọn tiền tệ.
integer
Chỉ định số tiền thanh toán (ví dụ,
1000 cho $10.00).boolean
Hiển thị các trường giảm giá.
string
Bất kỳ tham số truy vấn nào bắt đầu bằng
metadata_ sẽ được truyền dưới dạng metadata.Định dạng Phản hồi
Thanh toán tĩnh trả về phản hồi JSON với URL thanh toán:Dynamic Checkout (POST)
Dynamic Checkout (POST)
- Gửi các tham số dưới dạng thân JSON trong một yêu cầu POST.
- Hỗ trợ cả thanh toán một lần và định kỳ.
- Để xem danh sách đầy đủ các trường thân POST được hỗ trợ, tham khảo:
Định dạng Phản hồi
Thanh toán động trả về phản hồi JSON với URL thanh toán:Checkout Sessions (POST)
Checkout Sessions (POST)
Phiên thanh toán cung cấp trải nghiệm thanh toán lưu trú an toàn hơn, xử lý toàn bộ luồng thanh toán cho cả mua một lần và đăng ký với khả năng tùy chỉnh đầy đủ.Tham khảo Hướng dẫn Tích hợp Phiên Thanh toán để biết thêm chi tiết và danh sách đầy đủ các trường được hỗ trợ.
Định dạng Phản hồi
Các phiên thanh toán trả về phản hồi JSON với URL thanh toán:CODE_PLACEHOLDER_dd95c237f3ca327d_EndXử lý Đường dẫn Cổng Khách Hàng
Bộ xử lý Đường dẫn Cổng Khách Hàng cho phép bạn tích hợp liền mạch cổng khách hàng Dodo Payments vào ứng dụng Fastify của bạn.Tham số truy vấn
string
bắt buộc
ID khách hàng cho phiên cổng (ví dụ,
?customer_id=cus_123).boolean
Nếu đặt thành
true, gửi email cho khách hàng với liên kết cổng.Xử lý Đường dẫn Webhook
- Phương thức: Chỉ hỗ trợ yêu cầu POST. Các phương thức khác trả về 405.
- Xác minh Chữ ký: Xác minh chữ ký webhook bằng cách sử dụng
webhookKey. Trả về 401 nếu xác minh thất bại. - Xác thực Tải trọng: Được xác thực bằng Zod. Trả về 400 cho các tải trọng không hợp lệ.
- Xử lý Lỗi:
- 401: Chữ ký không hợp lệ
- 400: Tải trọng không hợp lệ
- 500: Lỗi nội bộ trong quá trình xác minh
- Định tuyến Sự kiện: Gọi bộ xử lý sự kiện thích hợp dựa trên loại tải trọng.