Routing Rules

Routing rules control which payments get routed to your provider. Configure these on the provider settings page.

Amount Limits

SettingDescriptionDefault
MinimumLowest payment amount accepted$9
MaximumHighest payment amount accepted$200
Daily LimitMaximum total volume per day$1,000

Payments outside your min/max range will not be routed to your provider. When your daily volume reaches the limit, your provider is temporarily excluded from routing until the next day.

Fee Percentage

The fee percentage determines your earnings per payment. This is the percentage of each payment that is your revenue.

Example for a $100 payment with 7% relay fee:

  • Payment: $100.00
  • Your fee: $7.00 (7%)
  • Static fee: $0.30 (passed through to cover provider fixed costs)
  • Client receives: $92.70 ($100 - $7.00 - $0.30)
  • Settlement: $92.75 sent from your wallet to the Client's wallet on Solana
  • Your net profit: $7.00 minus provider percentage fee and settlement costs

The fee must be competitive enough that Clients choose to route payments through your provider. Higher fees mean fewer payments.

Country Blocking (Excluded BINs)

You can block payments from specific countries by entering ISO 3166-1 alpha-2 country codes (e.g., US, GB, DE).

When a country is blocked:

  • Cards issued in that country are rejected at the payment form level
  • The customer sees a "Your card was declined. Please try a different payment method." message

Currency

All payments are processed in the Relay's native currency to minimize provider conversion fees and exchange rate markups. When a Client creates a payment in a different currency (e.g., USD), surstrom converts the amount at the platform level and passes the converted sum to the provider in the Relay's native currency.

This approach reduces volatility risk for non-USD Relays, avoids inflated provider exchange rates, and keeps conversion costs lower than letting the provider handle currency conversion directly.

Rejected Clients

You can block specific Client IDs from being routed to your provider. Blocked clients will never have payments routed to your provider. The block option is available on the Client's profile page, which becomes accessible after at least one transaction between your Relay and that Client.

How Matching Works

When a Client creates a payment, surstrom finds providers matching these criteria:

  1. Provider is in the pool (inPool: true)
  2. Payment amount is within min/max range
  3. Client's maxFee is >= provider's fee percentage
  4. Provider's daily volume hasn't exceeded the daily limit
  5. Client is not in the provider's rejected list
  6. Provider has sufficient wallet balance to cover the settlement
  7. SDK verification passes

Providers are sorted by Least Recently Used (LRU) — the provider that received a payment longest ago gets priority. This distributes payments evenly across all available providers. The Relay's fee percentage is not a factor in matching priority — if multiple providers have a fee below the Client's maxFee, they all have equal probability of receiving the payment regardless of their individual fee.