Saltar al contenido principal
Los detalles del producto se muestran en inglés. Próximamente traducciones.
Sales Subscription — A build-to-order Odoo module that turns your products into recurring subscription plans directly inside  — 1/1Vista previa ilustrativa

A build-to-order Odoo module that turns your products into recurring subscription plans directly inside sales

— ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 instance. This is a made-to-order engagement, not an instant download.

¿Qué es Sales Subscription?

A build-to-order Odoo module that turns your products into recurring subscription plans directly inside sales — ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 instance. This is a made-to-order engagement, not an instant download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Características clave

`sale.subscription` and `sale.subscription.line` models that convert ordinary sale-order lines into recurring plan lines without leaving the sales flow
Configurable `sale.subscription.plan` with billing period, commitment length, auto-renew, and end-of-term action as structured `selection` fields
Nightly `ir.cron` automated action that generates recurring invoices via the standard `account.move` pipeline and advances the billing anchor date
Compute fields with `@api.depends` for next-invoice date, MRR/ARR, remaining commitment, and lifetime value — no spreadsheet reconciliation
Subscription lifecycle state machine (`draft`/`in_progress`/`paused`/`renewed`/`closed`) covering pause, resume, upgrade, downgrade, and reactivation
Mid-cycle proration engine for plan changes, quantity changes, and add-ons, with the delta pushed to the current or next invoice per your rule
Dunning and retry handling for failed charges, with configurable retry cadence and automatic state transition on final failure
Renewal kanban and a `subscriptions` smart button on the partner form for a one-glance view of the recurring book
`ir.model.access.csv` plus record rules enforcing salesperson-level and multi-company record isolation
QWeb reports for subscription confirmations, renewal notices, and upcoming-invoice previews, branded to your layout
Full XML-RPC/JSON-RPC coverage so external storefronts or payment providers can create, pause, and query subscriptions programmatically
Payment-provider hooks (e.g. tokenized recurring charges) wired to your configured Odoo payment acquirer where automated collection is in scope
Automated renewal-reminder and expiry emails via Odoo mail templates, triggered from the subscription state transitions
Community-vs-Enterprise aware packaging: extends the Enterprise subscriptions app where present, delivers a standalone engine on Community

Hecho a medida, listo para ti

Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.

  1. 1

    Haces el pedido

    Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.

  2. 2

    Creamos e instalamos

    ECOSIRE la crea, la configura y la instala en tu Odoo.

  3. 3

    En marcha + soporte

    Sales en vivo en aproximadamente una semana laboral, con dos semanas de soporte tras la puesta en marcha. Los defectos en el código que entregamos se corrigen sin coste.

Especificaciones técnicas

Compatibilidad con Odoo
Odoo 17, Odoo 18, Odoo 19
Ediciones
Enterprise y Community
Licencia
La licencia requiere confirmación
Requisito de Python
Python 3.10+
Base de datos
PostgreSQL 12+

Sobre este producto

Selling anything on a recurring basis in stock Odoo means fighting the grain of a system built around one-time sale orders and invoices. Teams end up manually cloning quotations every month, running spreadsheets to track who renews when, and firefighting failed card charges after the fact. Odoo Community has no native subscription engine at all, and even where recurrence exists it rarely matches how your plans actually price, prorate, upgrade, and dunning-retry. The result is revenue leakage, missed renewals, and a finance team reconciling by hand — exactly the busywork a recurring-revenue business cannot afford.

ECOSIRE builds a Sales Subscription module that lives natively inside the sales flow so a quotation can carry recurring lines instead of one-off ones. We introduce a sale.subscription model (with sale.subscription.line children) plus a configurable sale.subscription.plan defining billing period (monthly/quarterly/annual via a selection field), commitment term, and auto-renew behavior. Compute fields with @api.depends derive next-invoice date, MRR/ARR, and remaining commitment; a scheduled automated action (ir.cron) walks due subscriptions each night, generates the recurring invoice through the standard account.move pipeline, and advances the billing anchor. State is driven by a selection lifecycle (draft → in_progress → renewed/paused → closed) so churn and reactivation are first-class rather than manual status edits.

Technically it is a clean, upgrade-safe addon: a proper __manifest__.py declaring dependencies on sale (and sale_subscription/account where your edition provides them), access rules in ir.model.access.csv plus record rules for multi-salesperson and multi-company isolation, backend views in XML/OWL (list, form, a renewal kanban, and a subscriptions smart-button on the customer), and QWeb reports for subscription confirmations and renewal notices. Everything the model exposes is reachable over the XML-RPC/JSON-RPC API, so your website, payment provider, or external billing dashboards can create, pause, or query subscriptions programmatically. We handle the Community-vs-Enterprise gap explicitly — where Enterprise ships a subscriptions app we integrate with and extend it rather than duplicate it; on Community we deliver the full recurring engine ourselves.

Because this is build-to-order, nothing ships until we agree on scope. We start with a short scoping call, confirm your plans, proration rules, tax and payment-provider setup, and target Odoo version (17.0, 18.0, or 19.0), then build against a staging clone of your database. You get UAT on staging, a rollback plan, and a supervised go-live before the module touches production. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); multi-company consolidation, payment-gateway automation, custom proration/dunning logic, or migrating an existing book of subscriptions increases the quoted scope.

lo que obtienes

  • Installable source code for your version of the module, packaged as a standard Odoo addon with a complete `__manifest__.py`
  • Installation and configuration on your Odoo instance (17.0, 18.0, or 19.0), including plans, cron cadence, and payment-provider wiring
  • Technical documentation covering the data model, cron behavior, security rules, and the XML-RPC/JSON-RPC endpoints
  • End-user guide plus a live training session for your sales and finance teams
  • UAT on a staging clone of your database with a documented rollback plan before go-live
  • Post-go-live support window for defect fixes and configuration adjustments
  • Git repository handover with full commit history and tagged release
  • Version-compatibility notes and an upgrade path for future Odoo releases

¿Para quién es esto?

SaaS / recurring-service founder on Odoo

Runs a subscription business but sells through stock Odoo quotations. Needs plans, auto-renewals, MRR/ARR visibility, and automated invoicing so revenue stops leaking through manual monthly re-quoting.

Finance / accounting manager

Owns the invoice run and revenue reporting. Needs deterministic recurring invoices through the native `account.move` pipeline, correct proration on plan changes, and clean multi-company isolation for audit.

Odoo administrator / ERP lead

Responsible for an upgrade-safe, well-documented addon. Wants proper `ir.model.access.csv` security, record rules, a git handover, and API access rather than a black-box app that breaks on the next migration.

Sales operations manager

Manages the renewal pipeline and churn. Needs a renewal kanban, pause/resume and upgrade/downgrade flows, and reminder automations so no renewal slips and reactivations are one click.

Cómo se compara Sales Subscription

CriterioECOSIREConstrucción personalizadaCompetidorNativo de Odoo
Recurring billing enginePurpose-built `sale.subscription` model with cron-driven invoicing tailored to your plansPossible, but you specify and maintain every rule yourselfGeneric recurrence that rarely matches your proration and dunningNone in Community; Enterprise app is fixed-shape
Fit to your plansBilling periods, commitment, proration, and dunning built to your exact rulesFully bespoke if your team has the Odoo depthConfigurable within the vendor's assumptions onlyTake-it-or-leave-it defaults
Community edition supportFull standalone recurring engine delivered on CommunityBuild from scratch on CommunityOften Enterprise-dependent or limitedNo native subscriptions on Community
API / integrationFull XML-RPC/JSON-RPC surface plus payment-acquirer hooks we wireWhatever you choose to expose and testDepends on the vendor's exposed methodsStandard ORM API only, no subscription semantics
Security & multi-company`ir.model.access.csv` plus record rules for salesperson and company isolationYour responsibility to design and auditGeneric access, isolation not guaranteedBase ACLs, no subscription-specific rules
Source code & ownershipFull source and git repo handover with tagged releaseYou own it, at your build costLicensed binary, limited or no sourceCore code, not extendable to your logic
Delivery modelBuild-to-order, one working week from confirmed scope, staged and UAT'dTimeline depends on in-house capacityInstant install but unfitted work followsImmediate but no subscription capability
Support & upgradesPost-go-live support window plus quoted upgrades across 17/18/19Self-supportedVendor support tiers, variable on upgradesCovered only by your Odoo support contract

Preguntas frecuentes sobre Sales Subscription

How long does delivery take?

This is a build-to-order module, so nothing ships as an instant download. After a scoping call to confirm your plans, proration rules, and target Odoo version, typical delivery is one working week from confirmed scope. Larger builds — payment-gateway automation, multi-company consolidation, or migrating an existing subscription book — sit at the upper end or are phased.

How does pricing and scoping work?

Pricing starts from $999 as an indicative from-price for a single-company base scope. We give you a fixed quote only after the scoping call, once billing periods, proration and dunning logic, payment automation, and data migration volume are known. You approve the fixed quote and scope before we build anything.

What about support and future Odoo updates?

Every engagement includes a post-go-live support window for defect fixes and configuration tweaks. Because you receive the git repository and full source, the module is yours to maintain. We also provide version-compatibility notes and can quote a separate upgrade when you move to a newer Odoo major release (17.0 to 18.0 to 19.0).

Will this work on Odoo Community or do I need Enterprise?

Both. On Community, where there is no native subscription engine, we deliver the full recurring model, cron-driven invoicing, and lifecycle ourselves. On Enterprise, where a subscriptions app exists, we integrate with and extend it instead of duplicating it. We confirm your edition during scoping so the build fits.

Can external systems and payment providers talk to the subscriptions?

Yes. Everything the module exposes is reachable over Odoo's XML-RPC/JSON-RPC API, so a website, storefront, or payment provider can create, pause, upgrade, and query subscriptions programmatically. Where automated recurring collection is in scope, we wire tokenized charges to your configured Odoo payment acquirer.

How do you handle mid-cycle plan changes and failed payments?

Plan upgrades, downgrades, and quantity changes run through a proration engine that pushes the delta to the current or next invoice per the rule you choose. Failed charges enter a configurable dunning/retry cadence and, on final failure, transition the subscription state automatically rather than leaving it silently unpaid.

Is the build safe for my production database?

We never build against production. Work happens on a staging clone, you sign off through UAT on staging, and we bring a documented rollback plan to a supervised go-live. Access rules and record rules are set up so subscriptions respect salesperson visibility and multi-company boundaries.

Solicitar presupuesto

Sales Subscription

A build-to-order Odoo module that turns your products into recurring subscription plans directly inside sales — ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 instance. This is a made-to-order engagement, not an instant download.

  • `sale.subscription` and `sale.subscription.line` models that convert ordinary sale-order lines into recurring plan lines without leaving the sales flow
  • Configurable `sale.subscription.plan` with billing period, commitment length, auto-renew, and end-of-term action as structured `selection` fields
  • Nightly `ir.cron` automated action that generates recurring invoices via the standard `account.move` pipeline and advances the billing anchor date
  • Compute fields with `@api.depends` for next-invoice date, MRR/ARR, remaining commitment, and lifetime value — no spreadsheet reconciliation

Solicitar presupuesto

Cuéntanos tus necesidades de Sales Subscription y te enviaremos precios, opciones de licencia y una propuesta a medida, normalmente en un día hábil.

Sin pago ahora. Esto envía una solicitud de presupuesto a nuestro equipo; te responderemos por correo con precios y próximos pasos.