What it does
Receives
Both rails settle into it. It accumulates rather than forwarding each payment individually.
Splits
On distribution, it takes the fee and credits the rest to you — at a rate fixed when it was created and capped in contract code at 2.5%.
Pays out
Each party claims their credited share to their own address.
Why accumulate rather than forward
Splitting every payment on arrival would mean three transfers per order. On a €20 order on Ethereum, those fees can exceed the order. Accumulating means one payout transaction covers however many orders you batch into it. You choose the cadence: after every order, daily, weekly, or when the balance justifies it.Deploying it
One transaction per chain, signed by you.Pick a chain
In Pool, choose from your enabled chains.
Review the estimate
A live network-fee estimate is shown before you sign. On Ethereum and TRON, waiting for a quieter period can cut it substantially.
Sign
We prepare the transaction; you broadcast it. That’s what makes the contract yours rather than ours.
Your pool has the same address on all seven EVM chains. One address to whitelist with a custodian, one to reconcile against, one to hand your accountant.
Making deployment a prerequisite for API keys and the embed snippet is coming. Today you can integrate first — but the wallet-payment option only appears on chains where your pool exists. Roadmap.
Why you pay for it
It’s a fair question — a custodial processor doesn’t charge you to open an account. Two reasons, and both benefit you:Signing it is what makes it yours
Signing it is what makes it yours
A contract we deployed and paid for would be a contract we could plausibly claim some control over. You signing it removes that ambiguity entirely.
It keeps the platform honest about cost
It keeps the platform honest about cost
We can’t quietly absorb infrastructure costs and recover them through hidden spread or delayed payouts, because the costs that are yours are visible and the fee is a published flat rate.
What can and can’t change
Before it’s deployed
The address exists as a computation before any contract does, which produces one useful asymmetry:Deposit rail works pre-deploy
A sweep into an undeployed pool is a plain transfer. The funds sit at the address and become claimable the moment the pool is deployed.
Connect rail does not
deposit() is a contract call and fails against an address with no code. The connect rail is hidden on chains where you haven’t deployed.Reading it yourself
Your pool is a public contract. On any block explorer you can callrecipient() and confirm it returns your address — and confirm there’s no function that would let anyone change it.
On-chain verification
How your customers’ browsers check this automatically.