amount, or a partial refund by specifying an amount.
All refund endpoints accept both API key authentication and user JWT authentication.
Create a refund
Authorization: Bearer header.
The ID of the charge to refund.
Your reference for this refund. Maximum 128 characters. Used for idempotency and tracking.
Partial refund amount in the charge’s settlement currency, as a decimal. Omit to refund the full settled amount.
Who bears the refund processing fee:
ORG (your organization) or CUSTOMER. Defaults to your organization’s configured setting when omitted.Optional explanation for the refund. Maximum 500 characters.
Destination wallet address for crypto refunds. Required for charges paid via cryptocurrency. Minimum 1 character, maximum 255 characters.
Optional idempotency key to prevent duplicate refunds on retried requests. Maximum 255 characters.
Test mode only. Force a specific outcome:
success or failed.Unique identifier for the refund.
The charge this refund is associated with.
Your reference for the refund.
Current refund status. Common values:
pending, processing, succeeded, failed.The amount requested for refund, as a decimal string in the settlement currency.
The amount actually refunded so far.
null until the refund is processed.The processing fee charged for the refund, as a decimal string.
Who bears the refund fee:
ORG or CUSTOMER.The reason provided at refund creation, if any.
ISO 8601 creation timestamp.
ISO 8601 last-updated timestamp.
ISO 8601 timestamp when the refund reached a terminal status, or
null if not yet complete.Get a refund
The ID of the refund to retrieve.
RefundResponse object with the same fields as the create response.
Get refund by charge
The charge ID to look up the refund for.
List refunds
Maximum number of results to return. Accepts 1–100.
Number of results to skip for pagination.
Filter results to a specific refund status (e.g.,
pending, succeeded, failed).Total number of refunds matching the query (before pagination).
Array of refund objects. Each item has the same fields as a single refund response.
Error codes
| Status | Description |
|---|---|
400 | Invalid request, charge not refundable, or simulated_outcome used outside test mode. |
401 | Invalid or missing API key or JWT. |
403 | Charge belongs to a different organization. |
404 | Charge or refund not found. |