Skip to main content
These events are sent while a customer pays fiat and receives stablecoin. Each one tells you the payment moved to a new state.

Summary

Each event in detail

What it means: The payment exists. You already have the deposit instructions from the create response.What usually comes next: quote_locked.What to do: Save the payment ID against your order.
What it means: The quote is tied to this payment and can’t be used again.What usually comes next: fiat_pending.What to do: Nothing.
What it means: We’re waiting for your customer to pay. They have 30 minutes. For mobile money they also need to approve on their phone (and you may need to send a code).What usually comes next: fiat_received. It’s failed if no money arrives within 30 minutes, or flagged if the wrong amount arrives.What to do: Show the deposit instructions and remind your customer to pay.
What it means: Your customer’s fiat has arrived.What usually comes next: processing.What to do: Tell your customer their payment was received.
What it means: We’re sending the stablecoin to the wallet.What usually comes next: completed. Sometimes flagged if something needs checking.What to do: Nothing.
What it means: The stablecoin was sent. This is a success, and it’s final.What to do: Show success. Call Get a payment to get the transaction_hash your customer can look up on the blockchain.
What it means: The payment ended without finishing. Common reasons: no money arrived within 30 minutes, or the mobile money request was declined. Final.What to do: Tell your customer. To try again, create a new quote and a new payment.
What it means: The payment was canceled before it finished. Final.What to do: Tell your customer.
What it means: A payment that had gone through was undone. Final.What to do: Contact support with the payment ID for details.
What it means: The payment is on hold for a review. For example, the amount received didn’t match the amount expected.What usually comes next: After the review, completed or failed.What to do: Tell your customer the payment is being checked. Don’t create a duplicate payment.
What it means: The payment is on hold.What usually comes next: resumed.What to do: Wait.
What it means: A paused payment is moving again.What to do: Keep listening for the next event.

Example payloads

Every onramp event has this same shape. Only event_type, data.type, data.state, and data.status change.
Last modified on October 29, 2026