surstrom documentation
surstrom is a payment routing platform that connects Clients (merchants who need to accept payments) with Relays (operators who process payments).
How It Works
- Client creates a payment via API with amount, currency, and external ID
- surstrom selects the best available Relay from the payment pool using LRU routing
- The payment is processed through the Relay's provider (e.g. Stripe)
- On success, Solana settlement is sent from the Relay's reserve to the Client's wallet
- The Relay earns the fee on every completed payment — the difference between their configured fee and the provider + settlement costs. The Client receives the remainder
Two Roles
Every user is either a Relay or a Client. The role is chosen at signup and cannot be changed.
Architecture
Payment Flowtext
Client (API) → surstrom → Payment Pool → Relay provider → Settlement (Solana) → Client- Payment Pool — Relays join a shared pool to receive payments. Routing uses LRU (Least Recently Used) to distribute load evenly.
- Settlement — After a successful payment, settlement is sent from the Relay's wallet to the Client's wallet on Solana. The Relay earns the fee margin — the difference between their fee and the Solana transaction cost.
- SDK — A JavaScript snippet that Relays embed on their standalone pages. It mounts the payment form and reports payment status back.
- Encryption — All sensitive data (API keys, card details, wallet keys) is encrypted at rest using AES-256-GCM.
- 2FA — TOTP-based two-factor authentication is required for withdrawals.
Roles
Relay
Relays process payments for Clients and earn a fee on every completed transaction. They:
- Connect payment providers with restricted API keys
- Set their own fee percentage per provider (typical range: 5–10%)
- Configure routing rules (min/max amounts, daily limits, country blocking)
- Install the SDK on their standalone pages
- Join the payment pool to receive routed payments
- Earn the fee margin on every completed payment — the difference between the Relay's fee and the provider + settlement costs
For example, on a $100 payment with a 7% Relay fee and Stripe at 2.9% + $0.30: the Relay earns $7.00, pays $3.20 to Stripe, and nets ~$3.80 profit. The Client receives $93.00 via Solana settlement.
Client
Clients are merchants who accept payments. They:
- Generate an API key from the dashboard
- Create payments via
POST /api/payment/init - Embed the returned
relayPageURL on their site - Receive Solana settlements for their share of completed payments
- 1% of each payout is frozen for 45 days in case of a dispute
Next Steps
- Quick Start — Get set up in minutes
- Relay Documentation — Full guide for Relays
- Client Documentation — Full guide for Clients
- Error Codes — Complete error reference