Wave Côte d’Ivoire in production

Billing
for UEMOA
SaaS builders

The API-first subscription billing platform for West Africa. Your customers pay with Wave in Côte d’Ivoire, in XOF; Orange Money, MTN MoMo and Moov Money come next, on the same API.

PAYMENT METHODS
Wave
Orange Money soon
MTN MoMo soon
Moov Money soon
QBill api — test mode
$ node index.js
[qbill] @qbill/node · qb_test_sk_…
POST /v1/customers
name: "Boutique Awa"
201 Created
POST /v1/subscriptions
plan: "plan_pro"
billing_interval: "monthly"
201 Created
✓ webhook: subscription.created
✓ webhook: invoice.created
10
Pricing models
1 + 3
Operator live · 3 coming
22
Signed webhook events
FR · EN
Invoices and emails
FEATURES

Everything you need.
Nothing you don’t.

For UEMOA SaaS builders who want reliable billing without building their own payment infrastructure.

01
Mobile money native
Wave in Côte d’Ivoire, in XOF, on QBill’s account or on your own Wave account. Orange Money, MTN MoMo and Moov Money follow on the same API.
02
Ten pricing models
Flat rate, per seat, hybrid, metered, tiered, volume, stairstep, prepaid credits, one-time, installment — plus add-ons and overage.
03
Automatic reminders
Reminders on D+1, D+3 and D+7 (configurable), by email and webhook, with the payment link. At the last step the subscription goes past due or is cancelled, your choice.
04
Signed webhooks
22 events — invoice.paid, subscription.cancelled, usage.threshold_reached… — signed, retried up to 5 times on failure.
05
White-label customer portal
Your customers change plan, pause, cancel, download invoices and pay — magic-link sign-in, no password.
06
Revenue analytics
MRR, ARR, churn, ARPU, LTV, cohorts and forecast, computed for you. CSV export.
07
Node.js SDK
Typed, dependency-free, with verified webhooks and structured errors. More languages will follow; the REST API works from anywhere.
08
Automated invoicing
PDF invoices in French or English per customer, prorations, credit notes, VAT and a monthly VAT report.
09
Payment and sales links
A payment link for every invoice, and reusable sales links that create the customer, invoice and subscription on payment.
PRICING MODELS

Every way you
need to charge

One platform, ten models. Combine them on one plan: a flat base, usage beyond an included volume, one-time fees.

Flat rate
Available
A fixed price per period — the SaaS standard.
Per seat
Partial
Price × declared quantity, changeable with proration. No automatic counting of active users.
Hybrid
Available
A fixed base and a usage part on the same invoice.
Metered
Available
Pay as you go, measured through the API.
Tiered
Available
Each usage tier has its own unit price.
Volume
Available
The reached tier’s price applies to every unit.
Stairstep
Available
A fixed price per consumption bracket.
Prepaid credits
Available
A wallet topped up with Wave, drawn down by usage.
One-time
Available
Setup fees or licences, charged once at purchase.
Installment
Partial
An amount split into installments, one per period.
Add-ons
Available
Paid modules on a subscription, with quantity and proration.
Overage
Available
An included volume, then a per-unit rate beyond it.
FOR SAAS BUILDERS

You ship the product.
We handle the billing.

From your first customer to thousands of subscriptions, QBill handles billing so you don’t have to.

Developer or SaaS founder
Your first invoice in one afternoon
Charge your customers in XOF without building payment infrastructure. A test key, a few API calls, and your customers pay with Wave in Côte d’Ivoire.
✓Typed Node.js SDK, documented REST API
✓Signed webhooks — invoice.paid, subscription.cancelled…
✓Test mode — simulated Wave payment, no real money
✓Usage metering — API calls, SMS, storage…
✓White-label customer portal, no code
✓Analytics — MRR, churn and LTV computed
Create a free account →
Your customers
Their subscription, managed by them
No support ticket to change plan, pay an invoice or download it. You give them a clean portal, opened with a magic link.
✓Magic link — no password
✓Change plan or billing interval
✓Pay with Wave — more wallets soon
✓PDF invoices, usage tracking
✓Pause or cancel in one click
✓Invoices and receipts by email, in French or English
Reminders — so no payment slips away
A Wave payment fails? The customer gets a reminder on D+1, D+3 and D+7, each with the link to pay, and your system a webhook at every step. Wave asks the customer to approve: nothing is charged without them.
DEVELOPER FIRST

The billing API you
actually want to use

A typed SDK, verified webhooks, predictable errors, and a full test mode.

01
Live in minutes
A test key from the developer portal, and your first subscriptions are out.
02
Test mode built in
Test keys never reach Wave: a simulated payment page lets you pay or decline.
03
Typed webhooks
Every event has its TypeScript type; constructEvent() checks the signature.
04
Structured errors
Status, code, hint and request id: an error says what went wrong.
import { QBill } from '@qbill/node';
const qbill = new QBill(process.env.QBILL_SECRET_KEY!);
const customer = await qbill.customers.create({
name: 'Boutique Awa',
email: 'awa@example.com',
country: 'CI',
});
const sub = await qbill.subscriptions.create({
customer: customer.id,
plan: 'plan_id',
billing_interval: 'monthly',
});
PAYMENT METHODS

Wave is live in Côte d’Ivoire.
More wallets on the way

Collect with Wave today. Orange Money, MTN MoMo and Moov Money join the same API as they launch.

W
Wave
Côte d’Ivoire
Live
O
Orange Money
UEMOA
Coming soon
M
MTN MoMo
UEMOA
Coming soon
M
Moov Money
UEMOA
Coming soon
SECURITY & FUNDS

Your money stays yours.
Every franc accounted for.

Every collection, fee and withdrawal is written to your account’s ledger and reconciled with Wave. Every withdrawal is approved by a person before it leaves.

01
Two-factor required
For everyone who signs in to the portal: owner, teammates and QBill administrators.
02
Sensitive data encrypted
Phone numbers, Wave credentials, webhook secrets and verification details encrypted with AES-256-GCM.
03
Controlled withdrawals
A code sent to a security address separate from your sign-in email, then human approval before every Wave transfer.
04
A reconciled ledger
Collections, fees, withdrawals and refunds written per merchant, and reconciled with Wave transactions.
PRICING

Simple pricing,
in XOF

Start free in test mode. Change plan as you grow.

Loading prices…
Collection fees · Taken from each payment collected for you, never more than the payment.
Collected on QBill’s Wave account1.5% · min. 100 XOF
Collected on your own Wave account0%
Withdrawal to WaveNo QBill fee
FAQ

Questions, answered

Today: Wave in Côte d’Ivoire, in XOF. Orange Money, MTN MoMo and Moov Money, and more UEMOA countries, come next through the same API.
GET STARTED TODAY

The billing infrastructure
UEMOA was missing.

Free plan · Test mode with no real money · Go live when you are ready.

Already have an account? Sign in →