Onramp transaction updated
Triggered when the onramp.transaction.updated webhook event is emitted. Your API will receive a POST request at the webhook URL you configured.
Authorizations
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
The onramp.transaction.updated webhook event payload.
- Option 1
- Option 2
Webhook payload for all onramp transaction events (created, updated, success, failed). Shape depends on transaction type — standard flow (guest checkout / authorized) uses OnrampTransactionPayload, Headless API (Apple Pay / Google Pay) uses OnrampOrderPayload. Distinguish by presence of orderId (Headless) vs transactionId (standard).
The webhook event type.
"onramp.transaction.updated"
Unique transaction identifier.
"1f087a54-ff1f-62e8-9f85-aa77ac0499a5"
Current status of the transaction.
ONRAMP_TRANSACTION_STATUS_UNSPECIFIED, ONRAMP_TRANSACTION_STATUS_CREATED, ONRAMP_TRANSACTION_STATUS_IN_PROGRESS, ONRAMP_TRANSACTION_STATUS_SUCCESS, ONRAMP_TRANSACTION_STATUS_FAILED, ONRAMP_TRANSACTION_STATUS_AWAITING_AUTH, ONRAMP_TRANSACTION_STATUS_AWAITING_PAYMENT "ONRAMP_TRANSACTION_STATUS_IN_PROGRESS"
The crypto currency purchased (e.g., "USDC", "ETH").
"USDC"
The blockchain network for the purchase (e.g., "ethereum", "base").
"ethereum"
A monetary amount with currency.
{ "currency": "USD", "value": "5.00" }A monetary amount with currency.
{ "currency": "USD", "value": "5.00" }A monetary amount with currency.
{ "currency": "USD", "value": "5.00" }A monetary amount with currency.
{ "currency": "USD", "value": "5.00" }A monetary amount with currency.
{ "currency": "USD", "value": "5.00" }A monetary amount with currency.
{ "currency": "USD", "value": "5.00" }A monetary amount with currency.
{ "currency": "USD", "value": "5.00" }The onchain transaction hash of the send (0x-prefixed for EVM).
"0x"
When the transaction was created.
"2025-09-02T02:34:13Z"
When the transaction completed (uses send_started_at for early success).
"0001-01-01T00:00:00Z"
The user's country code.
"US"
Hashed user identifier (entity hash for guest, user ID for authed).
"4132b63ee21128686458155b28570289"
The payment method used.
UNSPECIFIED, CARD, ACH_BANK_ACCOUNT, APPLE_PAY, FIAT_WALLET, CRYPTO_ACCOUNT, GUEST_CHECKOUT_CARD, PAYPAL, RTP, GUEST_CHECKOUT_APPLE_PAY, GUEST_CHECKOUT_GOOGLE_PAY "CARD"
The destination wallet address.
"0xe0512E358C347cc2b1A42d057065CE642068b7Ba"
The type of onramp transaction.
ONRAMP_TRANSACTION_TYPE_UNSPECIFIED, ONRAMP_TRANSACTION_TYPE_BUY_AND_SEND, ONRAMP_TRANSACTION_TYPE_SEND "ONRAMP_TRANSACTION_TYPE_BUY_AND_SEND"
Whether the user is authed or guest.
USER_TYPE_UNSPECIFIED, USER_TYPE_AUTHED, USER_TYPE_GUEST "USER_TYPE_GUEST"
The partnerUserId provided when initializing the onramp session.
"example_user_ref"
The token contract address (populated when asset metadata is available).
""
The reason for failure (if applicable).
FAILURE_REASON_UNSPECIFIED, FAILURE_REASON_BUY_FAILED, FAILURE_REASON_SEND_FAILED "FAILURE_REASON_UNSPECIFIED"
The name of the developer app.
""
Error code for the transaction failure (if applicable).
"ERROR_CODE_UNSPECIFIED"
Response
Webhook received and processed successfully.