Returns captured funds to the payer. The session must have a positive refundable balance and the refundExpiresAt deadline must not have passed.
This is an asynchronous operation. The refund is returned in pending status and transitions to succeeded or failed.
If amount is omitted, the full remaining refundable amount is refunded. Multiple partial refunds are supported.
A JWT signed using your CDP API Key Secret, encoded in base64. Refer to the Generate Bearer Token section of our Authentication docs for information on how to generate your Bearer Token.
An optional string request header for making requests safely retryable. When included, duplicate requests with the same key will return identical responses. Refer to our Idempotency docs for more information on using idempotency keys.
1 - 128The unique identifier of the payment session.
The ID of the payment session, a UUID prefixed by paymentSession_.
^paymentSession_[a-f0-9\-]{36}$"paymentSession_82c879c1-84e1-44ed-a8c2-1ac239cf09ad"
A request to create a refund for a payment session.
The source from which to fund the refund. Can be a CDP account or an onchain address.
{
"accountId": "account_af2937b0-9846-4fe7-bfe9-ccc22d935114",
"asset": "usdc"
}A decimal representation of the amount to refund, denominated in the session's asset. If omitted, the full remaining refundable amount is refunded.
"0.50"
The reason for the refund.
"Customer returned the item."
Optional metadata as key-value pairs. Use this to store additional structured information on a resource, such as customer IDs, order references, or any application-specific data. Up to 10 key/value pairs may be provided. Keys and values are both strings. Keys must be ≤ 40 characters; values must be ≤ 500 characters.
{
"customer_id": "cust_12345",
"order_reference": "order-67890"
}Successfully created refund.
A return of previously captured funds to the payer. Multiple partial refunds are allowed up to the total captured amount.
The unique identifier of the refund.
^refund_[a-f0-9\-]{36}$"refund_82c879c1-84e1-44ed-a8c2-1ac239cf09ad"
The ID of the payment session this refund belongs to.
^paymentSession_[a-f0-9\-]{36}$"paymentSession_82c879c1-84e1-44ed-a8c2-1ac239cf09ad"
The source from which the refund is funded. Can be a CDP account or an onchain address.
{
"accountId": "account_af2937b0-9846-4fe7-bfe9-ccc22d935114",
"asset": "usdc"
}The current status of the refund.
pending, succeeded, failed "pending"
A decimal representation of the refunded amount, denominated in the session's asset.
"0.50"
The reason for the refund.
"Customer returned the item."
An error that occurred during a payment operation.
{
"code": "insufficient_funds",
"message": "The payer does not have sufficient funds.",
"occurredAt": "2025-06-15T12:00:00.000Z"
}Optional metadata as key-value pairs. Use this to store additional structured information on a resource, such as customer IDs, order references, or any application-specific data. Up to 10 key/value pairs may be provided. Keys and values are both strings. Keys must be ≤ 40 characters; values must be ≤ 500 characters.
{
"customer_id": "cust_12345",
"order_reference": "order-67890"
}The onchain transactions associated with this refund.
[
{
"transactionHash": "0x012345678901234567890abcdef1234567890abcdef1234567890abcdef1234",
"network": "base"
}
]The UTC ISO 8601 timestamp at which the refund was created.
"2025-06-15T12:40:00.000Z"
The UTC ISO 8601 timestamp at which the refund was last updated.
"2025-06-15T12:41:00.000Z"