Method Signature
align.crossChain.createTransfer(
customerId: string,
data: CreateCrossChainTransferRequest
): Promise<CrossChainTransfer>
Parameters
The unique customer identifier (UUID format)
Source blockchain: ethereum, polygon, base, arbitrum, solana, tron
source_token
'usdc' | 'usdt' | 'eurc'
required
Token to transfer
destination_token
'usdc' | 'usdt' | 'eurc'
required
Token to receive (usually same as source)
Wallet address on destination chain
Example
import Align from "@tolbel/align";
const align = new Align({
apiKey: process.env.ALIGN_API_KEY!,
environment: "sandbox",
});
// Transfer USDC from Ethereum to Polygon
const transfer = await align.crossChain.createTransfer(customerId, {
source_network: "ethereum",
source_token: "usdc",
destination_network: "polygon",
destination_token: "usdc",
amount: "100.00",
destination_address: "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
});
console.log(`Transfer ID: ${transfer.id}`);
console.log(`Status: ${transfer.status}`);
const transfer = await align.crossChain.createTransfer(customerId, {
source_network: "ethereum",
source_token: "usdc",
destination_network: "polygon",
destination_token: "usdc",
amount: "100.00",
destination_address: "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
});
console.log("Transfer ID:", transfer.id);
Supported Routes
| Source | Destination | Tokens |
|---|
| Ethereum | Polygon, Base, Arbitrum | USDC, USDT |
| Polygon | Ethereum, Base, Arbitrum | USDC, USDT, EURC |
| Base | Ethereum, Polygon, Arbitrum | USDC |
| Arbitrum | Ethereum, Polygon, Base | USDC |
| Solana | Ethereum, Polygon | USDC |
Cross-chain transfers typically complete within 10-30 minutes depending on
network congestion.