Refunds

The refund object and the allowed CRUD operations on the related resource endpoint

A captured payment can be refunded, either totally or partially. The total refund amount cannot exceed the amount captured — if it’s equal to the amount captured the refund will be full, if it’s less the refund will be partial:

  • In case of a partial refund, the related order's payment status is moved to partially_refunded and a new successful refund transaction is created.

  • In case of a full refund, the order status is moved to cancelled, its payment status to refunded, and a new successful refund transaction is created.

A refund process can be initiated via trigger attribute either from an order or from a return. The response you get when you fetch a refund contains all the information and messages provided by the payment gateway.

If a refund gets stuck (for any reason) on our platform but succeeds on the payment gateway, you can unblock it by passing the _forward trigger attribute.

Data model

Check the related ER diagram and explore the flowchart that illustrates how the refund resource relates to the order and the other transaction APIs.

Create and delete operations are not allowed on this endpoint. You can only fetch a list of refunds or a specific single one, which can also be updated in order to mark it as succeeded, unblock it manually, or add/change common attributes (metadata, references, etc.).

Last updated