Forex exchange only works between settlement wallets. Both the source currency
and the target currency must have an active settlement wallet on your account.
If you haven’t collected in a currency yet, contact Kulmi Pay support to
provision that wallet.
Step 1: Get a quote
Before committing to an exchange, use theQUOTE action to see the current rate and how much you will receive. This does not move any money.
Send a POST request to /api/v1/wallets/{kes-wallet-id}/exchange/ with "action": "QUOTE":
| Field | Type | Required | Description |
|---|---|---|---|
currency | string | Yes | The target currency. One of KES, USD, EUR, GBP. Must differ from the source wallet’s currency. |
amount | string | Yes | The amount to exchange from the source wallet. |
action | string | Yes | Use QUOTE to preview the rate, or EXCHANGE to execute the trade. |
rate— the exchange rate applied (source currency per unit of target currency).fxe_amount— the amount you will receive in the target currency.currency— the target currency the funds will land in.
Step 2: Execute the exchange
Once you’re ready to proceed, send the same request with"action": "EXCHANGE". This debits the source wallet and credits the destination wallet at the current rate.
narrative is recorded in both wallet statements so you can trace the exchange in your transaction history.
If the source wallet does not have enough available_balance to cover the requested amount, the request returns an error and no funds are moved.