coal
coal

Pricing

Coal is a payment rail. We charge a percentage of every settled payment on Base. Funds never enter a Coal-controlled wallet at any point. The percentage is taken on-chain via an immutable 0xSplits contract that ships per merchant.


Three tiers

Free (Open Beta)

Coal fee: 0% on every settled payment.

Active right now. Every merchant who signs up during open beta is on this tier by default. When public beta ends, the Coal tier turns on and we give every Free merchant at least 14 days written notice before any fee applies to their account.

If you sign up today, you stay at 0% until then.

Coal (Standard)

Coal fee: 5% per settled payment.

Applies to all payments, both human checkouts and agent-paid API calls. The fee is enforced by a per-merchant immutable split contract on Base. 95% routes directly to your wallet, 5% routes to the Coal fee recipient. Neither party can change the split after deployment, including us.

Coal Design Partner

Coal fee: 0% indefinitely.

For the first 10 merchants who help shape the product. Locked at 0% even after public beta ends. By invitation only. If you have an existing API with real agent traffic and want to be one of them, email emmanuel@schemalabs.xyz.

Currently filled: 1 of 10.


$0.05 per call.

At the standard 5% fee, a $0.05 call earns Coal $0.0025 in revenue. Settlement gas on Base is roughly $0.003 per payment. Below $0.05, every call costs more in gas than the fee covers, and the operator wallet ends up subsidizing the difference. Until batched settlements ship, the $0.05 floor keeps the unit economics sane.

You can price above $0.05 freely. Sub-cent pricing is on the roadmap once we ship batching.


What you do not pay for

Signup$0
Per-merchant split contract deployment$0 (Coal pays the gas)
Console access$0
API calls to Coal endpoints$0
Monthly subscription$0
Webhook deliveries$0
Receipt verification at /verify/[id]$0

The only money that moves is the per-settled-payment percentage on the Coal tier, taken on-chain.


How payouts reach you

Funds land in your wallet on Base in USDC, within seconds of an agent paying. Coal never touches the funds. The split contract enforces the routing at the EVM level.

If you want fiat in a bank account, you connect your Base wallet to your off-ramp of choice (Coinbase, Bridge, Transak, regional providers for SEA) and convert from there. Coal does not provide an on/off ramp.


How fees change

If we ever change the standard fee after a merchant has signed up on the Coal tier:

  1. 14 days written notice via email.
  2. The change applies only to future payments. Historical payments stay at the rate that was in effect when they settled.
  3. Your existing split contract is immutable, so a fee change means a new split contract is deployed for new payments. Old contract still receives and distributes any pending balances unchanged.

Comparison

PlatformTake rateCustodyKYC required
Stripe2.9% + $0.30CustodialYes (merchant + payer)
RapidAPI~20%CustodialYes
Coal5% (0% for design partners)Non-custodialNo (merchant supplies own wallet)

Questions

Does the fee apply to human checkout payments too?

Yes. The percentage applies to every settled payment regardless of payer type. Same split contract handles both flows.

What if I want a custom contract or split structure?

Custom contracts are on the roadmap. Right now every merchant gets the same 0xSplits PushSplit deployment with a 95/5 allocation.

Can I see the split contract before agents start paying me?

Yes. The contract address shows up in your console under Settings as soon as it's deployed, before any payment lands. You can read it from chain via the standard ERC interfaces.

What if Coal disappears?

The split contract is owned by 0x0 and operates independently of Coal's servers. Even if Coal shuts down, you call distribute() on the contract from any Ethereum client and the USDC routes to your address per the immutable allocation. No funds are at Coal's discretion.