Refund
1.Overview
Use this API to initiate a refund against a successful payment. The refund can be full or partial. A transaction can have multiple refunds as long as the total refund amount is less than or equal to the original transaction amount. If the refund request is out of the refund window determined in the contract the refund request will be declined.
2.Request Info
Key |
Value |
Content-Type |
application/json |
version |
1.0 |
2.2 Request Data
Name |
Description |
Type |
Required |
appId |
Unique identifier assigned to a third-party application platform |
string |
true |
merchantId |
Unique identifier assigned to a thired-party merchant |
string |
true |
timestamp |
Request timestamp |
timestamp |
true |
sign |
Data signature |
string |
true |
refundOrderAmt |
Refund amount |
string |
true |
orderNo |
Order number |
string |
true |
refundOrderNo |
Refund order number |
string |
true |
refundDesc |
Reason for refund |
string |
true |
callBackUrl |
Refund callback address |
string |
true |
2.3 Response Data
Name |
Description |
Type |
success |
Success flag: true/false |
boolean |
message |
Response message |
string |
code |
Reponse code |
string |
timestamp |
Response timestamp |
long |
data |
Result |
object |
> appId |
Unique identifier assigned to a third-party application platform |
string |
> sign |
Data signature |
string |
> tranStatus |
transaction status: 1-success;0-failure |
int |
> tranInfo |
transaction information |
string |
> refundOrderAmt |
Refund amount |
string |
> payMethod |
Payment method: 1.NewPay; 4.MasterCard; |
int |
> currency |
Payment currency, LAK/USD |
string |
> orderNo |
Order number |
string |
> refundOrderNo |
Refund order number |
string |
> newpayRefundOrderNo |
Refund order number in NewPay |
string |
3. Example Data
3.1 Request
{
"appId": "3514d69403bc4ce1a8fafb6415a31018",
"timestamp": {{current_timestamp}},
"sign": "{{sign}}",
"refundOrderAmt": 50000,
"merchantId": "876266cdc7154dd08a022fd1f2eace55",
"orderNo": "ORDERNO000000000A104",
"refundOrderNo": "ORDERNORFD000000000A104",
"refundDesc": "reason",
"callBackUrl": "www.google.com"
}
3.2 Response
{
"success": true,
"message": "success",
"data": null,
"code": "0",
"timestamp": "1662528697925"
}
4. Response Code
Code |
Description |
0 |
success |
E9999 |
unknow error |
B11095 |
Illegal request |
Z00046 |
whitelist authentication failed |
Z00003 |
appid field wrong |
Z00044 |
merchantId field wrong |
Z00007 |
sign field verification failed |
Z00001 |
appid field illegal |
Z00004 |
timestamp field illegal |
Z00005 |
sign field illegal |
Z00021 |
merchantId field illegal |
Z00023 |
orderNo field illegal |
Z00048 |
the order's payMethod currently does not support refunds |
Z00049 |
refundOrderNo field illegal |
Z01017 |
no refunds for billed orders |
Z01018 |
order is an active order and does not support partial refunds |
Z01020 |
refunds in excess of the actual payment amount |
Z01022 |
store status exception |
Z01023 |
account status exception |
Z01026 |
refund order number already exists |
Z00053 |
refundOrderAmt field illegal |
Z00055 |
refundOrderAmt field illegal(when the currency is LAK, no decimals are allowed) |