FX quotes

Every request goes to https://api.lemak.cash. About the reference.

Fx quote

GET /v1/fx/quotes

The indicative effective rate and the estimated settlement amount. Indicative only. The rate that a payment uses is fixed by the merchant lock point.

Authentication

Bearer key. The merchant API key, sk_live_ or sk_test_. It reaches /v1 alone. A test key works from the moment the merchant exists. A live key answers 403 live_not_enabled until the merchant's review opens live mode, before any rate limit is spent.

Parameters

NameInTypeDescription
Api-Version optionalheaderstringThe version this request is answered at. Absent, the account's pinned version applies, and an account is pinned to info.version on its first request. A version this service does not render is refused with 400 invalid_api_version. api/CHANGELOG.md lists every version. Pattern ^[0-9]{4}-[0-9]{2}-[0-9]{2}$.
from requiredquerystringPattern ^[A-Z]{3}$.
to requiredquerystringPattern ^[A-Z]{3}$.
payment_method optionalquerystring
amount optionalqueryinteger (int64)Minor units of the from currency. Minimum 0.

Responses

200

The indicative quote.

application/json

FxQuote

FieldTypeDescription
indicative requiredtrue
from requiredstringPattern ^[A-Z]{3}$.
to requiredstringPattern ^[A-Z]{3}$.
rate requiredstringThe effective rate, mid rate plus the spread, as a decimal string.
estimated optionalMoney
Fields of estimated
FieldTypeDescription
amount requiredinteger (int64)Minor units. Never a decimal.
currency requiredstringPattern ^[A-Z]{3}$.

Errors

Every error answers with the error object.

StatusWhen
Other400 bad parameter, 401 authentication, 402 payment failed, 403 forbidden, 404 not found, 409 conflict, 413 request_too_large (a body over 64 KiB), 422 idempotency key reused, 429 rate limited, 5xx api error.

Example

curl "https://api.lemak.cash/v1/fx/quotes?from=PHP&to=USD" \
  -H "Authorization: Bearer sk_test_..." \
  -H "Api-Version: 2026-09-01"