Skip to content

Reverse the order

Order can be reversed fully or partially. Parameter amount must be passed in reverse request equal to order actual_amount value if full reverse is required. Multiple partial reverses are allowed while sum of all partial reverses is less or equal to order actual_amount.

Idempotent reversal key

Idempotent reversal key reverse_id in reverse request is used to provide safe reverse retries. Usually it is not required for full reverse. In case of partial reverse, idempotent key can protect from multiple retries in case of error.

For example, if order amount is 1000 GEL and partial reversal with amount 100 GEL is sent and failed due to network error, to be sure, that one more attempt of 100 GEL reverse will lead to single partial reversal and not a duplicate (100 + 100 = 200 GEL), each attempt must be sent with the same reverse_id parameter value.

Endpoint for order reverse

Reverse the order

POST /api/reverse/order_id

This endpoint expects POST request in JSON fromat with parameters.

Normal response will contain reverse_status parameter which indicates if reversal is successful or not.

Request and response examples

curl -L 'https://pay.flitt.com/api/reverse/order_id' \
-H 'Content-Type: application/json' \
-d '{
  "request": {
    "order_id": "test_12343242111",
    "currency": "GEL",
    "amount": "1",
    "signature": "29a569275265925c2ec356d3adada1929fd8bb8c",
    "merchant_id": "1549901"
  }
}'
{
    "response": {
        "reverse_status": "approved",
        "order_id": "test_12343242111",
        "response_description": "",
        "response_code": "",
        "merchant_id": 1549901,
        "response_status": "success",
        "signature": "c703b3ce82aecfd2de633319685223347140717d",
        "reverse_id": "",
        "reversal_amount": "1",
        "transaction_id": "2011273408"
    }
}
{
    "response": {
        "error_code": 1007,
        "error_message": "Parameter `signature` is incorrect",
        "request_id": "HGh7ami3WN0ci",
        "response_status": "failure"
    }
}