Galliun MVP supports Sui and Solana only. New chains follow a consistent pattern across API verification, SDK wallet modules, and platform payment rails.

SDK side

  1. Create a wallet module at packages/sdk/src/chains/<chain>/
  2. Implement PaymentWalletAdapter with address() and pay() — the pay() method must execute an atomic direct split (all legs in one transaction)
  3. Export a factory function from packages/sdk/src/index.ts
  4. Update SDK docs in apps/docs and engineering docs in docs/supported-chains.md

Platform side

  1. Create API verification adapter at apps/api/src/payments/adapters/<chain>.ts
  2. Add chain to SUPPORTED_CHAINS in @galliun/shared
  3. Configure payment rails (RPC, network, provider recipient, platform fee recipient, USDC asset, decimals)
  4. Register adapter in apps/api/src/bootstrap.ts
  5. Update .cursor/rules/supported-chains-source-of-truth.mdc and docs/supported-chains.md

Payment config requirements

Each chain needs:

Verifier expectations

Replay protection

All chains use the shared Convex claimPayment flow. Chain adapters verify on-chain only — never bypass replay checks.

Do not

Removed chains

EVM/Base adapters, the finance worker, and custodial treasury flows were removed. See Base / EVM (removed).

Next steps