Skip to main content
Errors from Managed Payments endpoints use a flat response and the following endpoint-specific numeric codes. For general errors returned by any Circle API, see API errors.

Error response shape

Managed Payments endpoints return errors as a flat object:

Common error codes

Create a payment intent

Codes returned by POST /v1/paymentIntents.

Refund a payment intent

Codes returned by POST /v1/paymentIntents/{paymentIntentId}/refund.
Circle Singapore (CIRCLE_SG) doesn’t support a raw refund destination. Use an addressBookId or set useOriginalSender: true.

Address book recipients

Codes returned when creating or updating an address book recipient.

Stablecoin payouts

Codes returned by stablecoin payout endpoints.

Create a withdrawal

Codes returned when POST /v1/accounts/withdrawals sends fiat to a linked bank account.

Asynchronous withdrawal outcomes

A valid POST /v1/accounts/withdrawals call returns 201 at once with data.status: "pending". Get the final result from the payouts webhook or GET /v1/accounts/withdrawals/{id}. Store trackingRef to match the wire on your bank statement.

Wire accounts

Idempotency

An idempotency key stays bound to its record and doesn’t expire. The same body returns the first record. A new body returns 409 with code 1083. Use a new UUID for each new request.