Create Refund
Create a refund for a processor attempt (charge).
Authentication
AuthorizationBearer
Bearer authentication of the form Bearer <token>, where token is your auth token.
Path parameters
account_id
Headers
Idempotency-Key
Request
This endpoint expects an object.
payment_intent_id
ID of the payment intent to refund. The API auto-resolves the latest succeeded processor attempt.
invoice_id
ID of the invoice to refund. The API resolves the payment allocation and auto-resolves the succeeded processor attempt. Errors if the invoice was paid by multiple payment intents.
amount_atom
Amount to refund in atoms. If not provided, full refund.
currency
Currency code. If not provided, uses charge currency.
reason
Reason for the refund
metadata
Additional metadata (max 10KB when serialized)
refunded_out_of_band
Set to true if refund was already processed externally (e.g., in Stripe dashboard). This records the refund without calling the payment processor.
Response
Successful Response
id
ID of the refund
account_id
ID of the account
charge_id
ID of the original charge
amount_atom
Refund amount in atoms
currency
Currency code (e.g., USD)
status
Status of a refund throughout its lifecycle.
created_at
updated_at
reason
Reason for initiating a refund.
processor_refund_id
Processor’s refund ID (e.g., Stripe’s re_xxx)
failure_code
failure_message
processed_at
metadata
Errors
422
Unprocessable Entity Error