Skip to content
API DocsDocs

Refund Flow

How card refunds (full and partial) work end-to-end.

2 min readUpdated Mar 24, 2026

A refund reverses a previously successful card payment, returning funds to the customer's card. Both full and partial refunds are supported.

Card Refund Flow

#1. Prerequisites

You need the transactionId from the original payment in SUCCEED status. Refunds cannot be initiated against FAILED, PROCESSING, or already-refunded transactions.

#2. Initiate the Refund

Send POST /api/v1/refunds/card with the transactionId and optional amount. If amount is omitted, the full transaction amount is refunded.

Exirom returns a new refundTransactionId and status PROCESSING immediately.

#Full vs Partial Refund

TypeHow
FullOmit the amount field
PartialInclude amount less than the original transaction amount

Multiple partial refunds can be issued against a single transaction up to the original amount.

#3. Final Status via Webhook

When the card network processes the reversal, Exirom sends a webhook to your callbackUrl:

  • SUCCEED — refund was accepted and funds will be returned to the cardholder
  • FAILED — refund was declined (e.g., card account closed, refund window expired)

Cardholders typically see the credit within 3–10 business days depending on their bank.

#FX Refunds

If the original payment was in a foreign currency, see FX Refund Flow — currency conversion applies in both directions, and the refunded amount may differ due to exchange rate fluctuations.

Was this helpful?