Giới thiệu
Kết nối Dodo Payments với GoHighLevel (GHL) để bán hàng từ funnel, website, email và SMS của GHL, đồng thời xử lý đơn hàng bằng tính năng tự động hóa của GHL. GHL là một nền tảng CRM và marketing với funnel, website, email và SMS, cùng tính năng tự động hóa (Workflows). GHL không liệt kê Dodo Payments là payment processor tích hợp sẵn, vì vậy bạn cần kết nối hai nền tảng theo một trong ba cách. Hãy chọn cách phù hợp dựa trên mức độ tích hợp checkout mong muốn và khả năng viết code của bạn. Mọi phương thức đều xử lý fulfillment theo cùng một cách: Dodo Payments gửi webhook events đến workflow Inbound Webhook của GHL. Workflow này gắn tag cho contact, cấp quyền truy cập và gửi email xác nhận.Chọn phương thức
Ba phương thức khác nhau về lượng code cần viết và nơi khách hàng thực hiện thanh toán:Điều kiện tiên quyết
Trước khi bắt đầu, bạn cần:- Một tài khoản Dodo Payments có ít nhất một product.
- Một tài khoản GoHighLevel có funnel, website hoặc workflow.
- Quyền truy cập Developer → Webhooks trong dashboard Dodo Payments và Developer → API Keys nếu bạn cần API key.
- Đối với Phương thức B và C: một backend hoặc serverless endpoint nhỏ để tạo checkout sessions.
Fulfillment với Webhooks (Tất cả phương thức)
Workflow webhook là lớp tự động hóa. Bạn chỉ cần thiết lập một lần, sau đó có thể dùng với mọi phương thức checkout.Create the Workflow
Add the Inbound Webhook Trigger
Register the Webhook in Dodo Payments
Add Fulfillment Actions
Phương thức A: Payment Links (No-Code)
Thêm payment link của Dodo Payments vào bất kỳ nút GHL, call to action trong funnel, nút trên trang order, email hoặc SMS nào. Khách hàng thanh toán trên checkout do Dodo Payments host. Để xem checkout hỗ trợ những gì, hãy tham khảo Checkout Features.Create a Product and Copy Its Payment Link
https://checkout.dodopayments.com/buy/{product_id}.Add the Link to Your GHL Button
Set a Success Page (Optional)
redirect_url.Phương thức B: Overlay Checkout (Custom Code)
Phương thức B mở checkout Dodo Payments dưới dạng modal overlay trên trang GHL của bạn, sử dụng Checkout SDK từ CDN. Phương thức này cần backend để tạo checkout session và trả vềcheckoutUrl.
Create a Backend Endpoint That Calls the Checkout Sessions API
checkout_url.Ví dụ về logic của handler, bạn có thể điều chỉnh cho phù hợp với nền tảng của mình:DODO_PAYMENTS_API_KEY trên nền tảng bạn deploy và không bao giờ commit key vào code. Cho phép request từ domain GHL của bạn (CORS) và cung cấp endpoint từ domain do bạn kiểm soát, chẳng hạn như https://api.example.com/create-checkout. Khi chuyển sang live mode, đổi URL thành https://live.dodopayments.com/checkouts.Add a Custom Code Element in the GHL Page Builder
- Nhấp vào biểu tượng + ở góc trên bên trái của builder để mở Quick Add.
- Chọn Elements từ danh sách category ở bên trái.
- Tìm Custom Code (cũng hiển thị dưới dạng HTML) và kéo vào trang.
- Dán code bên dưới vào code editor của element rồi lưu.
Publish and Test on Your Domain
Phương thức C: Inline (Embedded) Checkout
Phương thức C nhúng form checkout bên trong trang GHL của bạn, không redirect và không popup. Phương thức này sử dụng cùng SDK với một container element để mount. Giống Phương thức B, phương thức này cần backend để tạo session.Create a Backend Endpoint That Calls the Checkout Sessions API
{ checkoutUrl }.Add a Container and SDK via Custom Code
- Nhấp vào biểu tượng + ở góc trên bên trái của builder để mở Quick Add.
- Chọn Elements từ danh sách category ở bên trái.
- Tìm Custom Code (cũng hiển thị dưới dạng HTML) và kéo vào trang tại vị trí bạn muốn hiển thị form checkout.
- Dán code bên dưới vào code editor của element rồi lưu.
Verify Your Domain for Wallets (Apple Pay)
/.well-known/apple-developer-merchantid-domain-association. Trên các trang do GHL lưu trữ, hãy sử dụng hosted checkout từ Payment Links (Approach A) hoặc bỏ qua Apple Pay.Các sự kiện cần xử lý
Đăng ký endpoint GHL với các sự kiện mà workflow của bạn xử lý. Bảng dưới đây đề xuất một hành động GHL cho từng sự kiện:data.customer.email. Sử dụng hành động find/create contact by email của GHL để đối chiếu khoản thanh toán với contact phù hợp. Để xem mọi sự kiện, hãy tham khảo Webhook Event Guide.
Kiểm thử & đưa vào vận hành
Test in Test Mode
4242 4242 4242 4242 (ngày hết hạn 06/32, CVV 123), rồi xác nhận rằng workflow GHL chạy và áp dụng tag hoặc quyền truy cập.Go Live
- Payment Links (A): Thay thế liên kết bằng payment link live của sản phẩm.
- Overlay checkout (B): Trỏ backend của bạn đến
https://live.dodopayments.com/checkoutsbằng API key live và đặtmodethành"live"trong lệnh gọiInitializecủa SDK. - Inline checkout (C): Thực hiện các thay đổi giống như đối với overlay checkout vì tùy chọn này sử dụng cùng endpoint backend và quá trình khởi tạo SDK.
Mẹo
Khắc phục sự cố
Payment succeeded but nothing happened in GHL
Payment succeeded but nothing happened in GHL
Contact not created or not matched
Contact not created or not matched
Payment isn't showing in GHL's Payments tab
Payment isn't showing in GHL's Payments tab