Introduction
The Checkouts API enables developers to create and manage checkouts for cryptocurrency payments entirely via API — no dashboard required. These APIs provide a simple way to accept payments by generating embeddable URLs that handle the payment flow, including address generation, transaction monitoring, and status updates. Real-time payment notifications are available through webhooks.To use these APIs, you need a Coinbase Business account.
Base URL
Authentication
All Checkouts API endpoints require authentication using a JWT Bearer token. See the Authentication guide for details on generating your token.Available Endpoints
- Create Checkout - Creates a new checkout
- List Checkouts - Retrieves a paginated list of checkouts
- Get Checkout - Retrieves details of a specific checkout
- Deactivate Checkout - Deactivates a checkout
- Refund Checkout - Initiates a refund for a completed checkout
Agentic Payments with x402
Each checkout also exposes an x402 payment URL in thex402_url field of the checkout response. An AI agent or x402 client can pay this URL programmatically: it authorizes a gasless USDC payment on Base that Coinbase captures and settles server-side — no hosted page, wallet pop-up, or human in the loop. See Accept agentic payments with x402 for the end-to-end flow.
Checkout Status
Checkouts can have the following statuses:ACTIVE- The checkout is active and can accept paymentsPROCESSING- The checkout is processing a paymentDEACTIVATED- The checkout has been manually deactivatedEXPIRED- The checkout has expired based on theexpiresAttimestampCOMPLETED- The checkout has been successfully paidFAILED- The checkout has failed due to a payment errorREFUNDED- The checkout payment has been fully refundedPARTIALLY_REFUNDED- The checkout payment has been partially refunded
Refund Status
Refunds associated with a checkout can have the following statuses:PENDING- The refund is being processedCOMPLETED- The refund has been successfully completedFAILED- The refund has failed