One of the most requested features from our early users was the ability to accept payments from multiple blockchains. Today, we're sharing how we built this.
The Challenge
Supporting multiple chains isn't just about connecting to different RPCs. Each blockchain has its own:
- Transaction format
- Confirmation times
- Gas/fee structures
- Smart contract standards
Our Approach
We built an abstraction layer that normalizes these differences while still providing the best experience on each chain.
Supported Chains
- Ethereum - The OG, still king for large payments
- Base - Low fees, fast confirmations
- Solana - Blazing fast for micropayments
- Arbitrum - Best of both worlds
- Polygon - Great for high-volume use cases
Technical Deep Dive
Our system uses a unified event model that maps chain-specific events to a common format. This allows merchants to have a single webhook endpoint regardless of which chain a payment comes from.
// Your webhook receives the same format regardless of chain
{
"event": "payment.confirmed",
"payment": {
"amount": "100.00",
"currency": "USDC",
"chain": "base",
"txHash": "0x...",
"confirmations": 12
}
}
What's Coming
We're actively working on adding support for:
- Avalanche
- Optimism
- zkSync
Let us know which chains you'd like to see next!

