Overview
A transfer moves a stablecoin from one customer to another, or from a customer to an external wallet. Use any supported stablecoin and supported blockchain configured for your account.Prerequisites
Before initiating a transfer:- Verified Sender (Customer) — Customer must be KYC-approved (see onboarding).
- Sufficient Balance — The sender must hold enough of the selected stablecoin.
- Valid Recipient — Provide either a Lumx
customerId
or a validexternal wallet address (per the selected stablecoin/blockchain).
Transaction Overview
1
Initiate Transfer
Create the transfer with currency, amount, and recipient
(customerId or wallet address).
2
Balance and Recipient Verification
We verify if the sender has enough balance and perform compliance checks on
the recipient’s wallet.
3
Stablecoin Transfer
The target stablecoin is sent to the recipient’s wallet.
4
Balance Updates
Sender is debited and recipient is credited; history is updated.
Creating a Transfer
Transfer to another customer
Request
Transfer to an external wallet
Request
Parameter | Type | Required | Description |
---|---|---|---|
currency | string | Yes | Asset code (e.g., USDC , USDT , or another supported token) |
from | string | Yes | Sender’s customerId |
to | string | Yes | Recipient customerId or external wallet address |
amount | string | Yes | Transfer amount (supports up to 6 decimals, e.g., "1000.123456" ) |
Response
Field | Description | Present when |
---|---|---|
id | Unique transaction identifier | all statuses |
customerId | Originating (sender) customer identifier | all statuses |
state.status | processing | success | failed | all statuses |
state.blockchain.transactionHash | On-chain transaction hash | success |
state.blockchain.blockExplorerUrl | Link to view the on-chain transaction | success |
state.error | Error details (if any) | failed |
Transfer states
Field | Description |
---|---|
processing | The transfer is being processed on-chain |
success | Transfer confirmed on-chain; balances updated. |
failed | Transfer failed (e.g., insufficient funds or invalid address) |
Transaction Monitoring
Once we receive the deposit for your transaction, we will move the funds to the destination. You can use the API to check the state of the transaction or listen to webhooks.Next steps
- Learn about Exchange Rates for guaranteed rates
- Configure Partner Fees for custom fee structures
- Explore On-ramp and Off-Ramp** **Transactions to convert between stablecoins and fiat