Skip to main content
POST
Refund Checkout

Authorizations

Authorization
string
header
required

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.

Headers

X-Idempotency-Key
string

An optional UUID v4 request header for making requests safely retryable.

Required string length: 36
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

Path Parameters

id
string
required

The checkout identifier. Accepts either the id (24-char ObjectID hex) or the uuid (RFC 4122 UUID v4) returned in checkout responses.

Pattern: ^([0-9a-f]{24}|[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$

Body

application/json
amount
string
required

Refund amount. Must be at least 0.01 USDC after currency conversion and not exceed the remaining refundable amount. Partial refunds to Solana payers must be at least 0.50 USDC after conversion. A full-remainder refund is exempt only when the converted USDC amount exactly matches the current refundable balance. This API supports at most two decimal places. A remaining balance with nonzero sub-cent digits cannot use the full-remainder exemption through this API.

Pattern: ^\d+(\.\d{1,2})?$
Example:

"25.00"

currency
string

Currency of the refund amount. If omitted, defaults to the checkout's original fiat currency (or USDC if the payment was in USDC). Supported currencies: any fiat currency supported by the checkout creation API.

Example:

"USDC"

reason
string

Optional reason for the refund.

Maximum string length: 500
Example:

"Customer requested refund"

Response

Refund initiated successfully.

checkout
object
required
refund
object
required