Skip to main content
Recurso is a production-grade billing engine you can actually own. It runs the whole commercial lifecycle — plan, subscribe, meter, bill, collect, recognize, and close — on one system, and every event posts balanced debits and credits to a real double-entry ledger, not a table of balances. So the story ends where finance actually lives: a month that provably balances. Self-host it under MIT, or run it on Recurso Cloud.

Quickstart

From clone to a seeded dashboard in under five minutes with make demo.

Usage-based billing

Billable metrics, seven charge models, batch ingestion, arrears rating.

API reference

Every endpoint, typed — with an interactive playground.

SDKs

Official Go, Node, and Python clients, versioned with the API.

What’s in the engine

Follow the lifecycle — meter, bill, collect, recognize, account, close — and every stage lives on the same system, ending in books that provably balance.

Meter anything, price it your way

Metrics aggregate events eight ways — count, sum, max, unique, percentile, and more. Seven charge models price them (per-unit, graduated, volume, package, percentage, graduated-percentage, dynamic), with sub-paise rates computed exactly and billed in arrears on the renewal invoice.

Wallets, commitments & alerts

Customers prepay into money wallets that settle invoices before any gateway is charged. Contract minimums true-up automatically; usage alerts fire once per period before a customer is surprised.

Collect & recover

Multi-gateway collection, dunning campaigns, smart retries, cancel flows, a collections worklist, and a self-service portal — recovered revenue is attributed and reported.

Books that balance

Every invoice, payment, refund, and wallet drain posts balanced debits and credits to an immutable ledger — with accrual revenue recognition, a trial balance, and month-end close on top.

India-first, global-ready

Native GST (CGST/SGST/IGST, HSN, Place of Supply), IRP e-invoicing, GSTR exports, RBI-compliant UPI AutoPay — plus multi-currency, EU VAT, and US sales tax on the same engine.

Developer-first

REST API with OpenAPI 3.1 served from your instance, typed SDKs, HMAC-signed webhooks with redelivery, and idempotency keys on every money-moving call.

How it compares

Get started

1

Clone and run

Brings up Postgres and TigerBeetle, the API on :8080, and a seeded dashboard on :5173 — with the demo API key sk_test_12345 printed when it’s ready.
2

Create a customer

3

Start a subscription

4

Record usage

Usage is aggregated by your billable metrics and rated onto the next renewal invoice — see how rating works.

Run the public demo yourself

One compose file serves a safe, hourly-resetting sandbox — mock gateways, guard middleware, auto-login.

Go to production

Hardening, backups, HA guidance, and the production checklist.

Migrate from Stripe or Chargebee

Bring plans, customers, and subscriptions across without double-billing.

Integrations

QuickBooks, Xero, Tally, TaxJar, HubSpot, S3 — and what “experimental” means for GoCardless, Adyen, NetSuite, and Avalara.