Skip to main content
WEBHOOK

Authorizations

X-Webhook-Signature
string
header
required

HMAC-SHA256 signature supplied on every webhook delivery. The signature is computed from the raw request body using the webhook secret supplied during creation of the webhook subscription.

Webhook receivers can cryptographically verify this header before processing the event to ensure the authenticity of the webhook delivery.

Refer to the verify signatures documentation to learn details about the full payload and the exact verification algorithm.

X-Hook0-Signature is deprecated and will eventually be removed. Use X-Webhook-Signature going forward. Both headers are sent with identical values and use the same verification algorithm and webhook secret.

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

Headers

X-Webhook-Signature
string
required

HMAC-SHA256 signature supplied on every webhook delivery. The signature is computed from the raw request body using the webhook secret supplied during creation of the webhook subscription.

Webhook receivers can cryptographically verify this header before processing the event to ensure the authenticity of the webhook delivery.

Refer to the verify signatures documentation to learn details about the full payload and the exact verification algorithm.

X-Hook0-Signature is deprecated and will eventually be removed. Use X-Webhook-Signature going forward. Both headers are sent with identical values and use the same verification algorithm and webhook secret.

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

X-Hook0-Signature
string
required

HMAC-SHA256 signature supplied on every webhook delivery. The signature is computed from the raw request body using the webhook secret supplied during creation of the webhook subscription.

Webhook receivers can cryptographically verify this header before processing the event to ensure the authenticity of the webhook delivery.

Refer to the verify signatures documentation to learn details about the full payload and the exact verification algorithm.

X-Hook0-Signature is deprecated and will eventually be removed. Use X-Webhook-Signature going forward. Both headers are sent with identical values and use the same verification algorithm and webhook secret.

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

Body

application/json

The offramp.transaction.success webhook event payload.

Webhook payload for offramp transactions. Serialized from the OfframpTransaction proto via protojson with eventType appended.

eventType
string
required

The webhook event type.

Example:

"offramp.transaction.updated"

transactionId
string
required

Unique transaction identifier.

Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

status
enum<string>
required

Current status of the offramp transaction.

Available options:
TRANSACTION_STATUS_UNSPECIFIED,
TRANSACTION_STATUS_CREATED,
TRANSACTION_STATUS_EXPIRED,
TRANSACTION_STATUS_STARTED,
TRANSACTION_STATUS_SUCCESS,
TRANSACTION_STATUS_FAILED
Example:

"TRANSACTION_STATUS_STARTED"

asset
string

The crypto currency being sold (e.g., "ETH", "USDC").

Example:

"ETH"

network
string

The blockchain network (e.g., "ethereum", "base").

Example:

"ethereum"

sellAmount
object

A monetary amount with currency.

Example:
total
object

A monetary amount with currency.

Example:
minimumTotal
object

A monetary amount with currency.

Example:
subtotal
object

A monetary amount with currency.

Example:
coinbaseFee
object

A monetary amount with currency.

Example:
exchangeRate
object

A monetary amount with currency.

Example:
unitPrice
object

A monetary amount with currency.

Example:
fromAddress
string

The address crypto was received from.

Example:

"0x742d35Cc6634C0532925a3b844Bc454e4438f44e"

toAddress
string

The address crypto was sent to (Coinbase deposit address).

Example:

"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"

createdAt
string<date-time>

When the transaction was created.

Example:

"2025-09-02T02:34:13Z"

updatedAt
string<date-time>

When the transaction was last updated.

Example:

"2025-09-02T02:40:00Z"

txHash
string

The onchain transaction hash of the crypto send.

Example:

"0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890"

redirectUrl
string

The URL the user was redirected to after confirming the offramp.

Example:

"https://partner.com/offramp/complete"

paymentMethod
enum<string>

The payment method type used for cashout.

Available options:
UNSPECIFIED,
CARD,
ACH_BANK_ACCOUNT,
APPLE_PAY,
FIAT_WALLET,
CRYPTO_ACCOUNT,
GUEST_CHECKOUT_CARD,
PAYPAL,
RTP,
GUEST_CHECKOUT_APPLE_PAY,
GUEST_CHECKOUT_GOOGLE_PAY
Example:

"ACH_BANK_ACCOUNT"

partnerUserRef
string

The partnerUserId provided when initializing the offramp session.

Example:

"example_user_ref"

Response

Webhook received and processed successfully.