SDK Thanh toán Dodo cung cấp một cách tích hợp liền mạch để đưa overlay thanh toán của chúng tôi vào ứng dụng web của bạn. Được xây dựng bằng TypeScript và các tiêu chuẩn web hiện đại, nó cung cấp một giải pháp mạnh mẽ để xử lý thanh toán với việc xử lý sự kiện theo thời gian thực và các chủ đề tùy chỉnh.
Cài đặt SDK Thanh toán Dodo bằng cách sử dụng trình quản lý gói ưa thích của bạn:
Sao chép
npm install dodopayments-checkout
2
Khởi tạo SDK
Khởi tạo SDK trong ứng dụng của bạn, thường là trong thành phần chính hoặc điểm vào ứng dụng:
Sao chép
import { DodoPayments } from "dodopayments-checkout";DodoPayments.Initialize({ mode: "test", // Change to 'live' for production displayType: "overlay", // Optional: defaults to 'overlay' for overlay checkout onEvent: (event) => { console.log("Checkout event:", event); // Handle different events switch (event.event_type) { case "checkout.opened": // Checkout overlay has been opened break; case "checkout.closed": // Checkout has been closed break; case "checkout.error": // Handle errors console.error("Checkout error:", event.data?.message); break; } },});
Luôn khởi tạo SDK trước khi cố gắng mở thanh toán. Việc khởi tạo nên diễn ra một lần khi ứng dụng của bạn tải.
Hiển thị hoặc ẩn bộ đếm thời gian thanh toán. Mặc định là true. Khi bị vô hiệu hóa, bạn sẽ nhận được sự kiện checkout.link_expired khi phiên hết hạn.
options.showSecurityBadge
boolean
Không
Hiển thị hoặc ẩn huy hiệu bảo mật. Mặc định là true.
options.manualRedirect
boolean
Không
Khi được kích hoạt, thanh toán sẽ không tự động chuyển hướng sau khi hoàn tất. Thay vào đó, bạn sẽ nhận được các sự kiện checkout.status và checkout.redirect_requested để tự xử lý việc chuyển hướng.
DodoPayments.Initialize({ onEvent: (event: CheckoutEvent) => { switch (event.event_type) { case "checkout.opened": // Checkout overlay has been opened break; case "checkout.payment_page_opened": // Payment page has been displayed break; case "checkout.customer_details_submitted": // Customer and billing details submitted break; case "checkout.closed": // Checkout has been closed break; case "checkout.redirect": // Checkout will perform a redirect break; case "checkout.error": // An error occurred console.error("Error:", event.data?.message); break; case "checkout.link_expired": // Checkout session has expired (only when showTimer is false) break; case "checkout.status": // Checkout status update (only when manualRedirect is enabled) const status = event.data?.message?.status; break; case "checkout.redirect_requested": // Redirect requested (only when manualRedirect is enabled) const redirectUrl = event.data?.message?.redirect_to; break; } }});
Loại sự kiện
Mô tả
checkout.opened
Overlay thanh toán đã được mở
checkout.payment_page_opened
Trang thanh toán đã được hiển thị
checkout.customer_details_submitted
Thông tin khách hàng và thanh toán đã được gửi
checkout.closed
Overlay thanh toán đã được đóng
checkout.redirect
Thanh toán sẽ thực hiện chuyển hướng
checkout.error
Đã xảy ra lỗi trong quá trình thanh toán
checkout.link_expired
Được kích hoạt khi phiên thanh toán hết hạn. Chỉ nhận được khi showTimer được đặt thành false.
checkout.status
Được kích hoạt khi manualRedirect được kích hoạt. Chứa trạng thái thanh toán (succeeded, failed, hoặc processing).
checkout.redirect_requested
Được kích hoạt khi manualRedirect được kích hoạt. Chứa URL để chuyển hướng khách hàng đến.
Bạn có thể tùy chỉnh giao diện thanh toán bằng cách truyền một đối tượng themeConfig trong tham số options khi mở thanh toán. Cấu hình chủ đề hỗ trợ cả chế độ sáng và tối, cho phép bạn tùy chỉnh màu sắc, viền, văn bản, nút và bán kính viền.
SDK cung cấp thông tin lỗi chi tiết thông qua hệ thống sự kiện. Luôn thực hiện xử lý lỗi đúng cách trong hàm callback của bạn onEvent:
Sao chép
DodoPayments.Initialize({ mode: "test", displayType: "overlay", onEvent: (event: CheckoutEvent) => { if (event.event_type === "checkout.error") { console.error("Checkout error:", event.data?.message); // Handle error appropriately // You may want to show a user-friendly error message // or retry the checkout process } if (event.event_type === "checkout.link_expired") { // Handle expired checkout session console.warn("Checkout session has expired"); } }});
Luôn xử lý sự kiện checkout.error để cung cấp trải nghiệm người dùng tốt khi xảy ra lỗi.
Gửi email tới support@dodopayments.com với URL miền sản xuất của bạn và yêu cầu kích hoạt Apple Pay.
3
Kiểm tra sau khi xác nhận
Sau khi được xác nhận, xác minh xem Apple Pay có xuất hiện trong thanh toán và kiểm tra toàn bộ quy trình.
Apple Pay yêu cầu xác minh miền trước khi nó xuất hiện trong môi trường sản xuất. Liên hệ với bộ phận hỗ trợ trước khi phát hành nếu bạn dự định cung cấp Apple Pay.
Chọn loại thanh toán phù hợp cho trường hợp sử dụng của bạn:
Tính năng
Thanh toán Overlay
Thanh toán Inline
Độ sâu tích hợp
Modal trên cùng trang
Hoàn toàn nhúng trong trang
Kiểm soát bố cục
Hạn chế
Toàn quyền kiểm soát
Thương hiệu
Tách biệt với trang
Liền mạch
Nỗ lực thực hiện
Thấp hơn
Cao hơn
Tốt nhất cho
Tích hợp nhanh, các trang hiện có
Các trang thanh toán tùy chỉnh, quy trình chuyển đổi cao
Sử dụng thanh toán overlay để tích hợp nhanh với ít thay đổi trên các trang hiện có. Sử dụng thanh toán inline khi bạn muốn kiểm soát tối đa trải nghiệm thanh toán và thương hiệu liền mạch.