Hướng dẫn này cung cấp mã triển khai mẫu cho một ứng dụng Node.js/Express. Bạn có thể sửa đổi mã này cho framework cụ thể của bạn (Next.js, React, Vue, v.v.) và tùy chỉnh giao diện người dùng theo nhu cầu của ứng dụng của bạn.
- Tạo các sản phẩm đăng ký với giá dựa trên số ghế
- Thiết lập các tiện ích bổ sung cho các ghế bổ sung
- Tạo liên kết thanh toán với số lượng tiện ích bổ sung tùy chỉnh
- Xử lý các phiên thanh toán với số lượng ghế động
Những gì chúng ta đang xây dựng
Hãy tạo một mô hình giá dựa trên số ghế:- Gói cơ bản: 49 đô la/tháng cho tối đa 5 thành viên trong nhóm
- Tiện ích bổ sung ghế: 2 đô la/tháng cho mỗi ghế bổ sung
- Liên kết thanh toán: Thanh toán động với số lượng ghế tùy chỉnh
Trước khi bắt đầu, hãy đảm bảo bạn có:
- Một tài khoản Dodo Payments
- Kiến thức cơ bản về TypeScript/Node.js
Bước 1: Tạo Tiện Ích Bổ Sung Ghế Của Bạn
Bây giờ chúng ta cần tạo một tiện ích bổ sung đại diện cho các ghế bổ sung. Tiện ích bổ sung này sẽ được gắn vào đăng ký cơ bản của chúng tôi và cho phép khách hàng mua thêm ghế.
1
Đi đến Tiện Ích Bổ Sung
- Trong bảng điều khiển Dodo Payments của bạn, ở lại trong phần Sản phẩm
- Nhấp vào tab Tiện ích bổ sung
- Nhấp Tạo Tiện Ích Bổ Sung
2
Nhập chi tiết tiện ích bổ sung
Điền vào các giá trị sau cho tiện ích bổ sung ghế của chúng tôi:Tên Tiện Ích Bổ Sung:
Additional Team SeatMô tả: Add extra team members to your workspace with full access to all featuresGiá: Nhập → 2.00Tiền tệ: Phải khớp với tiền tệ của đăng ký cơ bản của bạnDanh mục thuế: Chọn danh mục phù hợp cho sản phẩm của bạn.3
Lưu tiện ích bổ sung của bạn
- Xem lại tất cả các cài đặt của bạn:
- Tên: Ghế thêm cho đội
- Giá: 2,00 đô la/tháng
- Nhấp Tạo Tiện Ích Bổ Sung
Tiện ích bổ sung đã được tạo! Tiện ích bổ sung ghế của bạn hiện có sẵn để gắn vào các đăng ký.
Bước 2: Tạo Sản Phẩm Đăng Ký Cơ Bản Của Bạn
Chúng ta sẽ bắt đầu bằng cách tạo một sản phẩm đăng ký cơ bản bao gồm 5 thành viên trong nhóm. Đây sẽ là nền tảng cho mô hình giá dựa trên số ghế của chúng ta.
1
Đi đến Sản Phẩm
- Đăng nhập vào bảng điều khiển Dodo Payments của bạn
- Nhấp vào Sản phẩm trong thanh bên trái
- Nhấp vào nút Tạo Sản Phẩm
- Chọn Đăng ký làm loại sản phẩm
2
Điền vào chi tiết đăng ký
Bây giờ chúng ta sẽ nhập các chi tiết cụ thể cho gói cơ bản của mình:Tên Sản Phẩm:
MotionMô tả: Where your team's documentation lives.Giá định kỳ: Nhập → 49.00Chu kỳ thanh toán: Chọn → MonthlyTiền tệ: Chọn tiền tệ ưa thích của bạn (ví dụ: USD)Bước 3: Kết Nối Tiện Ích Bổ Sung Với Đăng Ký
Bây giờ chúng ta cần liên kết tiện ích bổ sung ghế của mình với đăng ký cơ bản để khách hàng có thể mua thêm ghế trong quá trình thanh toán.1
Gắn tiện ích bổ sung ghế

- Cuộn xuống phần Tiện Ích Bổ Sung
- Nhấp Thêm Tiện Ích Bổ Sung
- Từ menu thả xuống, chọn tiện ích bổ sung ghế của bạn
- Xác nhận rằng nó xuất hiện trong cấu hình đăng ký của bạn
2
Lưu thay đổi đăng ký
- Xem lại toàn bộ thiết lập đăng ký của bạn:
- Gói cơ bản: 49 đô la/tháng cho 5 ghế
- Tiện ích bổ sung: 2 đô la/tháng cho mỗi ghế bổ sung
- Thời gian dùng thử miễn phí: 14 ngày
- Nhấp Lưu Thay Đổi
Giá dựa trên số ghế đã được cấu hình! Khách hàng hiện có thể mua gói cơ bản của bạn và thêm ghế bổ sung khi cần thiết.
Bước 4: Tạo Liên Kết Thanh Toán Với Số Lượng Tiện Ích Bổ Sung Tùy Chỉnh
Bây giờ hãy tạo một ứng dụng Express.js để tạo liên kết thanh toán với số lượng tiện ích bổ sung tùy chỉnh. Đây là nơi sức mạnh thực sự của giá dựa trên số ghế xuất hiện - bạn có thể tạo các phiên thanh toán động với bất kỳ số lượng ghế bổ sung nào.1
Thiết lập dự án của bạn
Tạo một dự án Node.js mới và cài đặt các phụ thuộc cần thiết:Tạo một tệp
tsconfig.json:2
Tạo tệp môi trường của bạn
Tạo một tệp
.env với khóa API Dodo Payments của bạn:3
Triển khai việc tạo phiên thanh toán
Tạo một tệp
src/server.ts với mã sau:4
Thêm giao diện web đơn giản
Tạo một tệp
public/index.html để dễ dàng thử nghiệm:Giao diện web đã được tạo! Bạn hiện có một giao diện đơn giản để thử nghiệm với các số lượng ghế khác nhau.
5
Phục vụ các tệp tĩnh
Thêm điều này vào
src/server.ts của bạn để phục vụ tệp HTML:Các tệp tĩnh đã được cấu hình! Truy cập
http://localhost:3000 để xem giao diện demo của bạn.Bước 5: Kiểm Tra Triển Khai Của Bạn
Hãy kiểm tra triển khai giá dựa trên số ghế của chúng ta để đảm bảo mọi thứ hoạt động chính xác.1
Khởi động máy chủ của bạn
- Đảm bảo bạn có tệp
.envvới khóa API chính xác - Cập nhật ID sản phẩm và tiện ích bổ sung trong mã của bạn với các giá trị thực tế từ bảng điều khiển Dodo Payments của bạn
- Khởi động máy chủ của bạn:
Máy chủ của bạn nên khởi động thành công và hiển thị “Máy chủ đang chạy trên http://localhost:3000”
2
Kiểm tra giao diện web

- Mở trình duyệt của bạn và truy cập
http://localhost:3000 - Bạn sẽ thấy giao diện demo giá dựa trên số ghế
- Thử các số lượng ghế khác nhau (0, 3, 10, v.v.)
- Nhấp “Tạo Liên Kết Thanh Toán” cho mỗi số lượng
- Xác minh rằng các URL thanh toán được tạo chính xác
3
Kiểm tra một phiên thanh toán
- Tạo một liên kết thanh toán với 3 ghế bổ sung
- Nhấp vào URL thanh toán để mở thanh toán Dodo Payments
- Xác minh rằng thanh toán hiển thị:
- Gói cơ bản: 49 đô la/tháng
- Ghế bổ sung: 3 × 2 đô la = 6 đô la/tháng
- Hoàn tất việc mua thử nghiệm
Thanh toán nên hiển thị đúng phân tích giá và cho phép bạn hoàn tất việc mua hàng.
4
Lắng nghe webhook và cập nhật DB
Để giữ cho cơ sở dữ liệu của bạn đồng bộ với các thay đổi về đăng ký và ghế, bạn cần lắng nghe các sự kiện webhook từ Dodo Payments. Webhook thông báo cho backend của bạn khi một khách hàng hoàn tất thanh toán, cập nhật đăng ký của họ hoặc thay đổi số lượng ghế.Theo hướng dẫn webhook chính thức của Dodo Payments để có hướng dẫn từng bước về cách thiết lập các điểm cuối webhook và xử lý các sự kiện:
Tài liệu Webhooks Dodo Payments
Tìm hiểu cách nhận và xử lý an toàn các sự kiện webhook cho quản lý đăng ký và ghế.
Khắc Phục Sự Cố
Các vấn đề phổ biến và giải pháp của chúng:Tạo thanh toán không thành công
Tạo thanh toán không thành công
Nguyên nhân có thể:
- ID sản phẩm hoặc ID tiện ích bổ sung không hợp lệ
- Khóa API không có đủ quyền
- Tiện ích bổ sung không được liên kết đúng cách với đăng ký
- Vấn đề kết nối mạng
- Xác minh rằng ID sản phẩm và ID tiện ích bổ sung tồn tại trong bảng điều khiển Dodo Payments của bạn
- Kiểm tra rằng tiện ích bổ sung được gắn đúng cách vào đăng ký
- Đảm bảo khóa API có quyền tạo phiên thanh toán
- Kiểm tra kết nối API với một yêu cầu GET đơn giản
Chúc mừng! Bạn đã Triển Khai Giá Dựa Trên Số Ghế
Bạn đã thành công trong việc tạo một hệ thống giá dựa trên số ghế với Dodo Payments! Đây là những gì bạn đã hoàn thành:Đăng Ký Cơ Bản
Tạo một sản phẩm đăng ký với 5 ghế bao gồm với giá 49 đô la/tháng
Tiện Ích Bổ Sung Ghế
Cấu hình các tiện ích bổ sung cho các ghế bổ sung với giá 2 đô la/tháng cho mỗi ghế
Thanh Toán
Xây dựng một API tạo các phiên thanh toán với số lượng ghế tùy chỉnh
Giao Diện Web
Tạo một giao diện web đơn giản để thử nghiệm với các số lượng ghế khác nhau
Ví dụ này chỉ minh họa một triển khai tối thiểu của giá dựa trên số ghế. Để sử dụng trong sản xuất, bạn nên thêm xử lý lỗi mạnh mẽ, xác thực, xác thực dữ liệu, các biện pháp bảo mật và điều chỉnh logic để phù hợp với yêu cầu của ứng dụng của bạn.