Refund or Reverse Payment
This API allows your application to refund payment from your order
Endpoint
POST https://demo-api.frontpayment.no/api/v1/connect/terminal/orders/refund/{{ORDER_UUID}}
Authorization
Include a Bearer Token in the Authorization
header. You can obtain this token from Front Payment.
Example:
Authorization: Bearer YOUR_FRONTPAYMENT_BEARER_TOKEN
Request Payload
Send the following parameters as a JSON object in the request body:
{
"type": "regular",
"grandTotal": 42,
"products": [
{
"id": 12,
"amount": 42
}
],
"isReversal": false
}
Validation Rules
Make sure your request meets the following requirements:
Field | Type | Description |
---|---|---|
type |
string |
Required Using type. Available type is regular |
grandTotal |
numeric |
Required Grand total of the refunded amount. |
products.*id |
numeric |
Required Order product id. From which product you want to refund. |
products.*.amount |
numeric |
Required Refund amount for the product. |
isReversal |
boolean |
If you want to Reverse the payment then set true otherwise set false |
Response
A successful request will return a 202 OK
status with the following JSON payload:
{
"status_code": 202,
"status_message": "OK",
"message": "terminalOrderRefundRequestSuccessfully",
"is_data": false,
"data": null
}
Error Response
API returns a 404
error, it means requested order with ORDER_UUID
could not be found in our system.
{
"status_code": 404,
"status_message": "Not Found",
"message": "orderNotFound",
"is_error": false,
"errors": null
}
API return a 417
error, it means request payload validation failed.
{
"status_code": 417,
"status_message": "Client Error",
"message": "payloadValidationErrors",
"is_error": true,
"errors": "Array"
}
API returns a 510
error, it means something failed on the server side
{
"status_code": 510,
"status_message": "Execution Exception Occurred",
"message": "somethingWentWrong",
"is_error": true,
"errors": "Array"
}
Others refund rejections errors
{
"status_code": 400,
"status_message": "Conflict of Business Logic",
"message": "requestProductIdNotAvailable",
"is_data": false,
"data": null
}
{
"status_code": 400,
"status_message": "Conflict of Business Logic",
"message": "refundRejectionForProductAmountExceed",
"is_error": true,
"errors": "Array"
}