Crypto Wallet
Customer account is required. See onboarding customer for more information.
1. Create a wallet
curl --request POST \
--url https://api.sandbox.keyrails.com/api/v1/wallets \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}' \
--data '{
"customerId": "f3675f2e-da61-42e9-a9db-eef8bd4fb4e2",
"network": "ethereum"
}'
Response:
{
"id": "34e11fcd-76db-475d-994b-1a3e418e3315",
"createdAtUtc": "2025-05-28T09:56:31.00619+00:00",
"status": "Active",
"customerId": "3f030323-92e5-492d-8fff-666fa3496d8a",
"network": "ethereum"
}
2. Get wallet address
curl --request GET \
--url https://api.sandbox.keyrails.com/api/v1/wallets/{walletId} \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'
Response
{
"id": "34e11fcd-76db-475d-994b-1a3e418e3315",
"createdAtUtc": "2025-05-28T09:56:31.00619+00:00",
"status": "Active",
"customerId": "3f030323-92e5-492d-8fff-666fa3496d8a",
"cryptoDepositInstructions": [
{
"currency": "USDT",
"network": "ethereum",
"address": "0x52970a97ba9d475d70e30a2dfe39bfebd82a9d0b"
},
{
"currency": "USDC",
"network": "ethereum",
"address": "0x52970a97ba9d475d70e30a2dfe39bfebd82a9d0b"
}
]
}
3. Initiate Crypto withdrawal
curl --request POST \
--url https://api.sandbox.keyrails.com/api/v1/transfer \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}' \
--data '{
"amount": 100.00,
"source": {
"currency": "USDC",
"network": "ethereum",
"walletId": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
},
"destination": {
"currency": "USDC",
"network": "ethereum",
"toAddress": "0x4d0280da2f2fDA5103914bCc5aad114743152A9c"
}
}'
Response:
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
}
Updated about 1 month ago
What’s Next