Why Multi-Chain Matters
Different customers prefer different chains. BSC users value low fees. Ethereum users value ecosystem trust. Polygon users value speed with Ethereum security. Supporting all three doubles your potential customer base.
How Paychainly Models Networks
Each chain is a row in the networks table with its own RPC pool, USDT contract address, and sweep wallet. The networkId field flows through every job — from block discovery to sweep.
-- networks table
id | chainId | name | rpcUrls | usdtContract
1 | 56 | BSC | [...bsc rpcs] | 0x55d...
2 | 1 | Ethereum | [...eth rpcs] | 0xdac...
3 | 137 | Polygon | [...poly rpcs] | 0x2791...
Creating a Multi-Chain Payment Link
POST /api/v1/payment-links
{
"amount": "50.00",
"networks": ["BSC", "ETH", "POLYGON"],
"description": "Invoice #1042"
}
The customer chooses their preferred chain at checkout.
Chain-Specific Fee Configs
Ethereum gas fees are higher than BSC. Use per-network fee configs:
// fee_configs table allows per-user, per-network overrides
{ network: 'ETH', feeFlat: 2.00, feePercent: 1.5 }
{ network: 'BSC', feeFlat: 0.60, feePercent: 1.0 }
{ network: 'POLYGON', feeFlat: 0.30, feePercent: 0.8 }
Gas Wallet per Chain
Each chain needs its own gas wallet funded with the native token (BNB, ETH, MATIC). Paychainly's system_wallets table holds one gas wallet per network.
Dashboard View
The dashboard aggregates transactions across all networks with a chain-filter dropdown so you can view BSC-only revenue or all-chain totals.