One platform
Everything that touches
revenue, on one system.
Eleven modules and one ledger. Nothing here syncs to anything else here, because there is no "else" for it to sync to.
Explore the platformThe platform
Grow the revenue you already have.
Eleven modules on one data model. A price change, an invoice, a payment and the MRR number are the same event seen from four places, which is why nothing here needs reconciling against anything else here.
Subscription · sub_9f3a21
- Plan
- Scale, annual
- Seats
- 48 → 62
- Change
- Prorated, 14 days
- Renews
- 01 Jan 2027
Subscription Management
Every subscription lifecycle, automated.
ExplorePrice book · USD
- Starter
- $49 / seat
- Scale
- $89 / seat
- Tier 2 usage
- $0.004 / call
- Version
- v4, live
Catalog & Pricing
Change pricing without a deploy.
ExploreQuote Q-2291 · accepted
- Subtotal
- $184,000.00
- Discount
- -$18,400.00
- Tax, 20%
- $33,120.00
- Invoice total
- $198,720.00
Quote-to-Cash
From the quote to the cash, on one system.
ExploreMeters, current cycle
Usage Billing
Meter anything. Bill it any way.
ExploreReceivables ageing · USD
- Current
- $412,880
- 1 to 30 days
- $86,140
- 31 to 60 days
- $21,505
- Over 60 days
- $4,270
Collections
Fewer overdue invoices, less manual chase.
ExploreAuthorisation rate by route
Six gateways, routed by region
Payments
Collect on every rail, everywhere.
ExploreRecovery by retry attempt
81% recovered by attempt six
Dunning
Recover failed payments on autopilot.
ExploreTimeline · cus_41d0b7
- Trial started
- 12 Mar
- Converted
- 26 Mar
- Upgraded
- 04 Jun
- Seats added
- 18 Jul
Customer Lifecycle
Every customer event, one timeline.
ExplorePlan: Scale
- batch_export Included
- sso_saml Included
- audit_api Enterprise
Entitlements
Plans decide what customers can do.
ExploreNet MRR movement
New, expansion, contraction, churn
Revenue Analytics
Know your numbers in real time.
ExploreConnected systems
- NetSuite Ledger sync, hourly
- Salesforce Two-way, live
- Snowflake Nightly export
Integrations
Connect your whole revenue stack.
ExploreEverything you need
on one platform
Eleven modules on one data model, one catalog and one ledger. A price change, an invoice, a payment and the MRR number are the same event seen from four places.
-
Quote-to-cash
CPQ, quotes, orders, invoices and credit notes on one record, so what you quoted is what you billed.
-
Payments
Route across gateways by region, store methods once, and reconcile every capture back to its invoice.
-
Collections
Receivables ageing, retry schedules and dunning sequences that close out the balance without a chase.
-
Developer API
REST, signed webhooks, idempotency keys and a sandbox with clocks you can advance.
Subscriptions, catalog, usage, entitlements, lifecycle and analytics sit alongside these four.
See all eleven modulesTry it
How do you charge?
Pick the shape of your pricing. This is the invoice Occurly produces for it, computed from the quantities on the left.
One price, one cycle. The simplest thing that works, and the one most systems handle.
- Plan
- Business, monthly
- Lines
- 1 on this invoice
Renews on the anniversary. Proration on any mid-cycle change.
| Description | Qty | Unit price | Service period | Amount |
|---|---|---|---|---|
| Business plan Subscription, monthly in advance | 1 | $1,800.00 | 1 Jun to 30 Jun | $1,800.00 |
| Subtotal | $1,800.00 | |||
| Tax, 20% | $360.00 | |||
| Total due | $2,160.00 | |||
Priced per user, with seats moving mid-cycle. Proration is where this one gets hard.
- Plan
- Scale, 62 seats, monthly
- Lines
- 2 on this invoice
Seats added on day 15 are billed for the 16 days they existed, not the month. The period column is where that becomes checkable.
| Description | Qty | Unit price | Service period | Amount |
|---|---|---|---|---|
| Scale plan Seats at start of cycle | 48 | $89.00 | 1 Jun to 30 Jun | $4,272.00 |
| Scale plan, added seats Prorated, 16 of 30 days | 14 | $89.00 | 15 Jun to 30 Jun | $664.53 |
| Subtotal | $4,936.53 | |||
| Tax, 20% | $987.31 | |||
| Total due | $5,923.84 | |||
The unit price falls as volume rises, and every tier bills at its own rate.
- Plan
- Volume tiers, 42,000 units
- Lines
- 3 on this invoice
Graduated, not volume: each tier is charged at its own rate, not at the last rate reached. Three lines, because three rates applied.
| Description | Qty | Unit price | Service period | Amount |
|---|---|---|---|---|
| API calls, tier 1 First 10,000 | 10,000 | $0.0400 | 1 Jun to 30 Jun | $400.00 |
| API calls, tier 2 10,001 to 25,000 | 15,000 | $0.0280 | 1 Jun to 30 Jun | $420.00 |
| API calls, tier 3 25,001 and above | 17,000 | $0.0190 | 1 Jun to 30 Jun | $323.00 |
| Subtotal | $1,143.00 | |||
| Tax, 20% | $228.60 | |||
| Total due | $1,371.60 | |||
Prepaid commitment drawn down by metered usage, with the overage billed in arrears.
- Plan
- Committed spend, 12 month term
- Lines
- 3 on this invoice
Credits are consumed before cash, so the invoice only charges what the commitment did not cover.
| Description | Qty | Unit price | Service period | Amount |
|---|---|---|---|---|
| api.tokens Metered, billed in arrears | 3,120,000 | $0.0009 | 1 Jun to 30 Jun | $2,808.00 |
| storage.gb Metered, peak in period | 820 | $0.4500 | 1 Jun to 30 Jun | $369.00 |
| Prepaid credit applied Drawn from commitment balance | 1 | $2,500.00 | Term to date | -$2,500.00 |
| Subtotal | $677.00 | |||
| Tax, 20% | $135.40 | |||
| Total due | $812.40 | |||
Seats and consumption on one plan and one invoice. This is the one that breaks spreadsheets.
- Plan
- Scale + metered, monthly
- Lines
- 3 on this invoice
One invoice, one payment, one revenue record. The customer never sees the seam between the seat line and the meter.
| Description | Qty | Unit price | Service period | Amount |
|---|---|---|---|---|
| Scale plan Per seat, monthly in advance | 62 | $89.00 | 1 Jun to 30 Jun | $5,518.00 |
| api.tokens over allowance Metered, billed in arrears | 1,120,000 | $0.0009 | 1 Jun to 30 Jun | $1,008.00 |
| Annual commitment discount 12% on the subscription line | 1 | $662.16 | 1 Jun to 30 Jun | -$662.16 |
| Subtotal | $5,863.84 | |||
| Tax, 20% | $1,172.77 | |||
| Total due | $7,036.61 | |||
Every figure above is arithmetic on the inputs shown, not an illustration. Your own catalog is modelled on the call.
Global by default
One platform, wherever your customers are.
Bill in the customer's currency, route the payment on a local rail, apply the right tax, and consolidate all of it into one statement. There is no country edition to buy and nothing to reconcile between regions.
- 135+
- Currencies Billed and settled, with per-entity price books.
- Any
- Entity count Consolidated at the rate on the entity’s own books.
- 1
- Platform No per-country edition and no second instance.
Global by default
Four entities, four currencies, one closed month.
There is no country edition to buy and no second instance to reconcile. Entities, currencies and tax rules are configuration, so opening a new market is a setup task rather than an implementation project.
- Bill each customer in their currency, on their local tax rules
- Route payments per region, with gateway failover
- Price books and catalogs that vary by entity
- Intercompany-safe consolidation, at the rate you choose
- One chart of accounts out to your ledger and warehouse
| Entity | Region | Cur | Local | Rate | USD ($) |
|---|---|---|---|---|---|
| Occurly Inc | United States | USD | 2,140,880 | 1.0000 | $2,140,880 |
| Occurly UK Ltd | United Kingdom | GBP | 612,400 | 1.2740 | $780,198 |
| Occurly EU BV | Netherlands | EUR | 498,715 | 1.0850 | $541,106 |
| Occurly India | India | INR | 48,206,150 | 0.0120 | $578,474 |
| Consolidated | $4,040,658 | ||||
Rates are the period-close rates on the entity's own books. Nothing is restated after the close.
Who Occurly is for
Recurring revenue is not one industry.
Seat-based SaaS, metered AI, consumer subscriptions at volume, platform billing and multi-entity enterprise groups are the same operational problem wearing different clothes. One catalog, one ledger, one close.
- SaaS and software Seat-based plans, trials and expansion revenue
- AI and usage-based products Metered tokens and compute on prepaid commitments
- Digital subscriptions and media High-volume consumer plans, trials and paywalls
- Fintech and platforms Platform billing and audit-grade reconciliation
- E-commerce and consumer subscriptions Recurring boxes, memberships and replenishment
- Engineering REST API, webhooks, entitlements and a sandbox
- Finance and RevOps Close the month across entities and currencies
- Enterprise Multi-entity contracts, SSO, audit and residency
Each segment above links to how Occurly is configured for it. The companies to the right are real customers.
The stack
One platform, wired to everything else you run.
Occurly owns the subscription, the invoice and the money. Your gateway, your ledger, your CRM and your warehouse keep doing their own jobs, and none of them has to be told twice.
See all 38 integrationsPayment rails, ledgers, CRMs, tax engines and the warehouse.
How it goes
Moving your billing, step by step.
A typical mid-market migration. Complex catalogs and heavily customised legacy systems take longer, and we scope that before you sign rather than after.
Read the migration guide- 01
Model your catalog
Week 1Plans, prices, add-ons, coupons and price-book versions go in first, per currency and per entity. Anything your current system cannot express is where the conversation starts, because that is usually the reason you are moving.
- 02
Import the base
Week 1 to 2Customers, subscriptions, payment methods and historical invoices arrive with their terms, their anniversaries and their grandfathered prices intact. Tokenized payment methods transfer without asking a single customer to re-enter a card.
- 03
Connect the stack
Week 2Gateways, the accounting ledger, the CRM, the tax engine and the warehouse. Occurly is the system of record, so these are outbound syncs rather than a second source of truth to reconcile against.
- 04
Run the cycle in parallel
Week 3A shadow billing run produces the same period on both systems and the two invoice sets are compared line by line. Nothing is sent to a customer. This is the step that makes the cutover boring, and it is not optional.
- 05
Cut over
Week 4Billing moves on a date you choose, mid-cycle if the calendar requires it. Proration is computed from the imported terms, so no cycle is skipped, doubled or re-dated.
- 06
Close the first month
Month 1MRR, retention, cohorts and the consolidated statement are computed from live billing data rather than exported and rebuilt. The close is the test, and the first one is run alongside your team.
Every business that gets paid more than once has the same problem. Occurly is the system that solves it.
- 11
-
Modules on one data model
Subscriptions through revenue analytics, one customer record.
- 3 days
-
To close the month
Down from nine, on consolidated multi-entity revenue.
- 38 %
-
Failed payments recovered
Smart retries and automated dunning, first 30 days.
- 1 sprint
-
To ship billing
REST API, idempotency keys, webhooks and a full sandbox.
Outcome figures are reported by Occurly customers on their own billing volumes. Results depend on pricing model, payment mix and the state of the data at migration.
Customers
The teams who close the month.
We moved subscriptions, usage billing and revenue reporting onto Occurly in a few weeks. Finance and engineering finally read the same numbers.
-
Usage-based pricing used to mean a spreadsheet and a prayer. Now meters, credits and invoices just line up, every cycle.
Diego Martins Head of RevOps, Pulsar AI 99.9% invoice accuracy -
Dunning recovered revenue we were quietly losing every month. The retries and reminders paid for the platform on their own.
Sara Okonkwo Director of Billing, Meridian Media 38% of failed payments recovered -
The API is clean, webhooks are reliable, and the sandbox let us build with confidence. We shipped billing in a sprint.
Tom Becker Staff Engineer, Forge Labs Live in one sprint
Data
- Encrypted in transit and at rest
- Tenant isolation on every query path
- Point-in-time recovery from tested backups
Access
- SSO and SCIM on Scale and Enterprise
- Role-based access down to the object
- Immutable, exportable audit log
Payments
- Card data tokenized at PCI-DSS Level 1 processors
- Occurly never stores a primary account number
- SCA and 3D Secure handled at the gateway
Engineering
- Peer review and automated checks on every change
- Dependency and container scanning in the pipeline
- Annual third-party penetration test
- PCI DSS Inherited
- GDPR Supported
- Audit evidence Under NDA
- Penetration testing Annual
- Data residency On request
Questions
What buyers ask before the demo.
Anything not covered here is a fair question for the call. Pricing is quoted against your billed volume and pricing model.
Talk to salesWhat is Occurly?
Occurly is a recurring revenue platform. It runs subscriptions, usage-based billing, invoicing, payments, dunning, entitlements and revenue analytics, and it replaces the patchwork of billing scripts, spreadsheets and point tools that revenue teams stitch together as they grow.
Does Occurly support usage-based and hybrid pricing?
Yes. Ingest usage events at scale and bill on tiered, volume, stairstep or per-unit pricing, including prepaid credits and commitments. You can combine recurring subscriptions and usage on the same plan, so seat-based and consumption pricing live on one invoice.
Is Occurly built for global businesses?
Occurly is multi-currency and multi-entity from day one. Bill customers in their currency, route payments across gateways by region, and consolidate revenue across entities. There is no per-country edition to choose, the same platform runs everywhere your customers are.
Can we migrate from our current billing tool?
Yes. Onboarding includes data import for plans, customers, subscriptions and historical invoices, with a guided cutover so billing never skips a cycle. Teams switching from Chargebee, Recurly, Stripe Billing, Zuora or Maxio follow a documented migration path.
How long does a migration take?
A typical mid-market migration runs about four weeks: catalog modelling, data import, connecting the stack, a parallel billing run and then cutover on a date you choose. Complex catalogs and heavily customised legacy systems take longer, and that is scoped before you sign rather than after.
How do engineers integrate Occurly?
Through a clean REST API, reliable webhooks, idempotency keys, SDKs and a full sandbox. Entitlement checks, the customer portal and checkout are drop-in, so teams ship billing in a sprint instead of building plumbing.
Is my billing data secure?
Occurly encrypts data in transit and at rest, isolates tenants, and logs every access for audit. Payment details are tokenized and vaulted with PCI-compliant processors. Security and compliance posture is documented on the Trust page.
Support
Billing does not have office hours, so neither do we.
Named onboarding lead
One person owns your migration from catalog import through the first close, and they are the same person on the call in month three.
Talk to usDeveloper documentation
API reference, SDKs, webhook payloads, idempotency semantics and a sandbox with clocks you can advance.
developers.occurly.comPlatform status
Live status for the API, the billing runs, webhooks and every payment route, with incident history kept in public.
status.occurly.com
Next step
See it run on your pricing model.
Bring a plan, a price list, or the one invoice that is hard to produce today. Half an hour is enough to tell whether Occurly is the right system for it.
Prefer to write first? hello@occurly.com
- 30 minutes
- A working session on your pricing model, not a slide deck.
- Your data
- We model one of your real plans in the product, live.
- In writing
- Scope, migration path and commercials follow the same day.