Payment Refunds

POST /payments/:paymentId/refunds
 PUT /refunds/:refundId
 GET /refunds/:refundId

Refunds can be created on Card and Bank payments for the entire value of the payment or for a partial amount. The transaction fees will still apply and will not be refunded. The amount of a refund cannot exceed the remaining payment amount after previous refunds and disputes are taken into account.

When a refund occurs, the origin account is always liable for the full amount of the refund. To the extent that some or all of these funds were transferred to other accounts, the payment owner can recoup parts or all of the refund from those accounts. See Refund Recoup.

Refund's effect on a payment's balances

Even though each payment carries its own balance indicating where the funds from the payment currently reside, the refund amount will always be deducted from the payment balances of the origin account in the following sequence and until the refund amount is covered:

  1. "Final" balance until this balance is zero
  2. "Transferable" balance until this balance is also zero
  3. "Final" balance which is zero after 1 but will now get drawn negative

Anytime the "final" payment balance is negative, it implies that funds have been removed from the customer's available balance, whether the payment is "posted" or "paid".

Payment balance changes

Since a refund will affect a payment's balances, a refund will create a related payment balance change object that will follow the rules outlined above to generate the appropriate payment transfers.