Refunds, Voids, and Partial Refunds

Use refund operations to return funds after settlement and void operations to cancel authorizations before capture/settlement where supported by the selected provider.

Supported Operations

  • Full refund: return the full captured amount.
  • Partial refund: return part of the captured amount (multiple partial refunds may be allowed up to total captured value).
  • Void: cancel an uncaptured/authorized transaction where gateway supports it.
POST https://api.tinkerpayments.com/v1/payments/{paymentId}/refund
Authorization: Bearer <token>
Content-Type: application/json
Idempotency-Key: refund-ORDER-12345-1

{
  "amount": 25.00,
  "reason": "Partial order cancellation"
}
Refund Response
{
  "success": true,
  "data": {
    "id": "rf_123",
    "payment_id": "pay_123",
    "amount": 25.00,
    "currency": "USD",
    "status": "processing",
    "requested_at": "2026-02-17T12:00:00Z"
  }
}

Operational Notes

  • Always fetch current payment status before issuing refund/void.
  • Use idempotency keys for refund operations to prevent duplicate refunds.
  • Subscribe to payment.refunded webhooks for final state.