/refund





❗️

Prerequisites to invoke this API:

📘

Idempotency

/refund does not require an idempotencyKey. Server-side idempotency is enforced via the order ID — repeated refund calls for the same order will not double-refund.


Request

Details

HTTP MethodPOST
Endpoint - Sandboxhttps://api-sandbox.flexfactor.io/v1/orders/{id}/refund
Endpoint - Productionhttps://api.flexfactor.io/v1/orders/{id}/refund
{id}FlexFactor unique transaction identifier.\ This is the orderSessionKey returned by /evaluate and/or /outcome and/or webhook and/or batch response file.

Body

amountToRefundDecimalRequiredIn dollars E.g.: '19.99'
refundMessageStringOptionalAdditional message you want to send with the request. E.g.: "Customer request"


Try it right now:


Response

statusstringsuccess / fail
successbooleanIndicates if the API request was successful
resultstringThe result of the API request Optional
statusCodestringThe status code of the API request Optional
errorsarray of stringAny errors encountered during the API request Optional
customPropertiesobjectAdditional custom properties for the API request Optional

Updating the status order

After receiving a successful response from /refund, you need to update this order in your CRM with the corresponding status.




Payload examples

Request


curl --request POST \
     --url https://api-sandbox.flexfactor.io/v1/orders/{id}/refund //insert orderSessionKey returned by the response to /evaluate
	 	 --header 'Authorization: Bearer abc123def456' \ //replace with bearer returned by /oauth2
     --header 'accept: application/json' \
     --header 'content-type: application/*+json' \
     --data '
{
  
  "amountToRefund": 12.00, //in dollars
 
}


Response


{
   "status": "SUCCESS | FAILED",
   "success": true,
   "result": null,
   "statusCode": null,
   "errors": [],
   "customProperties": {}
}