A build-to-order ERPNext app that extends native Subscription with usage metering, proration, automated dunning, and revenue recognition. ECOSIRE scopes, builds, installs, and supports it on your bench — this is not an instant Marketplace download. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $299.00 USD; request a quote for a scoped proposal.

A build-to-order ERPNext app that extends native Subscription with usage metering, proration, automated dunning, and revenue recognition. ECOSIRE scopes, builds, installs, and supports it on your bench — this is not an instant Marketplace download.
Keine Zahlung jetzt. Dies sendet eine Angebotsanfrage an unser Team – wir melden uns per E-Mail mit Preisen und nächsten Schritten.
If you run a subscription or usage-based business on ERPNext, you have probably hit the ceiling of the native Subscription DocType. Core ERPNext can generate a recurring Sales Invoice on a fixed plan cycle, but it cannot meter consumption, prorate a mid-cycle plan change, chase failed payments on a schedule, or recognize revenue over the service period. Finance teams end up exporting to spreadsheets, hand-adjusting deferred revenue via manual Journal Entry, and manually emailing customers whose cards declined — exactly the error-prone, un-auditable work an ERP is supposed to eliminate. ERPNext Subscription & Recurring Billing Pro closes that gap as a proper Frappe app installed on your own bench.
Dedicated Frappe app with its own module, `hooks.py`, and fixtures — installed on your bench, not a pile of loose server scripts
`Billing Plan` DocType supporting flat, tiered, volume, and per-unit usage pricing with effective-dated price rules
`Usage Record` metering ingested through a whitelisted REST method (`/api/method/...`) with idempotency keys for safe retries
Scheduler job (`scheduler_events`) that aggregates usage per subscription each period and drafts/submits the `Sales Invoice`
Mid-cycle proration and plan upgrade/downgrade logic on `on_update`/`on_submit`, generating correct credit and charge lines automatically
`Dunning Policy` DocType with a configurable retry cadence and escalation to suspend/cancel when the policy is exhausted
We build a dedicated Frappe app (its own module, DocTypes, and hooks.py) rather than bolting scripts onto core. Typical DocTypes include Billing Plan (with tiered and volume price rules), Usage Record (metered events posted via a whitelisted REST endpoint), Dunning Policy, and Revenue Schedule. A nightly scheduler_events job aggregates Usage Record rows per subscription, applies your rating rules, and drafts or submits the period Sales Invoice. Proration and plan upgrades are handled with server-side logic on document events (on_submit, on_update) so a mid-cycle switch generates the correct credit and charge lines automatically, with full ledger backing rather than a manual adjustment.
Dunning runs as a scheduled job that walks overdue invoices, follows your configured retry cadence (for example day 1 / 3 / 7 / 14), fires templated email or SMS reminders through Frappe's Notification and Email Queue, and escalates to suspend/cancel actions when the policy exhausts. Deferred revenue is posted through ERPNext's native deferred-accounting fields plus a Revenue Schedule DocType, so month-by-month recognition ties back to your Chart of Accounts and reconciles against invoiced amounts — auditors see a clean trail, not a black box. Where you need a payment gateway (Stripe, Razorpay, a local processor), we wire the webhook to a whitelisted method that updates payment status and short-circuits dunning on success.
Everything respects Frappe's permission model: role profiles, permission levels, and user-permission scoping so a billing clerk, an AR manager, and an auditor each see only what they should. Client scripts add the in-form UX (live proration preview, one-click "run dunning now"), and every automated behavior is covered by hooks.py doc events and scheduler entries so it survives upgrades. The app targets Frappe/ERPNext v15 and v16, and we pin to your exact bench version at scoping time.
Because this is build-to-order, nothing ships until we agree on scope. We start with a short scoping call, produce a written specification and fixed quotation, then build against your real plans, tax rules, and gateway. Typical delivery is 2-4 weeks from confirmed scope. You get UAT on a staging site, a rollback plan, the full git repository, and a post-go-live support window — not a mystery zip from a marketplace.
Runs a metered or seat-based product on ERPNext and needs consumption rated, invoiced, and recognized correctly each period instead of reconciling usage in spreadsheets and posting manual journal entries.
Owns cash collection and wants failed-payment retries, reminder cadences, and suspend/cancel escalation to run automatically on a schedule, with a recovery report that shows what dunning actually recovered.
Needs deferred revenue recognized month-by-month against the Chart of Accounts with a clean, reconcilable audit trail, and role-scoped access so recognition schedules can't be silently overwritten.
Manages the bench and wants an upgrade-safe Frappe app with proper DocTypes, `hooks.py` events, and `patches.txt` — not brittle server scripts that break on the next v15/v16 update.
Kaufen Sie die Lizenz auf ecosire.com und laden Sie die ZIP-Datei der ERPNext Subscription & Recurring Billing Pro-App von Ihrem Konto-Dashboard herunter.
Extrahieren Sie die ZIP-Datei in den Apps-Ordner Ihrer Bank oder führen Sie „bench get-app“ mit dem Pfad zur extrahierten App aus.
Führen Sie „bench --site SITE_NAME install-app APP_NAME“ gefolgt von „bench migrate“ aus, um ERPNext Subscription & Recurring Billing Pro zu installieren und sein Schema anzuwenden.
Öffnen Sie die ECOSIRE-Lizenzeinstellungen auf Ihrer Website und aktivieren Sie Ihren Lizenzschlüssel. Erfordert die kostenlosen Apps ecosire_connect und ecosire_license_client.
| Kriterium | ECOSIRE | Benutzerdefinierter Build | Konkurrent | Odoo Native |
|---|---|---|---|---|
| Usage-based billing | Metered via `Usage Record` + rating engine | Possible but built from scratch | Rarely metered; mostly flat plans | |
| Mid-cycle proration & upgrades | Automatic credit/charge lines on plan change | Depends on developer effort | Usually manual or absent | |
| Dunning automation | Scheduled retry cadence + escalation | Must build scheduler + policy yourself | Basic reminders at best | |
| Deferred revenue recognition | `Revenue Schedule` reconciled to CoA | Custom accounting logic, high risk | Seldom included | |
| Fit to your process | Built to your plans, tax, and gateway | Fully bespoke if you have the time | Take it as shipped | |
| Upgrade safety (v15/v16) | Proper app + `patches.txt`, version-pinned | Only if disciplined | Varies; can break on updates | |
| Support & ownership | Support window + full git handover | You own and maintain everything | Vendor-dependent, limited scope | |
| Time to live | 2-4 weeks from confirmed scope | Months of in-house build | Instant but generic |
This is build-to-order, so there is no instant download. After a scoping call we send a written specification and fixed quotation; once you confirm scope, typical delivery is 2-4 weeks depending on the number of pricing models, your payment gateway, and any data migration. UAT on staging happens before production cutover.
We build for Frappe/ERPNext v15 and v16 and pin to your exact bench version at scoping time. The app is packaged as a standard Frappe app with upgrade-safe patches (`patches.txt`) so it survives bench updates rather than breaking on them.
Every build includes a post-go-live support window for defect fixes and configuration adjustments. Because you receive the full git repository, your team can extend it, and we offer ongoing support or version-migration engagements (for example v15 to v16) as a separate agreement.
Native `Subscription` generates fixed-plan recurring invoices but has no usage metering, no mid-cycle proration, no scheduled dunning cadence, and no automated deferred-revenue schedule. This app adds those as first-class DocTypes and scheduler jobs while still posting through native ERPNext accounting.
Yes. Usage events are posted to a whitelisted REST method with idempotency keys, so your product or an external service can push consumption safely. Gateway webhooks (Stripe, Razorpay, or a local processor) are handled by whitelisted methods that update payment status and stop dunning on a successful charge. Exact integrations are confirmed during scoping.
Yes. You receive the full source as an installable Frappe app plus the git repository with history. There is no per-seat license lock-in on the app itself; it runs on your bench and your team can read, audit, and extend it.
Deferred revenue is posted through ERPNext's native deferred-accounting fields backed by a `Revenue Schedule` DocType, so recognition ties to your Chart of Accounts and reconciles against invoiced amounts. Perm-level permissions and audit logging prevent silent edits, giving auditors a clean trail.
A build-to-order ERPNext app that extends native Subscription with usage metering, proration, automated dunning, and revenue recognition. ECOSIRE scopes, builds, installs, and supports it on your bench — this is not an instant Marketplace download.