Step 1: Generate a Quote ID
Before creating a conversion order, you must obtain a validquote_id, which defines the exchange rate and other parameters for the transaction.
Use the Create Quote API to generate this ID.
Important:
- Ensure that the
sell_amountvalue exactly matches the amount you intend to use for the conversion order.
Using a different amount may result in the request being rejected, as it must align with thequote_idgenerated for that specific amount.- A Quote ID is valid for 75 seconds. You must create the conversion within this time frame; otherwise, the quote will expire.
Create Quote - Request example
Notes:
- You can use
buy_amountinstead ofsell_amount.
The system will automatically calculate the corresponding amount in the other currency.
However, make sure to include only one of these parameters — eithersell_amountorbuy_amount, but not both.- Use the same parameter in both APIs — if
buy_amountis used in Create Quote, usebuy_amountin Create Conversion, and the same applies tosell_amount.
This ensures consistency and successful processing.
Create Quote - Response example
Step 2: Create the Conversion
Once you have a valid Quote ID, use the Create Conversion API to initiate the conversion order.Create Conversion - Request example
Create Conversion - Response example
conversion.funds.awaiting: The conversion order has been placed successfully.conversion.funds.arrived: The funds in the sell currency account have been deducted.
Webhook example: conversion.funds.awaiting
Webhook example: conversion.funds.arrived
Step 3: Order Completion
Once the order is submitted, please wait for UQPAY to review and approve the currency exchange. Users may receive one of the following webhooks, depending on the outcome of the conversion order:conversion.trade.failed: The conversion order has failed or been cancelled.conversion.trade.settled: The conversion has been successfully completed.

