In-store payments at every till.
Give each till its own terminal, organised by branch. Customers scan and pay from any wallet, and the people you choose hear about it on WhatsApp or email.
Non-custodial payments and treasury
Accept stablecoins at every till, invoice and checkout. Route each payment to the bank or treasury you choose, with approvals, reporting and intelligence built in. Non-custodial by design.
0.8% to collectNo setup feeSettle to accounts you own
At a glance
An address for every payment, 4 markets to settle in, nothing held on your behalf and one rate to collect.
1
Each checkout, invoice and payment link payment arrives on an address of its own, so it reconciles to exactly one record.
4
NigeriaGhanaKenyaSouth Africa
0
Non-custodial by design. Funds route from a dedicated address to accounts you own.
0.8%
No setup fee. Moving stablecoins to wallets you own costs nothing.
01 The console
Collections, payouts, approvals and reporting in one console. Watch every till, invoice and checkout settle the moment it happens, across every branch you run.
Live Sunday 11 October
Good morning, Amaka
₦312.4M collected all time · 1,284 customers
Live payments Live
Collections
By channel Last 30 days
Illustrative. Harbourview Markets Ltd is a sample business, not a customer.
The sidebar works: each item takes you to that product below.
Terminals, invoices, payment links and checkout in a single live view, each payment matched to its record.
Require a second person for the decisions that matter. Switching a control on takes one click; switching it off takes a colleague.
Owner, Admin, Treasurer, Operator, Analyst and Auditor, with any single power withheld from a member when you need to.
Monthly or tax-year statements as PDF or Excel, and every payment as a CSV with its reference and transaction hash.
02 Get paid
In store, on an invoice, through a link or inside your own product. Four ways to collect, and one set of rules for where every payment settles.
Give each till its own terminal, organised by branch. Customers scan and pay from any wallet, and the people you choose hear about it on WhatsApp or email.
Send an invoice your customer settles in stablecoins and track it to paid, part payments included. Overpayments become credit on the next invoice.
Create a link once and share it anywhere, from WhatsApp to your storefront. Every payment through it settles to your account.
Create a checkout session from your server and send your customer to it. Your systems hear the result through signed webhooks.
Screens show sample data for Harbourview Markets Ltd, a fictional Lagos supermarket chain. Illustrative only.
03 How money moves
Every transaction is routed per your preference. A payment arrives at an address created for it alone, then moves straight on to the bank or treasury you own. No pooled balance, and no float held by us.
One payment, start to finish Illustrative
Your customer
Pays invoice INV-1041
1,475.66 USDT on Polygon
Sent from any wallet or exchange
One-time address
0x7f3a…c21e
Created for this payment and nothing else
Seen and confirmed on the network
Your account
Naira account ending 4521
In naira, to an account in your business’s name
Settled to you
No ChainPal balance in between. Nothing waits with us.
How payouts workEach checkout, invoice and payment link payment gets an address of its own, so every payment arrives already matched to its record.
Your bank account in local currency, or a treasury Safe your business controls with its own passkeys.
Send till takings to one account and invoice payments to another. Change one route without touching the rest.
04 Move money
Route payouts per product, keep a treasury your team controls, pay contractors across borders and price large conversions with a desk that trades with you directly.
Point each product at its own destination: naira to your bank, stablecoins to your treasury or to a wallet you hold. ChainPal reviews every destination before money can reach it.
A Safe owned by your business’s passkeys, with no seed phrase and no key held by ChainPal. A colleague approves every withdrawal before a passkey signs it, and ChainPal pays the gas.
Pay every contractor in one run, in stablecoins, to their bank or by mobile money. Contractors add their own payout details, and the run is approved before it moves.
ChainPal is your counterparty. Smaller trades are priced instantly and the quote is firm for 10 minutes. Larger trades are priced by a dealer and the quote is firm for 30.
Screens show sample data. Illustrative only.
05 Solutions
Whether you run tills across a city, close the books for a group or build payments into your own product, ChainPal fits the way your money already moves.
Give each till a terminal, watch takings land by branch and settle them to the account you choose.
Every payment arrives matched to its invoice, till or link, and every withdrawal waits for a colleague’s approval.
Create checkout sessions from your server, hear back through signed webhooks and build safely against testnets.
06 Developers
Create a hosted checkout from your server with a publishable key, send your customer to the page it returns, then verify the payment with your secret key. The checkout handles the coin, the network and the one-time address.
payment.received, payment.completed and payment.failed, signed with HMAC-SHA256 in X-ChainPal-Signature and retried up to 7 times over about 31 hours.curl -X POST https://api.chainpal.org/api/v1/payments \
-H "Authorization: Bearer cp_pk_test_..." \
-H "Content-Type: application/json" \
-d '{
"amount": 125000,
"customerEmail": "chidi.okafor@mail.example",
"reference": "ORDER10482",
"callbackURL": "https://harbourview.example/paid",
"failureURL": "https://harbourview.example/retry",
"metadata": { "branch": "lekki" }
}'
200Response
{
"success": true,
"message": "payment initialized successfully",
"data": {
"paymentId": "...",
"paymentURL": "https://pay.chainpal.org/c/..."
}
}
GET /api/v1/payments/:paymentId/verifyReady to verify with your secret key07 Intelligence
Aria reads across your payments, tills and invoices and answers in plain language. Every figure links to the records behind it, and when there is no source, Aria says so instead of guessing.
Which till took the most last month?
Lekki branch, till 2 took the most in September: ₦2,486,300.00 from 46 payments, ahead of Ikeja branch, till 1.
And card sales at Lekki?
I can’t tell you that. Card sales don’t come through ChainPal, so I have no records to work from, and I won’t guess a figure.
No source, so no numberPayments at Lekki till 2, September
| When | Coin | Amount |
|---|---|---|
| Wed 30 Sep, 18:42 | USDT · Polygon | ₦61,597.13 |
| Wed 30 Sep, 17:10 | USDC · Base | ₦18,450.00 |
| Tue 29 Sep, 12:31 | USDT · Celo | ₦42,900.00 |
| Sun 27 Sep, 19:05 | USDT · BNB Chain | ₦6,200.00 |
| Sat 26 Sep, 13:48 | USDC · Celo | ₦11,350.00 |
and 41 more payments
Lekki branch, till 2
Takings per terminal, September
Sample conversation with illustrative records.
08 Security and control
Security starts with what we never hold. Everything else is designed so that your people, not ChainPal, decide where money goes and who can move it.
Your treasury is a Safe owned by your business’s passkeys: no seed phrase, and ChainPal never holds a key. Every withdrawal is requested, approved by a colleague who is never the requester, then signed with a passkey. ChainPal’s relayer submits it and pays the gas.
Each checkout, invoice and payment link payment gets its own address, so funds never pool and every payment traces to one record.
Choose where each product settles. Only payout accounts that have passed review can receive funds.
Every business completes verification (KYB) before it can take payments on ChainPal.
Separate keys, testnet coins and test terminals. Nothing done in test mode can touch live money.
Owner, Admin, Treasurer, Operator, Analyst and Auditor. Withhold any single power from a member, and auditor access ends on the date you set.
Require a colleague for treasury, withdrawals and team changes. Switching a policy off needs a colleague’s agreement too.
Protect every login with an authenticator app.
A business with a single controller waits 24 hours before a new payout destination can be used.
09 Coverage
Customers pay in USDC and USDT on the network they already use. You settle in local currency in Nigeria, Ghana, Kenya and South Africa, to an account in your business’s name.
4 networks
Every checkout and terminal shows customers exactly which networks it accepts, so payments arrive on the right one.
4 markets
Bank payouts settle in local currency, to an account in your business’s name. In every market, stablecoins can also settle to your treasury or a wallet you hold, at 0%.
USDC and USDT, both directions
ChainPal is the counterparty on every trade. Instant quotes are firm for 10 minutes and dealer-priced quotes for 30. Access is by application, once your business is verified.
10 Pricing
Transparent pricing on every product, with no setup fee and no charge for moving stablecoins to wallets you own.
11 Questions
Anything else, write to help@chainpal.org and a person will answer.
No. ChainPal is non-custodial. Each payment lands on an address created for it and moves straight on to the destination you set for that product: your bank in local currency, or a treasury Safe your business controls.
USDC and USDT, on Base, BNB Chain, Celo and Polygon. Which of them your customers can use depends on your market, and every checkout and terminal shows exactly which networks it accepts. More networks are on the way.
Bank payouts settle in local currency in Nigeria, Ghana, Kenya and South Africa (NGN, GHS, KES and ZAR), to an account in your business’s name. Stablecoins can also settle to your treasury or a wallet you hold. Each product can settle to a different destination.
Each till gets its own terminal, named by branch and till. Print its poster, and customers scan and pay from any wallet or exchange app. The people you choose are told by email or WhatsApp, and takings settle to the account you set for Terminals.
ChainPal is the counterparty, so you ask us for a price. Smaller trades are priced instantly and the quote is firm for 10 minutes; larger trades are priced by a dealer and the quote is firm for 30 minutes. The desk trades USDC and USDT against NGN, KES, GHS, ZAR and USD, in both directions.
Your treasury is a Safe owned by your business’s passkeys, with no seed phrase. A withdrawal is requested, approved by a colleague (never the person who asked for it), then signed with a passkey, and ChainPal’s relayer submits it and pays the gas. Extra passkeys are there for recovery.
Yes. Test mode has its own keys and runs on Base Sepolia and Celo Sepolia, test terminals watch testnets only, and test payments settle to wallets, never to a bank. Nothing you do in test mode touches live money.
It says so. Every figure Aria gives links to the records it came from. If something is not in your ChainPal records, such as card sales, Aria tells you rather than guessing.
Open for business
Open an account, choose where each product settles and take your first payment in digital dollars. No setup fee, and no balance held on your behalf.