Chuyển đến nội dung chính

createBindingAgreementPay

Note
Vui lòng liên hệ Đội ngũ Zalopay để được cấp quyền sử dụng tính năng này. Hiện tại chỉ support trên môi trường sandbox

Mô tả

API createBindingAgreementPay là một phương thức được cung cấp bởi JS-SDK, cho phép các mini-app của merchant một liên kết mới cho hợp đồng đồng thuận trong Zalopay

Sơ đồ tuần tự tạo một liên kết mới cho hợp đồng đồng thuận

Create binding agreement pay sequence diagram

Giải thích sơ đồ

Các tác nhân và thành phần tham gia:

  • User: Khởi tạo quá trình liên kết mới cho hợp đồng đồng thuận.
  • Merchant App: Mini-app được sử dụng bởi merchant.
  • JS-SDK: Bộ SDK JavaScript được cung cấp bởi Zalopay.
  • Binding Agreement Pay feature: Xử lý giao diện người dùng và logic của việc liên kết mới cho hợp đồng đồng thuận.
  • Merchant Server: Máy chủ của merchant.
  • Zalopay Server: Xử lý việc liên kết mới cho hợp đồng đồng thuận.

Các bước trình tự:

  1. User Interaction: Người dùng bắt đầu quá trình liên kết mới cho hợp đồng đồng thuận trong ứng dụng merchant.
  2. Request to Merchant Server: Ứng dụng merchant gửi yêu cầu đến Máy chủ merchant với các tham số cần thiết.
  3. Generate Transaction Details: Máy chủ merchant tạo các giá trị chi tiết giao dịch như app_trans_id, req_date và mac.
  4. Call Zalopay Server: Máy chủ merchant gọi API của máy chủ Zalopay để tạo liên kết mới.
  5. Process Binding Creation: Máy chủ Zalopay xử lý yêu cầu tạo liên kết mới.
  6. Receive Binding Info: Máy chủ Zalopay phản hồi với thông tin liên kết mới.
  7. Respond to Merchant App: Máy chủ merchant gửi dữ liệu liên kết mới trở lại mini-app merchant.
  8. Invoke JS-SDK Method: Mini-app merchant gọi createBindingAgreementPay(bindingToken) API trên JS-SDK.
  9. Open Binding Agreement Pay feature: Mở BottomSheetWebview với trang liên kết mới cho hợp đồng đồng thuận.
  10. Communicate with Zalopay Server: Tính năng Binding Agreement Pay sử dụng bindingToken để giao tiếp với Máy chủ Zalopay.
  11. Receive Binding Status: Máy chủ Zalopay trả về trạng thái liên kết cho tính năng Binding Agreement Pay.
  12. Return Status to JS-SDK: Tính năng Binding Agreement Pay trả kết quả về JS-SDK.
  13. Final Status to Merchant App: JS-SDK cung cấp trạng thái cuối cùng cho merchant mini-app.

Từ bước 1 đến bước 7. Vui lòng đọc thêm Tài liệu tạo một liên kết mới cho hợp đồng đồng thuận

Từ bước 8 đến bước 12, giao tiếp giữa Merchant mini-app và JS-SDK qua createBindingAgreementPay API

Những tham số

Tên tham sốKiểu dữ liệuBắt buộcMô tả
bindingTokenstringMột mã token duy nhất được cung cấp bởi Máy chủ Merchant, đại diện cho phiên liên kết thanh toán. Mã token này được lấy sau khi Máy chủ Merchant tạo thành công một yêu cầu liên kết với Máy chủ Zalopay. (Thời gian hết hạn khoảng 15 phút)

Giá trị trả về

ParamKiểu dữ liệuMô Tả
statusstringGiá trị trả về success

Mã lỗi

Mã lỗiMô Tả
071001User has canceled binding agreement pay
071002User is not valid
071003User has been already active
071004Binding has expired. Please try again after 15 minutes

Ví dụ code và kết quả trả về

Ví dụ gọi createBindingAgreementPay API:

window.zlpSdk.Payment.createBindingAgreementPay({
bindingToken: "2410210YvdL6l7ENgeVUx8dO21gGRbXj",
})
.then((response) => console.log(response))
.catch((error) => console.error(error.errorCode));

Ví dụ trả về thành công:

{
"status": "success"
}

Ví dụ trả về lỗi :

{
"status": "error",
"errorCode": "071001",
"errorMessage": "User has canceled binding agreement pay"
}