- Home
- Apps
- SaaS Tools
- Subscription & Recurring Revenue Manager
Illustrative previewRecurring plans, MRR, dunning and churn for subscription sales in Odoo Community
— built, installed and supported by ECOSIRE.
What is Subscription & Recurring Revenue Manager?
Recurring plans, MRR, dunning and churn for subscription sales in Odoo Community — built, installed and supported by ECOSIRE. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
Odoo Enterprise ships a Subscriptions app — but if you run Odoo Community, or you're on Enterprise and want dunning logic, churn analytics and proration that actually match your business, you're stuck bolting recurring billing onto sale.order by hand. The Subscription & Recurring Revenue Manager is a net-new Odoo module that ECOSIRE designs, builds and installs specifically for your instance, giving SaaS and service teams a real subscription engine on Odoo Community (and Enterprise) 17, 18 or 19.
This is a build-to-order engagement, not an instant apps.odoo.com download. After purchase, our Odoo engineers scope your billing cycles, invoicing rules and dunning policy, then ship a clean, upgrade-safe module: a new subscription.plan and subscription.contract model layered on top of standard sale.order, account.move and res.partner, with computed MRR/ARR fields (@api.depends), scheduled cron actions (ir.cron) that generate renewal invoices, a QWeb dunning email flow for failed payments, and OWL dashboards for MRR, ARR and churn. Access is locked down with ir.model.access.csv plus record rules so account managers only see their own book of business, and every recurring flow is exposed over XML-RPC/JSON-RPC so your app, website or payment provider can create and update contracts programmatically.
Because we write the module to Odoo's ORM and view conventions — proper __manifest__.py dependencies, no core patching of sale or account you can't upgrade past — it survives Odoo point releases and stays yours. You get the source code, the configuration, documentation, admin training and a post-launch support window. The result: predictable recurring revenue reporting, automated renewals, fewer failed-payment write-offs, and a churn number you can actually trust — all inside the Odoo you already run.
What you get
- Complete, installable Odoo module (source code) with a documented __manifest__.py declaring exact dependencies (sale, account, mail) and version-pinned for your Odoo 17/18/19
- Configured subscription plans, billing cycles, dunning cadence and email templates matched to your real pricing and payment policy
- Installation and deployment on your instance (staging first, then production) with a data-safe migration of any existing recurring customers
- ir.cron scheduled actions and automated actions configured and verified end-to-end (renewal generation, dunning, suspension)
- Security matrix delivered as ir.model.access.csv plus record rules, mapped to your finance and sales roles
- Admin and end-user documentation (PDF/markdown) plus a recorded/live training session for your team
- MRR/ARR/churn dashboards and reporting views wired to your data, with a walkthrough of how each metric is calculated
- Post-launch support window with bug fixes and a defined SLA, plus a maintenance/upgrade path quote for future Odoo versions
Who this is for
Community-edition SaaS founder
Runs Odoo Community to keep costs down but sells software on monthly and annual plans. Needs real MRR/ARR, automated renewals and churn tracking without paying for the Enterprise Subscriptions app or a separate billing SaaS.
Finance/RevOps lead at a services firm
Manages retainers and recurring service contracts and is tired of manually raising the same invoices each month. Wants automated recurring invoicing, dunning on failed payments, and a trustworthy revenue-forecast dashboard inside Odoo accounting.
Operations manager scaling a subscription book
Handles hundreds of active subscribers and needs upgrade/downgrade proration, staged dunning, and per-rep visibility via record rules so account managers only touch their own customers — all auditable in Odoo chatter.
How Subscription & Recurring Revenue Manager Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Runs on Odoo Community (no Enterprise licence needed) | Included | Included | Partial support | Not included |
| Automated renewals via scheduled ir.cron actions | Included | Partial support | Included | Not included |
| Dunning workflow on failed/overdue payments | Included | Partial support | Partial support | Not included |
| MRR / ARR / churn dashboards | Included | Partial support | Partial support | Not included |
| Upgrade/downgrade with automatic proration | Included | Partial support | Partial support | Not included |
| Tailored to your exact billing cycles and pricing rules | Included | Included | Not included | Not included |
| Role-based access via ir.model.access.csv + record rules | Included | Partial support | Partial support | Partial support |
| XML-RPC / JSON-RPC API for external integration | Included | Partial support | Partial support | Included |
| Upgrade-safe across Odoo 17/18/19 with source handed over | Included | Not included | Partial support | Included |
| Includes install, training and post-launch support SLA | Included | Not included | Not included | Not included |
Frequently Asked Questions about Subscription & Recurring Revenue Manager
How long does delivery take and what happens after I buy?
This is a build-to-order module, not an instant download. Typical delivery is one working week depending on how custom your billing cycles, dunning rules and proration logic are. After purchase we hold a short scoping call, confirm requirements, build the module, deploy to a staging copy of your Odoo for your sign-off, then install on production and train your team.
What support and updates are included, and what about future Odoo versions?
Every engagement includes a post-launch support window with bug fixes and a defined response SLA. Because we build to Odoo's ORM and view conventions without patching core sale/account in unmaintainable ways, the module upgrades cleanly across Odoo point releases. Moving between major versions (17 to 18 to 19) is a small, quoted migration — we hand you the source, so you're never locked in.
Do I need Odoo Enterprise for this to work?
No. The whole point of this module is to give you subscription and recurring-revenue management on Odoo Community. It depends only on standard modules (sale, account, mail) that ship in Community. If you're on Enterprise, it still works and adds dunning, churn analytics and proration behavior you can tailor beyond the stock Subscriptions app.
How is MRR calculated across mixed billing cycles?
Each subscription contract carries computed fields (using @api.depends) that normalize its price to a monthly value — an annual plan divides by twelve, a quarterly plan by three, and so on. Those normalized values roll up into MRR and ARR, and MRR movement is split into new, expansion, contraction and churned so your dashboards reconcile with your accounting.
Can it connect to my website, app, or payment provider?
Yes. All subscription operations — create, renew, upgrade, downgrade, cancel — are exposed over Odoo's XML-RPC and JSON-RPC APIs, so your website or external app can drive them. We also wire payment-provider hooks (Stripe, PayPal, or manual/bank transfer) so a successful charge marks the invoice paid and a failed charge triggers the dunning workflow automatically.
Will this break when I upgrade Odoo or interfere with my existing accounting?
No. Recurring invoices are standard account.move records, taxes and pricelists use your existing configuration, and the module adds new models rather than overwriting core behavior. Security is enforced with ir.model.access.csv and record rules. This keeps your books clean and the module upgrade-safe, which is exactly why we deliver it as a proper module instead of a pile of manual customizations.
Related Modules

Stripe Statements Reconciliation for Odoo
A build-to-order Odoo module that automatically imports your online card-processor payouts, transactions, and processing fees into Odoo accounting, then matches them against invoices and bank statements. ECOSIRE scopes, builds, installs, and supports it for your instance.

Tabby BNPL Gateway for Odoo
Offer Tabby split-in-4 buy-now-pay-later at Odoo checkout to lift Gulf conversion. Built-to-order, installed and supported by ECOSIRE.

Taiwan HR & Payroll
A build-to-order Odoo localization for Taiwanese payroll that handles labor and health insurance contributions, income-tax withholding, labor pension, and TWD salary structures. ECOSIRE builds, installs, and supports it after you request a quotation.
Subscription & Recurring Revenue Manager
Recurring plans, MRR, dunning and churn for subscription sales in Odoo Community — built, installed and supported by ECOSIRE.
- Recurring plan catalog: define billing cycles (weekly, monthly, quarterly, annual, custom N-days) as a subscription.plan model reusable across products and customers
- Subscription contracts built on standard sale.order and account.move so quotations, tax and accounting stay 100% native Odoo
- Automated renewal engine via ir.cron scheduled action that generates the next-period invoice and confirms it per contract terms
- Automatic invoicing and email delivery of recurring invoices through QWeb report templates and Odoo's mail queue
