Confirms a previously issued currency conversion quote for the authenticated API key owner.
Headers
-
Public API key issued from the Lumepay API key management flow.
-
API secret paired with the public API key.
Body
Required
-
Amount the customer sends or pays from the quote response. Provide either fromAmount or toAmount, not both.
-
Amount the customer receives from the quote response. Provide either toAmount or fromAmount, not both.
-
Currency the customer sends or pays with.
-
Quote reference returned by /api/v1/conversions/quote.
-
Currency the customer receives.
POST
/api/v1/conversions/quote/confirm
curl \
--request POST 'https://api.staging.lumepay.com/api/v1/conversions/quote/confirm' \
--header "Content-Type: application/json" \
--header "X-API-KEY: string" \
--header "X-API-SECRET: string" \
--data '"{\n \"fromAmount\": 1850,\n \"fromCurrency\": \"ZAR\",\n \"toCurrency\": \"USD\",\n \"quoteStr\": \"rfq_quote_7K9Q2M\"\n}"'
Request examples
Confirm using fromAmount
Confirm by send amount
{
"fromAmount": 1850,
"fromCurrency": "ZAR",
"toCurrency": "USD",
"quoteStr": "rfq_quote_7K9Q2M"
}
Confirm by receive amount
{
"toAmount": 100,
"fromCurrency": "ZAR",
"toCurrency": "USD",
"quoteStr": "rfq_quote_7K9Q2M"
}
Response examples (200)
Confirmed conversion by send amount
{
"fromCurrency": "ZAR",
"toCurrency": "USD",
"fromAmount": 1850,
"toAmount": 100,
"rate": 0.0541,
"isRateInverted": false,
"status": "COMPLETED",
"transactionId": "TID4J7K2N",
"createdAt": "2026-05-11T10:15:30Z",
"completedAt": "2026-05-11T10:15:35"
}
Response examples (400)
{
"httpStatus": 400,
"requestId": "req_01HY0000000000000000000000",
"message": "Request validation failed",
"code": 400,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}
Response examples (429)
{
"error": "rate_limit_exceeded",
"message": "API rate limit exceeded"
}
Response examples (403)
{
"httpStatus": 403,
"requestId": "req_01HY0000000000000000000000",
"message": "Authenticated API key is not allowed to perform this action",
"code": 403,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}
Response examples (500)
{
"httpStatus": 500,
"requestId": "req_01HY0000000000000000000000",
"message": "Unexpected server error",
"code": 500,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}
Response examples (401)
{
"httpStatus": 401,
"requestId": "req_01HY0000000000000000000000",
"message": "API key authentication failed",
"code": 401,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}