Bản nháp
Cửa hàng chỉ nhận được tiền khi đã nối ít nhất một cổng thanh toán. Dikafy không giữ tiền hộ bạn: bạn nối tài khoản Stripe / PayPal / Airwallex của chính bạn, và tiền khách trả đi thẳng vào đó. Chúng tôi không đứng giữa, không giữ số dư, không chi trả lại cho bạn.
Điều đó có hai hệ quả bạn nên biết ngay: bạn cần tự mở tài khoản ở nhà cung cấp trước, và mọi tranh chấp hay hoàn tiền diễn ra giữa bạn với họ.

Bốn cổng, và chọn cổng nào
| Cổng | Dùng khi | Ghi chú |
|---|---|---|
| Test card (dkcard) | Chạy thử, quay demo | Cổng giả chạy ngay trong hệ thống. Không có tiền thật |
| Stripe | Phổ biến nhất, hỗ trợ rộng nhất | Thẻ trên trang, Apple Pay, Google Pay |
| PayPal | Khách quen dùng ví PayPal | Ví, nút express, và thẻ trên trang (nếu tài khoản được duyệt) |
| Airwallex | Cần thu nhiều loại tiền tệ | Thẻ trên trang |
Nối được nhiều cổng cùng lúc. Khi đó trang thanh toán hiện tất cả cổng đang bật và khách tự chọn.
dkcard là để thử, không phải để bán. Nó chạy đủ vòng đời tiền — giữ tiền, thu, hoàn — nhưng bằng một sổ cái trong bộ nhớ. Đơn tạo ra trông y hệt đơn thật, nên đừng để nó bật khi cửa hàng đã mở bán.
Nối một cổng
Bấm Connect provider ở góc trên bên phải.

Provider — chọn trước tiên, vì các ô bên dưới đổi theo nó.
Mode — Sandbox (test) hay Live. Ô này quan trọng hơn vẻ ngoài của nó, và không phải cổng nào cũng hiểu nó giống nhau:
- Với PayPal và Airwallex, Mode chọn máy chủ mà cửa hàng gọi tới: Sandbox gọi máy chủ thử, Live gọi máy chủ thật. Chọn sai thì khoá bị từ chối — bấm Test connection là thấy ngay, và đó là lý do nên bấm.
- Với Stripe, bản thân khoá đã tự nói nó là loại nào (
sk_test_…so vớisk_live_…), nên Mode ở đây chỉ là nhãn. Dán khoá live vào một cổng đánh dấu Sandbox thì tiền vẫn chạy thật, chỉ có badge trên thẻ nói dối.
Display name — tên khách nhìn thấy ở trang thanh toán. Bỏ trống thì hiện tên nhà cung cấp. Nhiều cửa hàng đặt là Thẻ tín dụng thay vì Stripe, vì khách không cần biết bạn dùng cổng nào.
Rồi tới phần khoá, khác nhau theo từng cổng:
| Cổng | Ô cần điền | Lấy ở đâu |
|---|---|---|
| Stripe | Secret / restricted key (sk_… hoặc rk_…)Publishable key ( pk_…) |
Stripe Dashboard → Developers → API keys |
| PayPal | Client ID, Secret Storefront URL (không bắt buộc) |
PayPal Developer → Apps & Credentials |
| Airwallex | Client ID, API key | Airwallex → Account → Developer |
| dkcard | không có ô nào | — |
Test connection — bấm trước khi lưu. Nó gọi thẳng sang nhà cung cấp để hỏi xem khoá có dùng được không, và không tạo dữ liệu gì cả: không đơn thử, không giao dịch. Nếu khoá sai bạn biết ngay tại đây, thay vì biết vào lần đầu có khách thật bấm thanh toán.
Bấm Connect để lưu.
Khoá bí mật không bao giờ hiện lại. Mở Edit một cổng đã nối thì ô khoá luôn trống với chữ "Leave blank to keep the current key". Để trống là giữ nguyên khoá cũ; gõ vào là thay bằng khoá mới. Bản thân hệ thống cũng không đọc ngược lại được — khoá được mã hoá khi lưu và chỉ giải mã đúng lúc gọi sang nhà cung cấp.
Webhook — và vì sao thẻ nào cũng nhắc
Dưới tên mỗi cổng có một địa chỉ dài kiểu:
https://api.your-store.com/api/webhook/payments/stripe/a9b73421-…
Đó là chỗ nhà cung cấp báo ngược về cho cửa hàng: thanh toán này đã thành công, thẻ kia bị từ chối, giao dịch nọ vừa bị đòi bồi hoàn. Không có nó, cửa hàng vẫn nhận được tiền trong đa số trường hợp — vì trình duyệt của khách cũng báo về — nhưng khách tắt tab giữa chừng hoặc ngân hàng duyệt chậm thì không còn ai báo cả, và đơn nằm treo.
Badge trên thẻ cho biết bạn đang ở trạng thái nào:
| Badge | Nghĩa | Bạn cần làm gì |
|---|---|---|
| ✅ Webhook auto-connected | Chúng tôi đã tự tạo endpoint bên nhà cung cấp | Không cần làm gì |
| ✅ Webhook set manually | Bạn đã tự tạo và dán mã ký | Không cần làm gì |
| ⚠️ Webhook not set up | Chưa có gì xác minh được sự kiện gửi về | Xem bên dưới |
Stripe, PayPal và Airwallex thường tự nối được. Khi không (thường vì cửa hàng chưa có tên miền HTTPS công khai), làm thủ công:
- Bấm biểu tượng copy cạnh địa chỉ webhook.
- Sang dashboard của nhà cung cấp, tạo một webhook endpoint với địa chỉ đó.
- Họ đưa lại một signing secret — copy nó.
- Về đây, bấm Edit trên thẻ cổng, dán vào ô Webhook signing secret, lưu.
Cổng này làm được gì
Phần dưới mỗi thẻ liệt kê năm khả năng. Đây là câu trả lời của chính cổng đó, không phải một danh sách chúng tôi tự viết ra.
| Dòng | Nghĩa khi có dấu ✓ |
|---|---|
| Refunds | Hoàn tiền được ngay trong Dikafy, không phải sang dashboard nhà cung cấp |
| Hold now, charge later | Giữ tiền lúc khách bấm trả, thu thật sau |
| Post-purchase upsell | Chạy được phễu chào thêm sau khi khách đã trả |
| Apple Pay / Google Pay | Nút ví hiện ở đầu trang thanh toán |
Ngay bên dưới là một đoạn văn, và đó là dòng đáng đọc nhất trên cả trang, vì nó nói khi nào cửa hàng bạn thật sự thu tiền:
- "funds are held as soon as they pay" — bình thường. Khách bấm trả là tiền bị giữ ngay, kể cả đơn có chạy phễu upsell.
- "the card is charged at the END of the funnel" — cổng này không nâng được số tiền của một giao dịch đã duyệt, nên với đơn có chạy phễu, thẻ chỉ bị trừ ở cuối phễu. Trong khoảng đó tiền chưa bị giữ. Nếu thẻ bị từ chối ở tổng mới, tuỳ cổng mà đơn quay về giá gốc hoặc không thu được đồng nào.
- "No post-purchase upsell" — đơn trả qua cổng này bị bỏ qua phễu hoàn toàn.
Nếu bạn có chạy phễu upsell sau mua và cổng rơi vào trường hợp thứ hai, cách thu hẹp rủi ro là rút ngắn thời gian phễu trong Settings → Checkout.
Apple Pay: phải đăng ký tên miền
Với cổng có Apple Pay, thẻ hiện thêm khối Apple Pay domains liệt kê từng tên miền của cửa hàng kèm dấu ✓ hoặc ⚠️.
Apple chỉ cho nút Apple Pay hiện trên tên miền đã đăng ký với tài khoản cổng đó. Tên miền chưa đăng ký thì nút im lặng không hiện — không có thông báo lỗi nào cho bạn hay cho khách. Đó chính là lý do có khối này: để bạn thấy được sự im lặng đó.
Bấm Register để đăng ký mọi tên miền của cửa hàng. Nối tên miền mới thì quay lại bấm lại.
Apple Pay không bao giờ hiện trên Chrome, kể cả khi đã đăng ký đúng. Muốn thử phải dùng Safari trên máy Apple có thẻ trong Wallet.
Credit Card qua PayPal
Nếu tài khoản PayPal của bạn được duyệt Advanced Credit and Debit Card Payments, khách trả thẻ được ngay trên trang thanh toán của bạn, không bị chuyển sang PayPal.
Chỉ PayPal mới trả lời được là tài khoản bạn có được duyệt hay không, nên nút Check hỏi hộ bạn. Công tắc bên cạnh khoá cho tới khi câu trả lời là có — vì bật một form thẻ mà tài khoản không xử lý được nghĩa là khách gõ xong số thẻ rồi nhận lỗi.
| Dòng gợi ý | Nghĩa |
|---|---|
| "Check whether your PayPal account can take cards…" | Chưa hỏi lần nào |
| "…is not approved for Advanced Credit and Debit Card Payments" | Chưa được duyệt. Xin duyệt bên PayPal rồi bấm Re-check |
| "Available — turn this on…" | Được duyệt, đang tắt |
| "Buyers can pay by card on your checkout…" | Đang bật |
Bật, tắt, sửa, xoá
Công tắc trên thẻ bật/tắt cổng ở trang thanh toán. Tắt là cách đúng để tạm ngừng một cổng: khoá vẫn còn, bật lại là chạy tiếp.
Biểu tượng bút chì mở form Edit. Nhà cung cấp không đổi được — muốn đổi thì nối một cổng mới.
Biểu tượng thùng rác xoá hẳn cổng và khoá của nó.
Nút xoá không hỏi lại. Bấm là mất, và bạn sẽ phải lấy lại khoá từ nhà cung cấp để nối lại. Muốn tạm ngừng thì dùng công tắc, đừng dùng thùng rác.
Xoá một cổng không ảnh hưởng tới đơn đã tạo qua nó. Nhưng bạn sẽ không hoàn tiền được những đơn đó trong Dikafy nữa, vì hoàn tiền cần khoá — lúc đó phải sang dashboard nhà cung cấp mà làm.
Bảng tra cứu — trang Payments
| Chỗ | Điều khiển | Ghi chú |
|---|---|---|
| Trên cùng | Connect provider | Mở form nối cổng mới |
| Thẻ cổng | Badge nhà cung cấp | stripe / paypal / airwallex / dkcard |
| Thẻ cổng | Badge test / live | Nhãn bạn tự chọn lúc nối, không phải hệ thống tự nhận |
| Thẻ cổng | Badge webhook | 3 trạng thái, xem Webhook |
| Thẻ cổng | Địa chỉ webhook + nút copy | Dán vào dashboard nhà cung cấp |
| Thẻ cổng | Công tắc | Bật/tắt ở trang thanh toán. Giữ nguyên khoá |
| Thẻ cổng | Bút chì | Sửa. Ô khoá để trống = giữ khoá cũ |
| Thẻ cổng | Thùng rác | Xoá. Không hỏi lại |
| Khả năng | 5 dòng ✓ / — | Cổng tự khai, không phải danh sách cố định |
| Khả năng | Đoạn văn bên dưới | Nói khi nào tiền thật sự bị giữ |
| Apple Pay domains | Register | Đăng ký tên miền cửa hàng với cổng |
| Credit Card | Check / Re-check | Hỏi PayPal xem tài khoản có được duyệt |
| Credit Card | Công tắc | Khoá cho tới khi được duyệt |
| Form nối | Provider | Chọn trước — các ô bên dưới đổi theo |
| Form nối | Mode | Nhãn Sandbox / Live |
| Form nối | Display name | Tên khách nhìn thấy |
| Form nối | Test connection | Kiểm khoá, không tạo dữ liệu |
| Form nối | Webhook signing secret | Chỉ hiện khi không tự nối được |
| Form nối | Connect / Save changes | Lưu |
Tiếp theo: Đơn hàng — đơn đi từ trang thanh toán vào danh sách như thế nào, và bạn làm gì với chúng.
Đối chiếu với bản 82dff35b1474 · 2026-08-29