Refunds

Available via: Dashboard and API

How Refunds Work

Inflow supports refunding payments that have reached a refundable status. Via the API, refunds are full refunds — the entire settled amount is returned to the customer's original payment method (card or bank account).

Refundable statuses: A payment can be refunded when its status is CHECKOUT_SUCCESS, PAYMENT_RECEIVED, or PAYMENT_SUCCESS.

Issuing a Refund

From the Dashboard

  1. Go to Payments in your Inflow Dashboard.
  2. Find the payment you want to refund and click on it.
  3. Click Refund.
  4. Confirm the refund.

Via the API

curl -X POST https://api.inflowpay.xyz/api/payment/{paymentId}/refund \
  -H "X-Inflow-Api-Key: inflow_priv_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "reason": "Customer requested cancellation"
  }'
FieldTypeRequiredDescription
reasonstringNoOptional reason for the refund (for your internal records)

The response returns the updated payment object with the new status.

Refund Statuses

After issuing a refund, the payment status changes:

StatusDescription
REFUND_PENDINGThe refund is being processed by the payment provider
FULLY_REFUNDEDThe entire payment amount has been refunded
PARTIAL_REFUNDEDPart of the payment has been refunded

Timing

  • Card refunds: Typically appear on the customer's statement within 5–10 business days, depending on their bank.
  • Open Banking refunds: Processing time varies by bank and country.

Important Notes

  • You can only refund payments with a CHECKOUT_SUCCESS, PAYMENT_RECEIVED, or PAYMENT_SUCCESS status.
  • The API currently supports full refunds only. Partial refund support may be added in a future release.
  • Refunds are deducted from your Inflow balance.
  • Refund events are included in webhook notifications if you have webhooks configured.
  • Refund details appear in the payment's timeline in both the Dashboard and API response.