Skip to main content
WEBHOOK
acceptanceDisbursementPending
{
  "eventId": "123e4567-e89b-12d3-a456-426614174000",
  "timestamp": "2025-06-01T12:00:00Z",
  "data": {
    "disbursementId": "disbursement_82c879c1-84e1-44ed-a8c2-1ac239cf09ad",
    "source": {
      "accountId": "account_af2937b0-9846-4fe7-bfe9-ccc22d935114",
      "asset": "usdc"
    },
    "target": {
      "coinbaseUserId": "coinbase_user_abc123"
    },
    "amount": "25.00",
    "asset": "usdc",
    "status": "pending",
    "reason": "Goodwill disbursement for delayed shipment.",
    "externalReferenceId": "disbursement-2026-04-1234",
    "metadata": {
      "customer_id": "cust_12345",
      "order_id": "order_67890"
    },
    "createdAt": "2026-04-17T17:00:00.000Z",
    "updatedAt": "2026-04-17T17:00:00.000Z"
  },
  "eventType": "acceptance.disbursement.pending"
}

Authorizations

X-Hook0-Signature
string
header
required

HMAC-SHA256 signature of the raw request body, computed using your webhook secret. Webhook receivers should always verify this header before processing the event. The header value is hex-encoded and prefixed by the algorithm and timestamp, e.g. t=1700000000,v1=abc123... (refer to the Webhook Security docs for the exact verification algorithm).

This scheme applies to webhook delivery (outbound POSTs from CDP to your endpoint), not to inbound CDP API requests.

Body

application/json

The acceptance.disbursement.pending webhook event payload.

Common fields included in every DisbursementEvent payload.

eventId
string<uuid>
required

Unique identifier for this webhook event. Use this for idempotency.

Example:

"123e4567-e89b-12d3-a456-426614174000"

timestamp
string<date-time>
required

When this event occurred (ISO 8601 format).

Example:

"2025-06-01T12:00:00Z"

data
object
required

A Disbursement represents a merchant-initiated payment of funds from a CDP account they own to a Coinbase account or onchain address. Used for standalone refunds, goodwill disbursements, rebates, and other merchant-driven payouts that are not tied to a specific payment session.

Disbursements are asynchronous: the resource is returned in pending status and transitions to succeeded (with associated onchainTransactions) or failed (with error).

Example:
{
"disbursementId": "disbursement_82c879c1-84e1-44ed-a8c2-1ac239cf09ad",
"source": {
"accountId": "account_af2937b0-9846-4fe7-bfe9-ccc22d935114",
"asset": "usdc"
},
"target": { "coinbaseUserId": "coinbase_user_abc123" },
"amount": "25.00",
"asset": "usdc",
"status": "pending",
"reason": "Goodwill disbursement for delayed shipment.",
"externalReferenceId": "disbursement-2026-04-1234",
"metadata": {
"customer_id": "cust_12345",
"order_id": "order_67890"
},
"createdAt": "2026-04-17T17:00:00.000Z",
"updatedAt": "2026-04-17T17:00:00.000Z"
}
eventType
enum<string>
required

The type of webhook event.

Available options:
acceptance.disbursement.pending
Example:

"acceptance.disbursement.pending"

Response

Webhook received and processed successfully.