Quickstart
This guide will get you started with the Crypto Deposits Platform API in under 5 minutes. You will learn how to authenticate, create a deposit address, and accept your first cryptocurrency payment.
Before you can make requests to the API, you need an API key. Contact your organization administrator to get your credentials and API key.
Step 1: Authenticate
The API supports two authentication methods. For server-to-server integration, use API key authentication.
# Test your API key
curl https://api.coinspayd.io/chains \
-H "x-api-key: your-api-key-here"
Step 2: Get supported chains
Before creating deposit addresses, check which blockchain networks are available.
curl https://api.coinspayd.io/chains \
-H "x-api-key: your-api-key-here"
Response:
{
"chains": [
{
"id": "eip155:1",
"name": "Ethereum",
"enabled": true,
"isTestnet": false
},
{
"id": "eip155:137",
"name": "Polygon",
"enabled": true,
"isTestnet": false
}
// ... more chains
]
}
Step 3: Get supported tokens
Check which tokens are available on your chosen chain (e.g., USDC on Ethereum).
curl -G https://api.coinspayd.io/tokens \
-H "x-api-key: your-api-key-here" \
-d chainId=eip155:1
Response:
{
"tokens": [
{
"id": "eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"symbol": "USDC",
"decimals": 6,
"address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
}
// ... more tokens
]
}
Step 4: Create a deposit address
Generate a unique deposit address for a user to receive USDC on Ethereum.
curl -G https://api.coinspayd.io/payments/deposit-address \
-H "x-api-key: your-api-key-here" \
-d chainId=eip155:1 \
-d tokenId=eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 \
-d userId=customer_123
Response:
{
"address": {
"chainId": "eip155:1",
"externalUserId": "customer_123",
"properties": {
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb7"
},
"createdAt": "2025-01-30T10:00:00.000Z"
}
}
Show this address to your user so they can send USDC to it. Deposits will be automatically detected and credited to their account.
Step 5: Monitor deposits
Check for incoming deposits for your user.
curl https://api.coinspayd.io/payments/customer_123/deposits \
-H "x-api-key: your-api-key-here"
Response:
{
"deposits": [
{
"txnHash": "0x1234567890abcdef...",
"amount": "100000000",
"Token": {
"symbol": "USDC",
"decimals": 6
},
"createdAt": "2025-01-30T10:05:00.000Z"
}
]
}
What's next?
Great! You have created a deposit address and can now accept cryptocurrency payments. Here are some next steps:
Common use cases
Accept Bitcoin deposits
# Get Bitcoin deposit address
curl -G https://api.coinspayd.io/payments/deposit-address \
-H "x-api-key: your-api-key-here" \
-d chainId=bip122:000000000019d6689c085ae165831e93 \
-d tokenId=bip122:000000000019d6689c085ae165831e93/slip44:0 \
-d userId=customer_123
Accept USDT on Tron
# Get Tron USDT deposit address
curl -G https://api.coinspayd.io/payments/deposit-address \
-H "x-api-key: your-api-key-here" \
-d chainId=tron:0x00000000000000000000000000000000 \
-d tokenId=tron:0x00000000000000000000000000000000/trc20:TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t \
-d userId=customer_123
Accept XRP with destination tag
# Get XRP deposit address (includes destination tag)
curl -G https://api.coinspayd.io/payments/deposit-address \
-H "x-api-key: your-api-key-here" \
-d chainId=xrpl:mainnet \
-d tokenId=xrpl:mainnet/slip44:144 \
-d userId=customer_123
# Response includes destinationTag:
# {
# "address": {
# "properties": {
# "address": "rN7n7otQDd6FczFgLdlqtyMVrn3HMtthca",
# "destinationTag": "12345"
# }
# }
# }
Need help?
- API Reference: Browse all endpoints in the sidebar
- Chains & Tokens: See all supported networks in the Reference section
- Webhooks: Set up real-time notifications for deposits
- Errors: Understand error codes and how to handle them