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"
}

