Skip to main content
This page describes the webhook events and order statuses for the crypto buy (onramp) flow. The webhook is emitted only for the three statuses below. Other order states (such as CREATED, ONRAMP_INITIATED, ONRAMP_INCONSISTENT and REFUND_COMPLETED) may be observed via the transaction-status API but are never sent as webhooks for the onramp flow.

Sample Payloads

All payloads also include a top-level uuid field (string) that always equals id. It is retained for backward compatibility and is a deprecated duplicate of id. source_id, bank_transaction_id, and tag are always present and are serialized as an empty string ("") when unset, never null. txn_hash is always present (top-level string); it is serialized as an empty string ("") until the outgoing crypto withdrawal has an on-chain hash, so it is "" on ONRAMP_COMPLETED and FAILED, and is populated only on COMPLETED. failure_code and failure_desc are present only when the order fails; on success these keys are absent from the payload (not null).

ONRAMP_COMPLETED

COMPLETED

FAILED