Coinbase Payment Sessions API
Payment Sessions track the full lifecycle of a merchant payment, from authorization through capture, void, or refund. Each session records every operation and balance change across its lifecycle. **Who initiates an authorization.** A session can be authorized in four ways, split by who acts: - **Customer-initiated:** the payer authorizes at payment time by signing. Use **Authorize a payment session with a wallet** or **Authorize a payment session with x402**. These calls are unauthenticated because the payer's signature is the authorization. - **Merchant-initiated:** the merchant charges against an authorization the payer granted earlier, with the payer no longer present. Use **Authorize a payment session with a mandate** (draws on a mandate's standing spending allowance) or **Authorize a payment session with a Coinbase account** (charges a Coinbase account the payer linked over OAuth). Creating, listing, canceling, capturing, voiding, and refunding a session are merchant actions authenticated with your API key.