Confirm a fiat to crypto quote.
POST
/api/v2/buy/confirm
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”To confirm, you should submit a quote, offerId and walletAddress. Optional parameters are walletAddressTag and walletType.
object
walletAddress
required
The wallet address we send the cryptos to after the payment is completed.
string
Example
3FZbgi29cpjq2GjdwV8eyHuJJnkLtktZc5 walletAddressTag
The destination tag where we send the cryptos to after the payment is completed.
string
Example
104506660 partnerOrderIdentifier
Unique identifier provided by the partner.
string
Example
4ea2b5e9-a413-4359-a8f6-9263ae8a0ee7 quote
required
The quote generated by the sell/quote endpoint.
string
Example
eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJlbmNyeXB0ZWQiOiJ0b2tlbiJ9.gj80-9FPf_Wl7CGg2eDEFHokoEVtXIT7l4F88ztgxnhGIuhjOrhZ6xZLT3vuJPKXam_jQskm1PuM7T0OQdawDw offerId
required
The offer of the Uuid
string
Example
28060342-758a-4fb5-b583-c28886a271ce walletType
One of:
string
Responses
Section titled “ Responses ”Returns a URL to pay for the order.
object
orderId
required
The order id.
integer
Example
1234 paymentUrl
required
The URL the user should be redirected to, to complete their payment.
string
Example
https://www.example.com/pay?id=1234 expiresAt
The expiry date-time that expires this confirmed quote. After this period it’s no longer possible to pay for this order. The date does not apply for order that are paid through bank transfer.
string format: date-time
Example
2025-04-07T18:30:00ZA list of possible errors for this endpoint.
object
code
required
string
message
required
string
solution
required
string
Example
{ "errors": { "ER006": { "code": "ER006", "message": "The provided quote has expired.", "solution": "Request a new quote." }, "ER007": { "code": "ER007", "message": "The provided quote contains invalid data. It is possible it has been tampered with.", "solution": "Provide a valid quote." }, "ER008": { "code": "ER008", "message": "The selected currency is down for maintenance.", "solution": "Check /api/v1/system/currency-pairs to see whether the selected currency is enabled, and try again." }, "ER009": { "code": "ER009", "message": "The provided quote is not a buy quote.", "solution": "Request a new buy quote." }, "ER014": { "code": "ER014", "message": "Invalid wallet address.", "solution": "Provide a valid wallet address for the selected currency pair." }, "ER015": { "code": "ER015", "message": "Invalid destination tag.", "solution": "Provide a valid destination tag." }, "ER044": { "code": "ER044", "message": "Destination tag not supported for this currency pair.", "solution": "Leave the destination tag empty." }, "ER045": { "code": "ER045", "message": "Missing quote.", "solution": "Provide a valid quote." }, "ER046": { "code": "ER046", "message": "Invalid callback URL.", "solution": "Provide a valid callback URL." }, "ER047": { "code": "ER047", "message": "Invalid return URL.", "solution": "Provide a valid return URL." }, "ER048": { "code": "ER048", "message": "Invalid JSON data provided.", "solution": "Provide valid JSON data." }, "ER124": { "code": "ER124", "message": "User is disabled.", "solution": "Please contact support for assistance." }, "ER131": { "code": "ER131", "message": "Invalid offerId provided, offer already confirmed.", "solution": "Provide an offerId that has not yet been confirmed." }, "ER132": { "code": "ER132", "message": "Invalid offerId provided, offer not found.", "solution": "Provide an existing offerId." }, "ER133": { "code": "ER133", "message": "The offer is expired.", "solution": "You can only confirm non-expired offers." }, "ER134": { "code": "ER134", "message": "The amount is fixed and cannot be changed.", "solution": "You can only confirm this offer for the original amount." }, "ER135": { "code": "ER135", "message": "The currency is fixed and cannot be changed.", "solution": "You can only confirm this offer for the original currency." }, "ER136": { "code": "ER136", "message": "The payment method is fixed and cannot be changed.", "solution": "You can only confirm this offer for the original payment method." }, "ER137": { "code": "ER137", "message": "The fee is fixed and cannot be changed.", "solution": "You can only confirm this offer for the original fee." }, "ER138": { "code": "ER138", "message": "The account type does not support the quoted payment method.", "solution": "Choose an account type that supports the quoted payment method." }, "ER139": { "code": "ER139", "message": "The account is not verified.", "solution": "Provide a verified account or verify the account first." }, "ER800": { "code": "ER800", "message": "Authorization token is invalid.", "solution": "Provide a valid authorization token." }, "ER801": { "code": "ER801", "message": "Authorization token has expired.", "solution": "Request a new authorization token." }, "ER802": { "code": "ER802", "message": "Authorization token not found.", "solution": "Provide an authorization token." }, "ER803": { "code": "ER803", "message": "Multiple authorization methods used.", "solution": "Use exactly one authorization method." }, "ER805": { "code": "ER805", "message": "API key is invalid.", "solution": "Provide a valid API key." }, "ER806": { "code": "ER806", "message": "API key not found.", "solution": "Provide an API key." }, "ER999": { "code": "ER999", "message": "A general error has occurred. Please contact our support team.", "solution": "Contact our support team." } }}