Tạo đơn hàng
Người dùng cho phép Thu ngân của Merchant quét mã QR thanh toán trong ứng dụng Zalopay để thanh toán ngay tại điểm bán hàng.
- application/json
- application/x-www-form-urlencoded
- application/xml
Request Body required
- app_id int required
Định danh cho ứng dụng (web, app, pos ...) hay dịch vụ (auto-debit, disbursement ...) của Merchant được cấp khi đăng ký tích hợp phương thức thanh toán với Zalopay.
- app_user string(50) required
Thông tin của người dùng thanh toán đơn hàng: id/username của user. Nếu không định danh được có thể dùng thông tin mặc định, chằng hạn như tên ứng dụng và không được để trống.
- app_time int64 required
Thời gian tạo đơn hàng (unix timestamp in milisecond). Thời gian tính đến milisecond, lấy theo giờ hiện hành.
- amount int64 required
Giá trị của đơn hàng theo VND
- app_trans_id string(40) required
Mã giao dịch Merchant gửi qua hệ thống Zalopay để user thực hiện thanh toán (TXID của giao dịch đơn hàng). Mã giao dịch phải bắt đầu theo format yymmdd của ngày hiện tại.
Theo format yymmddMã đơn hàng thanh toán. Ví dụ: 250210_OrderID.
Merchant dùng giá trị này cho việc tra cứu thông tin trạng thái giao dịch và đối soát, yymmdd phải đúng TimeZone Vietnam (GMT+7) (Vì các giao dịch đối soát theo ngày giờ Việt Nam). - embed_data string(1024) required
Dữ liệu riêng của đơn hàng. Dùng
"{}"
nếu rỗng.
Một số trường đặc biệt của embed_data:columninfo
+ Kiểu dữ liệu: JSON string
+ Định dạng:{"column_name": "value"}
+ Mô tả: Thêm thông tin hiển thị ở phần Quản lý giao dịch chi tiết trên Merchant tool, nếu cột chưa tồn tại cần vào phần Cài đặt hiển thị dữ liệu để cấu hình. Ví dụ:{"columninfo": "{\"branch_id\": \"HCM\",\"store_id\": \"CH123\",\"store_name\": \"Saigon Centre\",\"mc_campaign_id\": \"FREESHIP\"}"}
promotioninfo
+ Kiểu dữ liệu: JSON string
+ Định dạng:{"campaigncode":"code"}
+ Mô tả: Dùng để triển khai chương trình khuyến mãi. Ví dụ:{"promotioninfo": "{\"campaigncode\":\"blackfriday\"}"}
zlppaymentid
+ Kiểu dữ liệu: string
+ Mô tả: Mã thông tin thanh toán. Chỉ truyền khi đối tác cần nhận tiền đối soát về nhiều tài khoản khác nhau. Hệ thống Zalopay sẽ tạo ra một mã Thanh toán (tương ứng với mỗi Tài khoản ngân hàng đối tác cung cấp) và gởi lại cho đối tác thiết lập. Ví dụ:{"zlppaymentid": "P4201372"}
- item string(1024) required
Item của đơn hàng, do Merchant tự định nghĩa. Dùng
"[]"
nếu rỗng. - mac string required
Thông tin chứng thực: mac = HMAC(hmac_algorihtm, mac key, hmacinput), chi tiết như bên dưới:
- hmac_algorihtm: là phương thức bảo mật được Merchant đăng ký với Zalopay, mặc định là HmacSHA256.
- mac key: được cung cấp bởi Zalopay.
- hmac_input = app_id +|
+ app_trans_id +|
+ app_user +|
+ amount +|
+ app_time +|
+ embed_data +|
+ item +|
+ paymentCodeRawVui lòng tham khảo phần truyền dữ liệu an toàn để biết thêm chi tiết.
- payment_code string required
Được scan từ ứng dụng Zalopay, được mã hóa bằng RSA Public key do Zalopay cấp = RSA(paymentCodeRaw, RSA Public key)
- description string(100)
Thông tin mô tả về dịch vụ đang được thanh toán dùng để hiển thị cho user trên app Zalopay và trên tool quản lý Merchant của Zalopay (mctool).
- callback_url string
Đây là URL của Merchant, sau khi Zalopay thu tiền thành công sẽ thông báo kết quả thanh toán của đơn hàng về cho Merchant, theo phương thức callback (server-to-server).
callback_url có thể được truyền động theo từng đơn hàng hoặc cấu hình mặc định trên hệ thống của Zalopay.
Request Body required
- app_id int required
Định danh cho ứng dụng (web, app, pos ...) hay dịch vụ (auto-debit, disbursement ...) của Merchant được cấp khi đăng ký tích hợp phương thức thanh toán với Zalopay.
- app_user string(50) required
Thông tin của người dùng thanh toán đơn hàng: id/username của user. Nếu không định danh được có thể dùng thông tin mặc định, chằng hạn như tên ứng dụng và không được để trống.
- app_time int64 required
Thời gian tạo đơn hàng (unix timestamp in milisecond). Thời gian tính đến milisecond, lấy theo giờ hiện hành.
- amount int64 required
Giá trị của đơn hàng theo VND
- app_trans_id string(40) required
Mã giao dịch Merchant gửi qua hệ thống Zalopay để user thực hiện thanh toán (TXID của giao dịch đơn hàng). Mã giao dịch phải bắt đầu theo format yymmdd của ngày hiện tại.
Theo format yymmddMã đơn hàng thanh toán. Ví dụ: 250210_OrderID.
Merchant dùng giá trị này cho việc tra cứu thông tin trạng thái giao dịch và đối soát, yymmdd phải đúng TimeZone Vietnam (GMT+7) (Vì các giao dịch đối soát theo ngày giờ Việt Nam). - embed_data string(1024) required
Dữ liệu riêng của đơn hàng. Dùng
"{}"
nếu rỗng.
Một số trường đặc biệt của embed_data:columninfo
+ Kiểu dữ liệu: JSON string
+ Định dạng:{"column_name": "value"}
+ Mô tả: Thêm thông tin hiển thị ở phần Quản lý giao dịch chi tiết trên Merchant tool, nếu cột chưa tồn tại cần vào phần Cài đặt hiển thị dữ liệu để cấu hình. Ví dụ:{"columninfo": "{\"branch_id\": \"HCM\",\"store_id\": \"CH123\",\"store_name\": \"Saigon Centre\",\"mc_campaign_id\": \"FREESHIP\"}"}
promotioninfo
+ Kiểu dữ liệu: JSON string
+ Định dạng:{"campaigncode":"code"}
+ Mô tả: Dùng để triển khai chương trình khuyến mãi. Ví dụ:{"promotioninfo": "{\"campaigncode\":\"blackfriday\"}"}
zlppaymentid
+ Kiểu dữ liệu: string
+ Mô tả: Mã thông tin thanh toán. Chỉ truyền khi đối tác cần nhận tiền đối soát về nhiều tài khoản khác nhau. Hệ thống Zalopay sẽ tạo ra một mã Thanh toán (tương ứng với mỗi Tài khoản ngân hàng đối tác cung cấp) và gởi lại cho đối tác thiết lập. Ví dụ:{"zlppaymentid": "P4201372"}
- item string(1024) required
Item của đơn hàng, do Merchant tự định nghĩa. Dùng
"[]"
nếu rỗng. - mac string required
Thông tin chứng thực: mac = HMAC(hmac_algorihtm, mac key, hmacinput), chi tiết như bên dưới:
- hmac_algorihtm: là phương thức bảo mật được Merchant đăng ký với Zalopay, mặc định là HmacSHA256.
- mac key: được cung cấp bởi Zalopay.
- hmac_input = app_id +|
+ app_trans_id +|
+ app_user +|
+ amount +|
+ app_time +|
+ embed_data +|
+ item +|
+ paymentCodeRawVui lòng tham khảo phần truyền dữ liệu an toàn để biết thêm chi tiết.
- payment_code string required
Được scan từ ứng dụng Zalopay, được mã hóa bằng RSA Public key do Zalopay cấp = RSA(paymentCodeRaw, RSA Public key)
- description string(100)
Thông tin mô tả về dịch vụ đang được thanh toán dùng để hiển thị cho user trên app Zalopay và trên tool quản lý Merchant của Zalopay (mctool).
- callback_url string
Đây là URL của Merchant, sau khi Zalopay thu tiền thành công sẽ thông báo kết quả thanh toán của đơn hàng về cho Merchant, theo phương thức callback (server-to-server).
callback_url có thể được truyền động theo từng đơn hàng hoặc cấu hình mặc định trên hệ thống của Zalopay.
Request Body required
- app_id int required
Định danh cho ứng dụng (web, app, pos ...) hay dịch vụ (auto-debit, disbursement ...) của Merchant được cấp khi đăng ký tích hợp phương thức thanh toán với Zalopay.
- app_user string(50) required
Thông tin của người dùng thanh toán đơn hàng: id/username của user. Nếu không định danh được có thể dùng thông tin mặc định, chằng hạn như tên ứng dụng và không được để trống.
- app_time int64 required
Thời gian tạo đơn hàng (unix timestamp in milisecond). Thời gian tính đến milisecond, lấy theo giờ hiện hành.
- amount int64 required
Giá trị của đơn hàng theo VND
- app_trans_id string(40) required
Mã giao dịch Merchant gửi qua hệ thống Zalopay để user thực hiện thanh toán (TXID của giao dịch đơn hàng). Mã giao dịch phải bắt đầu theo format yymmdd của ngày hiện tại.
Theo format yymmddMã đơn hàng thanh toán. Ví dụ: 250210_OrderID.
Merchant dùng giá trị này cho việc tra cứu thông tin trạng thái giao dịch và đối soát, yymmdd phải đúng TimeZone Vietnam (GMT+7) (Vì các giao dịch đối soát theo ngày giờ Việt Nam). - embed_data string(1024) required
Dữ liệu riêng của đơn hàng. Dùng
"{}"
nếu rỗng.
Một số trường đặc biệt của embed_data:columninfo
+ Kiểu dữ liệu: JSON string
+ Định dạng:{"column_name": "value"}
+ Mô tả: Thêm thông tin hiển thị ở phần Quản lý giao dịch chi tiết trên Merchant tool, nếu cột chưa tồn tại cần vào phần Cài đặt hiển thị dữ liệu để cấu hình. Ví dụ:{"columninfo": "{\"branch_id\": \"HCM\",\"store_id\": \"CH123\",\"store_name\": \"Saigon Centre\",\"mc_campaign_id\": \"FREESHIP\"}"}
promotioninfo
+ Kiểu dữ liệu: JSON string
+ Định dạng:{"campaigncode":"code"}
+ Mô tả: Dùng để triển khai chương trình khuyến mãi. Ví dụ:{"promotioninfo": "{\"campaigncode\":\"blackfriday\"}"}
zlppaymentid
+ Kiểu dữ liệu: string
+ Mô tả: Mã thông tin thanh toán. Chỉ truyền khi đối tác cần nhận tiền đối soát về nhiều tài khoản khác nhau. Hệ thống Zalopay sẽ tạo ra một mã Thanh toán (tương ứng với mỗi Tài khoản ngân hàng đối tác cung cấp) và gởi lại cho đối tác thiết lập. Ví dụ:{"zlppaymentid": "P4201372"}
- item string(1024) required
Item của đơn hàng, do Merchant tự định nghĩa. Dùng
"[]"
nếu rỗng. - mac string required
Thông tin chứng thực: mac = HMAC(hmac_algorihtm, mac key, hmacinput), chi tiết như bên dưới:
- hmac_algorihtm: là phương thức bảo mật được Merchant đăng ký với Zalopay, mặc định là HmacSHA256.
- mac key: được cung cấp bởi Zalopay.
- hmac_input = app_id +|
+ app_trans_id +|
+ app_user +|
+ amount +|
+ app_time +|
+ embed_data +|
+ item +|
+ paymentCodeRawVui lòng tham khảo phần truyền dữ liệu an toàn để biết thêm chi tiết.
- payment_code string required
Được scan từ ứng dụng Zalopay, được mã hóa bằng RSA Public key do Zalopay cấp = RSA(paymentCodeRaw, RSA Public key)
- description string(100)
Thông tin mô tả về dịch vụ đang được thanh toán dùng để hiển thị cho user trên app Zalopay và trên tool quản lý Merchant của Zalopay (mctool).
- callback_url string
Đây là URL của Merchant, sau khi Zalopay thu tiền thành công sẽ thông báo kết quả thanh toán của đơn hàng về cho Merchant, theo phương thức callback (server-to-server).
callback_url có thể được truyền động theo từng đơn hàng hoặc cấu hình mặc định trên hệ thống của Zalopay.
- 200
OK
- application/json
- Schema
- Example (from schema)
Schema
- return_code int
Mã trạng thái.
Vui lòng tham khảo mã trạng thái để biết thêm chi tiết. - return_message string
Mô tả mã trạng thái.
- sub_return_code int
Mã trạng thái chi tiết.
Vui lòng tham khảo mã trạng thái để biết thêm chi tiết. - sub_return_message string
Mô tả mã trạng thái chi tiết.
- is_processing boolean
Thông tin trạng thái xử lý của đơn hàng.
- zp_trans_id int64
Mã giao dịch của Zalopay. Merchant dùng giá trị này để yêu cầu hoàn tiền và đối soát.
{
"return_code": 0,
"return_message": "string",
"sub_return_code": 0,
"sub_return_message": "string",
"is_processing": true,
"zp_trans_id": 0
}