Engineering

Multi-Chain Support: Accept Payments from Any Blockchain

Deep dive into how we built our multi-chain infrastructure to support payments from Ethereum, Solana, Base, and more.

Multi-Chain Support: Accept Payments from Any Blockchain

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!