A full property-management system built as a native Frappe app on ERPNext — reservations, front desk, housekeeping, guest folios and night audit, all inside the same system that runs your accounting and inventory. ECOSIRE scopes, builds, installs and supports it after you request a quotation. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $799.00 USD; request a quote for a scoped proposal.

A full property-management system built as a native Frappe app on ERPNext — reservations, front desk, housekeeping, guest folios and night audit, all inside the same system that runs your accounting and inventory. ECOSIRE scopes, builds, installs and supports it after you request a quotation.
Aucun paiement maintenant. Ceci envoie une demande de devis à notre équipe — nous vous recontacterons par e-mail avec les tarifs et les prochaines étapes.
Independent hotels, resorts and guesthouses usually run the property on one system and the business on another: a third-party PMS for the front desk, a separate tool for housekeeping, spreadsheets for the night audit, and ERPNext (or QuickBooks) somewhere downstream for the books. Rates get keyed twice, folio charges never quite reconcile against the general ledger, and nobody trusts the daily revenue number because it lives in three places. ERPNext core is genuinely excellent at Sales Invoices, Payment Entries and inventory, but it has no concept of a reservation, a room-night, a folio, a housekeeping status or a night-audit close — so out of the box it simply cannot run a front desk.
Native Frappe app installed via `bench get-app` / `bench install-app`, versioned in its own git repo — not a pile of manual customisations
First-class DocTypes: `Room`, `Room Type`, `Rate Plan`, `Reservation`, `Folio`, `Folio Charge`, `Housekeeping Task`, with naming series and child tables
Tape-chart reservation calendar (client script driven) showing availability, arrivals and departures across room types and date ranges
Rate plans with seasonal/date-range pricing, per-room-type rates and occupancy rules resolved in a single whitelisted server method
Reservation lifecycle enforced by a Frappe Workflow: Tentative, Confirmed, Checked In, Checked Out, No-Show — with guarded transitions
Front-desk check-in / check-out that assigns rooms, opens the guest folio and flips room status atomically
This product closes that gap. ECOSIRE builds a proper Frappe app (its own module, installed via bench get-app and bench install-app) that adds the missing hospitality layer directly inside your ERPNext site. We model the domain as first-class DocTypes — Room, Room Type, Rate Plan, Reservation, Folio, Folio Charge and Housekeeping Task — with the naming series, links and child tables a hotel actually needs. Reservations flow through a state machine (Tentative, Confirmed, Checked In, Checked Out, No-Show) enforced by a Frappe Workflow, and role profiles (Front Desk, Housekeeping, Night Auditor, Manager) scope who can see and do what through ERPNext's permission engine and User Permissions.
Technically, the logic lives where Frappe wants it. Availability and rate resolution run in whitelisted server methods (@frappe.whitelist()) so the reservation calendar and the check-in screen call the same source of truth. hooks.py doc events (on_submit, validate, on_update) keep the folio honest: posting a charge writes a Folio Charge row and, at check-out, the folio is materialised into a standard ERPNext Sales Invoice and Payment Entry — so revenue hits the real general ledger with no re-keying. Client scripts drive the tape-chart calendar and the housekeeping board; a scheduler event (scheduler_events in hooks.py) runs the night audit to roll the business date, post room-and-tax charges for in-house guests, flag no-shows and freeze the day's numbers into a daily revenue report. Everything is reachable over the Frappe REST API, so a booking-engine or channel-manager integration is a clean follow-on rather than a rebuild.
Because this is build-to-order, nothing is shipped as a generic download. After you request a quotation we run a short scoping call, agree the exact room types, rate logic, tax treatment and reports you need, and fix the scope in writing. We then build against Frappe/ERPNext v15/v16, deliver to a staging site for your UAT, and only go live once you sign off — typically 2 to 4 weeks from confirmed scope depending on complexity. You receive the full source code for your version, a git repository handover, install and configuration on your environment, technical and user documentation, a training session, and a post-go-live support window. It is your app on your ERPNext, not a black box.
Runs a single property or small group and is tired of paying per-room SaaS PMS fees while the books live somewhere else. Wants reservations, front desk and folios inside the same ERPNext that already handles accounting, purchasing and payroll.
Needs a housekeeping board, a reliable night-audit close and a daily revenue number they can defend to ownership. Values that occupancy, ADR and RevPAR come from the same posted data as the general ledger, not a reconciled export.
Has already standardised the business on ERPNext and refuses to bolt on another disconnected tool. Wants a native Frappe app with clean DocTypes, whitelisted methods and REST API access that survives `bench update` and can be extended in-house later.
Serving a hospitality client and needs a solid PMS layer built to spec rather than reinventing reservations, folios and night audit from scratch — with source, git handover and documentation they can support.
Achetez la licence sur ecosire.com et téléchargez le ZIP de l'application Hotel PMS (Property Management) for ERPNext depuis le tableau de bord de votre compte.
Extrayez le ZIP dans le dossier d'applications de votre banc ou exécutez « bench get-app » avec le chemin d'accès à l'application extraite.
Exécutez `bench --site SITE_NAME install-app APP_NAME` suivi de `bench migrate` pour installer Hotel PMS (Property Management) for ERPNext et appliquer son schéma.
Ouvrez les paramètres de licence ECOSIRE sur votre site et activez votre clé de licence. Nécessite les applications gratuites ecosire_connect et ecosire_license_client.
| Critère | ÉCOSIRE | Construction personnalisée | Concurrent | Odoo natif |
|---|---|---|---|---|
| Fit to your property | Built to your agreed scope: your room types, rate logic, taxes and reports | Fully bespoke but you carry all design decisions | Generic feature set, you adapt to the app | |
| Reservations & front desk | Reservation DocTypes, workflow states, tape-chart calendar and check-in/out | Possible but everything is designed from zero | Usually present, varies in depth | |
| Accounting integration | Folio posts a standard Sales Invoice + Payment Entry to your real GL | Whatever you decide to wire up | Often a separate PMS needing export/reconciliation | |
| Night audit & daily reports | Scheduler-driven audit closes the day; occupancy/ADR/RevPAR reports included | Must be built and tested from scratch | May exist but rarely tied to your ERP ledger | |
| Source & ownership | Full source + git repo handover; you own your version | You own it, but at full build cost and risk | Typically closed-source or subscription-locked | |
| Upgrade safety | Packaged Frappe app, tested on v15/v16, survives `bench update` | Depends entirely on discipline of the build | Upgrade cadence set by the vendor | |
| Support model | Post-go-live window plus optional retainer, direct with ECOSIRE | Whoever built it, if still available | Vendor support tiers and ticket queues | |
| Time to live | 2–4 weeks from confirmed scope, with staging UAT | Often months for equivalent depth | Fast to install, slow to fit and integrate |
This is a build-to-order product, so nothing is downloaded instantly. After a short scoping call we fix the scope in writing, then build, and deliver to a staging site for your UAT. Typical delivery is 2 to 4 weeks from confirmed scope, depending on how much rate logic, tax treatment and integration you need. You go live only after you sign off on staging.
It runs inside ERPNext, so accounting is not separate. At check-out the guest folio is materialised into a standard ERPNext Sales Invoice and Payment Entry, so room, tax and incidental revenue posts straight to your real general ledger. There is no export, no re-keying and no reconciliation between a PMS and the books.
We build and test against Frappe/ERPNext v15 and v16. The app is packaged as a proper Frappe app with its own git repo and is written to survive `bench update`. If you are on an older version we will discuss an upgrade path during scoping.
Every engagement includes a post-go-live support window for defect fixes and questions. Because you receive the full source and a git repository handover, you or any Frappe partner can maintain and extend the app afterwards. Ongoing support, new features and version upgrades can be arranged as a separate retainer or fixed-scope change.
Yes. Every DocType and whitelisted method is exposed over the Frappe REST API, so a booking engine, website widget or channel-manager sync is a clean follow-on integration. We scope any specific channel or OTA connection during the requirements call rather than assuming it up front.
You own the source code for your version outright, delivered with a full git repository handover. It is your app running on your ERPNext site — not a hosted black box and not a per-room subscription. You are free to host, modify or hand it to another developer at any time.
That is the point of build-to-order. Room types, seasonal and occupancy-based rate logic, local tax and city-levy treatment, folio layout and the exact daily reports are all agreed during scoping and built to your property's rules, then verified by you on staging before go-live.
A full property-management system built as a native Frappe app on ERPNext — reservations, front desk, housekeeping, guest folios and night audit, all inside the same system that runs your accounting and inventory. ECOSIRE scopes, builds, installs and supports it after you request a quotation.