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.

Operations 20

POST /v2/payment-sessions Create a payment session #
GET /v2/payment-sessions List payment sessions #
GET /v2/payment-sessions/{paymentSessionId} Get a payment session #
POST /v2/payment-sessions/{paymentSessionId}/cancel Cancel a payment session #
GET /v2/payment-sessions/{paymentSessionId}/authorizations/wallet/options Get wallet authorization options #
POST /v2/payment-sessions/{paymentSessionId}/authorizations/wallet Authorize a payment session with a wallet #
POST /v2/payment-sessions/{paymentSessionId}/authorizations/x402 Authorize a payment session with x402 #
POST /v2/payment-sessions/{paymentSessionId}/authorizations/coinbase Authorize a payment session with a Coinbase account #
POST /v2/payment-sessions/{paymentSessionId}/authorizations/mandate Authorize a payment session with a mandate #
GET /v2/payment-sessions/{paymentSessionId}/authorizations List payment session authorizations #
GET /v2/payment-sessions/{paymentSessionId}/authorizations/{authorizationId} Get a payment session authorization #
POST /v2/payment-sessions/{paymentSessionId}/captures Capture a payment session #
GET /v2/payment-sessions/{paymentSessionId}/captures List payment session captures #
GET /v2/payment-sessions/{paymentSessionId}/captures/{captureId} Get a payment session capture #
POST /v2/payment-sessions/{paymentSessionId}/voids Void a payment session #
GET /v2/payment-sessions/{paymentSessionId}/voids List payment session voids #
GET /v2/payment-sessions/{paymentSessionId}/voids/{voidId} Get a payment session void #
POST /v2/payment-sessions/{paymentSessionId}/refunds Refund a payment session #
GET /v2/payment-sessions/{paymentSessionId}/refunds List payment session refunds #
GET /v2/payment-sessions/{paymentSessionId}/refunds/{refundId} Get a payment session refund #

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-conversion-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-currency-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-payment-method-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-transfer-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-transaction-summary-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-price-book-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-product-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-candle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-trade-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-order-book-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-trade-2-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-profile-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/coinbase:coinbase-payment-sessions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

coinbase-payment-sessions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Coinbase Developer Platform Payment Sessions API
  description: The Coinbase Developer Platform APIs - leading the world's transition onchain.
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  version: 2.0.0
  contact:
    name: Coinbase Developer Platform
    email: cdp@coinbase.com
    url: https://cdp.coinbase.com
servers:
- url: https://api.cdp.coinbase.com/platform
  description: The production server of the CDP APIs.
security:
- apiKeyAuth: []
tags:


# --- truncated at 32 KB (302 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/openapi/coinbase-payment-sessions-api-openapi.yml