Hoàn tiền giao dịch
Endpoint: /api/v1/transaction/refund
Method: POST
Header: Cách t ạo JWT_TOKEN
{
"X-APPOTAPAY-AUTH": Bearer JWT_TOKEN,
"Content-Type": "application/json"
}
Tham số
Tham số | Kiểu dữ liệu | Yêu cầu | Mô tả |
---|---|---|---|
refundId | String | √ | Mã giao dịch hoàn tiền của đối tác (Mã này là duy nhất với mỗi bản tin gửi lên) |
appotapayTransId | String | √ | Mã giao dịch thanh toán muốn hoàn tiền |
amount | Integer | √ | Số tiền hoàn |
reason | String | √ | Lý do hoàn tiền |
signature | String | √ | Chữ ký kiểm tra dữ liệu signature = HMAC_SHA256(data, secretKey) data: amount={amount}&appotapayTransId={appotapayTransId}&reason={reason}&refundId={refundId} |
Dữ liệu trả về
Tham số | Kiểu dữ liệu | Mô tả |
---|---|---|
appotapayTransId | String | Mã giao dịch thanh toán của AppotaPay |
refundId | String | Mã giao dịch hoàn tiền của AppotaPay |
refundOriginalId | String | Mã giao dịch hoàn tiền của đối tác |
amount | Integer | Số tiền hoàn |
reason | String | Lý do hoàn tiền |
status | String | Trạng thái hoàn tiền |
transactionTs | Integer | Thời gian thực hiện giao dịch |
signature | String | Chữ ký kiểm tra dữ liệu signature = HMAC_SHA256(data, secretKey) data: amount={amount}&appotapayTransId={appotapayTransId}&errorCode={errorCode&reason={reason}&refundId={refundId}&refundOriginalId={refundOriginalId}&status={status}&transactionTs={transactionTs} |
Bảng mã trạng thái giao dịch
Trạng thái | Mô tả |
---|---|
pending | Giao dịch thanh toán không hỗ trợ hoàn tiền tự động AppotaPay tiếp nhận yêu cầu hoàn tiền và xử lý hoàn thủ công trong 1 ngày, đối tác có thể gọi API kiểm tra trạng thái giao dịch. Quá 1 ngày giao dịch vẫn chưa đổi về trạng thái cuối (success, error) thì đối tác vui lòng liên hệ CSKH để được trợ giúp |
processing | Giao dịch thanh toán hỗ trợ hoàn tiền tự động AppotaPay tiếp nhận yêu cầu hoàn tiền và đang xử lý, đối tác có thể gọi API kiểm tra trạng thái giao dịch. Quá 1 ngày giao dịch vẫn chưa đổi về trạng thái cuối (success, error) thì đối tác vui lòng liên hệ CSKH để được trợ giúp |
success | Giao dịch hoàn tiền thành công. |
error | Giao dịch hoàn tiền thất bại. |
Ví dụ
Request
{
"refundId": "237052c887614019bedfd1851a287d9c",
"appotapayTransId": "AP211364332963",
"amount" : 10000,
"reason": "Test refund",
"signature": "20150ead77ee8ce0c6c161bf3fef42775423196e74268d26f2de077378007167"
}
Response
{
"errorCode": 0,
"message": "Thành công",
"data": {
"appotapayTransId": "AP211364332963",
"refundId": "57bd2769-3827-42a4-be47-aab498496a46",
"refundOriginalId": "237052c887614019bedfd1851a287d9c",
"amount": 10000,
"reason": "Test refund",
"status": "processing",
"transactionTs": 1638180805
},
"signature": "cf31a492c8639b213ea55782a8853792a676522cf26a111b6e0fe45249042c3b"
}
Error
{
"errorCode": int,
"message": error message
}
Danh sách nhà cung cấp hỗ trợ refund
Vendor code | Thời gian hỗ trợ refund | Auto qua api | Refund một phần | Refund nhiều lần | Refund toàn phần | Time user nhận tiền |
---|---|---|---|---|---|---|
Napas | 1 năm | Có | Có | Có | 5 - 7 ngày làm việc | |
Vpbank Visa - Mastercard | 6 tháng | Có | Có | Có | 10 - 15 ngày làm việc | |
VnptPay | Có | Không | Không | Có | ||
ONEPAY | Không | Không | ||||
EBILL | Không | Không | ||||
SHOPEE | 90 ngày | Có | Có | Có | Có | Real time |
MOCA | 1 tháng | Có | Không | Không | Có | Real time |
APPOTA WALLET | Có | Không | Không | Có | Real time | |
MOMO | Có | Có | Có | Có | Real time | |
ViettelPay | Không | Không | Không | Không | ||
ZaloPay | 180 ngày | Có | Có | Có | Có | Real time |
VA | Không | Không | Không | |||
VNpay | Có | Có | Không | |||
Cybersource | Không | Không | Không | Không | Không | Không |