Skip to content

Tổng quan Terminal ​

Dùng Terminal để nhận thanh toán trực tiếp tại quầy trên một reader vật lý. Backend của bạn gửi PaymentIntent tới reader. Reader thu phương thức thanh toán từ khách hàng. Bahn gửi kết quả tới webhook của bạn.

Luồng tổng quan ​

sequenceDiagram
    autonumber
    participant Merchant as Backend của merchant
    participant API as Bahn API
    participant Reader
    participant Customer as Khách hàng

    Merchant ->> API: Tạo PaymentIntent
    API -->> Merchant: payment_intent (requires_payment_method)
    Merchant ->> API: Gửi PaymentIntent tới reader
    API -->> Merchant: reader_action (in_progress)
    API ->> Reader: Bắt đầu action
    Reader ->> Customer: Yêu cầu chạm, cắm thẻ hoặc quét mã
    Customer ->> Reader: Phương thức thanh toán
    Reader ->> API: Ủy quyền thanh toán
    API -->> Merchant: Webhook kèm kết quả
    Merchant ->> Merchant: Hoàn tất đơn hàng

Khái niệm ​

Đối tượngMô tả
AccountChủ tài khoản ngân hàng trên Cake. Bên nhận tiền.
MerchantPháp nhân kinh doanh thuộc một Account.
LocationĐịa điểm vật lý mà merchant giao dịch. Thuộc về Account.
TerminalMột đăng ký tại một Location. Mang mã terminal mạng lưới.
ReaderMột thiết bị thu ngân. Reader phải được duyệt cho một Terminal trước khi có thể nhận thanh toán. Việc duyệt diễn ra trên chính reader.
PaymentIntentMột phiên thanh toán. Đây là cùng một đối tượng với thanh toán online.
Reader actionMột đơn vị công việc mà reader thực hiện, ví dụ process_payment_intent. Một reader chỉ chạy một action tại một thời điểm.

Ai tạo cái gì ​

Vai tròTạo
Admin hoặc portalAccount, Merchant, Location, Terminal
Thiết bị thu ngânReader (tự đăng ký lần đầu)
Thu ngân (trên reader)Phê duyệt reader cho một Terminal
Backend của bạnPaymentIntent
Backend của bạnGửi PaymentIntent tới một reader

Phương thức thanh toán ​

Phương thứcMô tả
card_presentThẻ EMV cắm hoặc chạm.
napas_qrVietQR.
visa_qrVisa QR.

Bước tiếp theo ​

Tích hợp Terminal

Developers