Nhảy tới nội dung

API đối tác xây dựng sẽ nhận kết quả thanh toán từ ZMP Payment Gateway.

Khi và chỉ khi đối tác thanh toán đã thu tiền khách hàng thành công thì ZMP Payment mới gọi API này để thông báo kết quả.

Merchant Server dựa vào kết quả này để thực hiện hoàn thành thanh toán cho người dùng.

Đặc tả

Nếu trừ tiền người dùng thành công, ZMP Payment Server callback cho Merchant Server theo CallbackURL . Merchant dùng PrivateKey để xác thực data do ZMP Payment Server POST qua.

Dữ liệu nhận được từ callback

PropertyTypeDescription
dataObjectDữ liệu giao dịch gọi về cho ứng dụng
macStringThông tin chứng thực của đơn hàng, dùng PrivateKey được cung cấp để chứng thực đơn hàng

Dữ liệu của trường data

PropertyTypeDescription
appIdStringId định danh của mini app
orderIdStringId của yêu cầu thanh toán đã tạo ở API createOrder
transIdStringId của yêu cầu thanh toán từ hệ thống đối tác thanh toán
transTimeLongThời gian giao dịch của đối tác thanh toán
merchantTransIdStringMã giao dịch của đối tác thanh toán
amountLongSố tiền thanh toán
descriptionStringThông tin đơn hàng
resultCodeIntTrạng thái giao dịch của đơn hàng
messageStringMô tả mã resultCode
extradataStringThông tin thêm

Kiểm tra callback hợp lệ

data =
'appId={appId}&amount={amount}&description={description}&orderId={orderId}&message={message}&resultCode={resultCode}&transId={transId}';
reqmac = HMAC('HmacSHA256', privateKey, data);
if (reqmac == mac) {
// callback hợp lệ
} else {
// callback không hợp lệ
}
  • HmacSHA256: Là phương thức bảo mật HmacSHA256
  • PrivateKey: Do ZMP Payment cung cấp cho ứng dụng lúc đăng ký ứng dụng
  • Data: Là dữ liệu do ZMP Payment request tới callback API của Merchant khi đối tác thanh toán đã thu tiền khách hàng thành công.

Thông tin AppServer trả về cho ZMP Payment Server khi nhận callback

PropertyTypeDescription
returnCodeintCó các giá trị sau:
  • 1 : thành công
  • 2 : trùng mã giao dịch transId (đã cung cấp dịch vụ cho người dùng trước đó)
  • != : thất bại (không callback lại)
returnMessageStringMô tả chi tiết mã trạng thái