Kết nối Stripe
Nhận thanh toán trực tuyến qua Stripe: thẻ, Apple Pay, Google Pay.
1. Tổng quan#
Stripe — nền tảng thanh toán toàn cầu. Trong danh mục Cenaly, Stripe có thể được kết nối tại 46 quốc gia. Tích hợp Cenaly + Stripe cho phép:
- 💳 Nhận thanh toán bằng thẻ (Visa, Mastercard, AmEx)
- 📱 Apple Pay / Google Pay — thanh toán chỉ với một chạm
- 💰 Nhận tiền chi trả vào tài khoản ngân hàng của bạn
- 🔄 Xử lý hoàn tiền từ bảng quản trị
- 💵 Tiền tip — khách thêm tiền tip khi thanh toán
- 📊 Báo cáo — phân tích tài chính đầy đủ
2. Yêu cầu#
- ✅ Tài khoản Cenaly (thanh toán trực tuyến khả dụng trên mọi Gói, kể cả gói miễn phí)
- ✅ Tài khoản Stripe (đăng ký miễn phí tại stripe.com)
- ✅ Tài khoản ngân hàng để nhận tiền chi trả (bằng đơn vị tiền tệ của quốc gia bạn)
- ✅ Giấy tờ để xác minh (hộ chiếu / ID, giấy tờ công ty)
Quốc gia được hỗ trợ#
Stripe được cung cấp để kết nối tại 46 quốc gia:
| Khu vực | Quốc gia |
|---|---|
| Châu Âu (EEA) | Áo, Bỉ, Bulgaria, Croatia, Síp, Séc, Đan Mạch, Estonia, Phần Lan, Pháp, Đức, Hy Lạp, Hungary, Ireland, Ý, Latvia, Liechtenstein, Litva, Luxembourg, Malta, Hà Lan, Na Uy, Ba Lan, Bồ Đào Nha, Romania, Slovakia, Slovenia, Tây Ban Nha, Thụy Điển |
| Châu Âu (ngoài EEA) | Vương quốc Anh, Thụy Sĩ, Gibraltar |
| Châu Mỹ | Hoa Kỳ, Canada, Mexico, Brazil |
| Châu Á | Nhật Bản, Singapore, Hồng Kông, Malaysia, Thái Lan, Ấn Độ, Indonesia |
| Trung Đông | UAE |
| Châu Đại Dương | Úc, New Zealand |
3. Tạo tài khoản Stripe#
Bước 1. Đăng ký#
- Truy cập stripe.com → Start now
- Nhập email và tạo mật khẩu
- Xác nhận email
Bước 2. Xác minh doanh nghiệp#
Stripe sẽ yêu cầu:
| Giấy tờ | Mô tả |
|---|---|
| Loại hình doanh nghiệp | Hộ kinh doanh cá thể, công ty TNHH, cá nhân |
| Tên | Tên pháp lý và tên thương mại |
| Địa chỉ | Địa chỉ pháp lý của công ty |
| INN / Tax ID | Mã số thuế |
| Giấy tờ của người đại diện | Hộ chiếu hoặc thẻ ID |
| Thông tin ngân hàng | IBAN hoặc số tài khoản |
| Mô tả hoạt động | “Nhà hàng / quán cà phê / giao đồ ăn” |
Xác minh thường mất 1–3 ngày làm việc.
Bước 3. Lấy khóa API#
- Trong bảng điều khiển Stripe: Developers → API keys
- Sao chép:
- Publishable key (pk_live_...)
- Secret key (sk_live_...)
4. Kết nối với Cenaly#
Tài khoản Stripe của chính bạn được kết nối: tiền của khách đi trực tiếp vào số dư Stripe của bạn, Cenaly không giữ số tiền đó.
Mở Cửa hàng ứng dụng → danh mục “Tài chính” → thẻ Stripe → “Thiết lập” — khối kết nối sẽ mở dưới dạng cửa sổ ngay trong cửa hàng. Đường dẫn quen thuộc cũng hoạt động: Chi nhánh → thẻ chi nhánh → tab “Thanh toán” (mục “Khách thanh toán”), nút “Kết nối” ở thẻ Stripe.
Trình hướng dẫn kết nối (khuyến nghị)#
Trình hướng dẫn từng bước (≈10 phút) dẫn bạn qua toàn bộ quá trình, chỉ rõ cần nhấn vào đâu trong bảng điều khiển Stripe:
- Chọn chế độ — thử nghiệm hoặc thực tế. Chế độ trong Stripe và công tắc “Thử nghiệm / Thực tế” trong Cenaly phải trùng nhau.
- Sao chép khóa — Developers → API keys: Secret key (
sk_test_…/sk_live_…) là bắt buộc, Publishable key (pk_…) — tùy chọn. - Thêm webhook — Developers → Webhooks → Add endpoint, và trong trường Endpoint URL dán địa chỉ webhook của Cenaly mà trình hướng dẫn cung cấp bằng nút “Sao chép”. Không có webhook, Stripe sẽ không thông báo rằng đơn hàng đã được thanh toán, và đơn hàng có thể vẫn ở trạng thái “đang chờ”.
- Chọn sự kiện — trong khối “Select events”, bắt buộc thêm
checkout.session.completed(chính nó xác nhận thanh toán đơn hàng), và đối với các phương thức thanh toán trả sau — thêm cảcheckout.session.async_payment_succeededvàcheckout.session.async_payment_failed. Sau đó nhấn “Add endpoint”. Không có những sự kiện này, webhook được tạo nhưng sẽ không thông báo về thanh toán. - Sao chép Webhook signing secret (
whsec_…) — trường không bắt buộc, nhưng với nó sẽ bật kiểm tra chữ ký của thông báo. - Kết nối — các giá trị đã nhập được gửi đến backend bảo mật.
Biểu mẫu ngắn#
Nếu bạn đã biết thứ gì nằm ở đâu trong Stripe, hãy mở biểu mẫu kết nối nội tuyến và điền các trường tương tự: Secret key, Webhook signing secret (tùy chọn), Publishable key (tùy chọn) cùng công tắc chế độ.
5. Thiết lập phương thức thanh toán#
Thẻ ngân hàng#
Được bật tự động khi kết nối Stripe:
- Visa / Mastercard — tất cả các quốc gia
- American Express — hầu hết các quốc gia
- Diners Club / Discover — tùy chọn
Apple Pay và Google Pay#
Không có công tắc riêng trong Cenaly cho các phương thức này: thanh toán diễn ra trên trang hosted của Stripe Checkout, vì vậy ví được bật phía Stripe.
- Google Pay — hoạt động ngay sau khi kết nối Stripe (Android, Chrome).
- Apple Pay — Stripe yêu cầu xác nhận tên miền: Settings → Payment methods → Apple Pay → Add new domain. Sau khi xác minh, nút sẽ xuất hiện trên iOS/Safari.
Các phương thức khác#
Qua Stripe Dashboard có thể bật:
| Phương thức | Quốc gia | Mô tả |
|---|---|---|
| iDEAL | Hà Lan | Chuyển khoản ngân hàng |
| Bancontact | Bỉ | Chuyển khoản ngân hàng |
| SEPA Direct Debit | EU | Ghi nợ từ tài khoản ngân hàng |
| Przelewy24 | Ba Lan | Thanh toán trực tuyến |
| giropay | Đức | Chuyển khoản ngân hàng |
| EPS | Áo | Chuyển khoản ngân hàng |
| Boleto | Brazil | Biên nhận thanh toán |
Bật các phương thức cần thiết trong Stripe Dashboard → Settings → Payment methods.
6. Tiền tip#
Thiết lập#
- Chi nhánh → thẻ chi nhánh → tab «Chung» → công tắc «Tiền tip».
- Cách hoạt động:
| Tham số | Mô tả |
|---|---|
| Số tiền gợi ý | Các preset được đặt theo quốc gia của cơ sở: 18/20/25 % cho Hoa Kỳ, 15/18/20 % cho Canada, 10/15/20 % cho Gruzia; tại Nhật Bản, Trung Quốc và Hàn Quốc khối tiền tip bị ẩn |
| Số tiền tùy chọn | Khách tự nhập số tiền |
| Tiền tip mặc định | Không — khách tự chọn |
| Phân chia | Chính sách tiền tip (trực tiếp cho phục vụ viên hoặc gộp theo giờ làm việc) được đặt trong mục Nhân sự → Lương |
Khách nhìn thấy gì#
Khi thanh toán sau khi chọn món:
Đơn hàng của bạn: 45₾
Thêm tiền tip?
[ 10% (4.50₾) ] [ 15% (6.75₾) ] [ 20% (9.00₾) ] [ Số tiền khác ]
[ Không tip ]
TỔNG: 49.50₾ [Thanh toán →]
Báo cáo tiền tip#
Mục Tài chính:
- tab «Tổng quan» — tổng tiền tip trong kỳ so với kỳ trước;
- tab «Bán hàng» — tiền tip theo từng phục vụ viên.
7. Chi trả vào tài khoản của bạn#
Stripe chi trả tiền như thế nào#
Khách thanh toán → Stripe giữ lại → Sau T+2 ngày → Tiền vào tài khoản của bạn
| Tham số | Giá trị |
|---|---|
| Chi trả tiêu chuẩn | T+2 (sau 2 ngày làm việc) |
| Chi trả nhanh | T+1 (khả dụng ở một số quốc gia) |
| Chi trả tức thì | Instant Payouts (trong vòng một giờ, tính thêm phí) |
| Chi trả tối thiểu | 1€ / 1$ / 1₾ |
Thiết lập lịch trình#
Trong Stripe Dashboard → Settings → Payouts:
- Hàng ngày (khuyến nghị)
- Hàng tuần (ngày cụ thể trong tuần)
- Hàng tháng
8. Phí Stripe#
| Khu vực | Phí | Ví dụ |
|---|---|---|
| Châu Âu (EEA) | 1.5% + 0.25€ | Đơn 50€ → phí 1.00€ |
| Vương quốc Anh | 1.5% + 0.20£ | Đơn £50 → phí £0.95 |
| Hoa Kỳ/Canada | 2.9% + $0.30 | Đơn $50 → phí $1.75 |
| Thẻ quốc tế | +1.5% | Phụ thu cho thẻ từ quốc gia khác |
| Chuyển đổi tiền tệ | +1% | Nếu tiền tệ của thẻ ≠ tiền tệ của tài khoản |
9. Hoàn tiền#
Hoàn tiền qua Stripe được khởi chạy từ hai nơi — tùy theo cách đơn hàng được phục vụ.
Hoàn tiền cửa hàng trực tuyến (RMA)#
- Mục Hoàn tiền → thẻ yêu cầu.
- Chọn chế độ hoàn tiền: về phương thức thanh toán ban đầu (Stripe), thẻ quà tặng (store credit) hoặc đổi hàng.
- Đánh dấu các mặt hàng (hoàn toàn phần hoặc một phần) và quyết định có trả hàng về kho hay không.
- Tiền được hoàn ngay từ trang; thường mất 5–10 ngày làm việc để vào thẻ của khách.
Hoàn tiền tại thu ngân#
Trong POS, hoàn tiền được thực hiện theo biên lai — toàn phần hoặc một phần, cũng có đổi hàng kèm bán lại. Ca tiền mặt khi đó phải đang mở.
Trong thẻ đơn hàng ở mục Đơn hàng hiển thị các nhãn hoàn tiền đã thực hiện kèm liên kết đến yêu cầu.
10. Bảo mật#
PCI DSS#
- Cenaly không lưu trữ dữ liệu thẻ — tất cả do Stripe xử lý
- Stripe được chứng nhận PCI Level 1 (cấp cao nhất)
- Dữ liệu thẻ được mã hóa và token hóa
3D Secure#
- Kiểm tra 3D Secure tự động cho thẻ EU (SCA/PSD2)
- Giảm gian lận và chargeback
- Đối với khách: xác nhận trong ứng dụng ngân hàng
Radar (bảo vệ chống gian lận)#
Stripe Radar tự động chặn các giao dịch đáng ngờ:
- Mẫu mua hàng bất thường
- Thẻ trong danh sách đen
- Bất thường về vị trí địa lý
11. Kiểm thử#
Trước khi bật trong môi trường thực tế, hãy kiểm thử:
Thẻ kiểm thử Stripe#
| Số thẻ | Kết quả |
|---|---|
| 4242 4242 4242 4242 | Thanh toán thành công |
| 4000 0000 0000 3220 | 3D Secure |
| 4000 0000 0000 9995 | Bị từ chối (không đủ số dư) |
| 4000 0000 0000 0069 | Thẻ hết hạn |
CVV: bất kỳ 3 chữ số. Ngày: bất kỳ ngày tương lai. ZIP: bất kỳ.
Cách kiểm thử#
- Khi kết nối, chọn công tắc «Chế độ kiểm thử» (mỗi nhà cung cấp có công tắc riêng).
- Sử dụng khóa kiểm thử (pk_test_..., sk_test_...) — và webhook được tạo trong cùng chế độ kiểm thử của Stripe.
- Tạo đơn hàng kiểm thử → thanh toán bằng thẻ kiểm thử.
- Kiểm tra trạng thái đơn hàng trong mục Đơn hàng — phải chuyển thành «Đã thanh toán».
- Khi mọi thứ hoạt động — kết nối lại nhà cung cấp với khóa thực tế ở chế độ «Thực tế».
12. Nhà cung cấp thay thế#
Dành cho các quốc gia chưa có Stripe hoặc dùng bổ sung — đã sẵn sàng để kết nối:
| Nhà cung cấp | Quốc gia | Mô tả |
|---|---|---|
| PayPal | Gần như toàn thế giới | Phạm vi phủ sóng rộng nhất trong danh sách |
| BOG iPay | 🇬🇪 Georgia | Bank of Georgia, phổ biến tại Georgia |
| TBC Bank | 🇬🇪 Georgia | Dịch vụ thanh toán thương mại điện tử của TBC |
| Square | US, CA, GB, AU, JP, IE, FR, ES | Trang thanh toán hosted (Payment Links) |
| Airwallex | EEA, UK, APAC, châu Mỹ, Israel | Thanh toán hosted đa tiền tệ |
| PayTabs | Ả Rập Xê Út, UAE, Ai Cập, Kuwait, Oman, Jordan, Bahrain, Qatar | Vùng Vịnh và Trung Đông |
| iyzico | 🇹🇷 Thổ Nhĩ Kỳ | Thẻ và trả góp (taksit); phí trả góp do khách trả thêm ngoài số tiền đặt hàng |
94 nhà cung cấp khác (Adyen, PayTR, ЮKassa, LiqPay, Mercado Pago, Razorpay, v.v.) đã có trong danh sách nhưng hiển thị màu xám — tích hợp vẫn đang được thử nghiệm. Tổng quan đầy đủ — trong mục Thanh toán.
Kết nối bất kỳ nhà cung cấp nào: Cửa hàng ứng dụng → danh mục «Tài chính» → thẻ nhà cung cấp → «Thiết lập», hoặc theo cách quen thuộc Chi nhánh → thẻ chi nhánh → tab «Thanh toán».
13. Câu hỏi thường gặp#
Khi nào tôi nhận được tiền?#
Sau 2 ngày làm việc kể từ khi thanh toán (T+2). Lần chi trả đầu tiên có thể mất 7–14 ngày (trong khi Stripe xác minh tài khoản).
Khách muốn trả tiền mặt — phải làm sao?#
Phương thức «tiền mặt» và «thẻ khi nhận hàng» luôn khả dụng và không cần nhà cung cấp thanh toán — khách chọn chúng tại trang thanh toán, và thu ngân thực hiện giao dịch. Stripe không được sử dụng trong trường hợp này; biên lai được in tại thu ngân nếu bạn đã kết nối phần cứng tài chính (xem Tài chính hóa).
Có thể kết nối cả Stripe và BOG iPay không?#
Có. Trên tab «Thanh toán», có thể bật nhiều nhà cung cấp cùng lúc — tại trang thanh toán, khách sẽ thấy một nút cho mỗi nhà cung cấp, ghi tên nhà cung cấp đó.
Stripe đã khóa tài khoản — phải làm gì?#
- Kiểm tra email — Stripe gửi lý do
- Thường cần xác minh bổ sung
- Liên hệ Stripe Support: support.stripe.com
- Trong thời gian bị khóa, có thể sử dụng nhà cung cấp thay thế
Làm thế nào để giảm thiểu phí?#
- Khuyến khích thanh toán bằng thẻ EU (1,5% thay vì 2,9%)
- Sử dụng SEPA cho các khoản tiền lớn (0,35€ cố định)
- Với doanh thu lớn (>100K€/tháng) — yêu cầu Stripe áp dụng gói riêng
14. Hỗ trợ#
- Stripe: support.stripe.com
- Cenaly: support@cenaly.com → tiêu đề «Stripe / Thanh toán»
- Stripe Status: status.stripe.com (kiểm tra tình trạng hoạt động)