Equipment rental without a system lives in an Excel sheet and a notebook: it’s unclear who has which specific unit, scheduled maintenance is forgotten, and disputes about damage become “your word against mine.” ERPJS has a dedicated “Rental” module that closes the entire cycle — from the customer’s order to the maintenance plan — and links all documents to each other.
Why don’t Excel and a notebook work for equipment rental?
Excel doesn’t distinguish “10 hammer drills” from “Bosch hammer drill SN-001, SN-002, SN-003.” There’s no way to keep history for a specific unit — who, when, with what runtime. A notebook records bookings but doesn’t show conflicts or remind about maintenance.
5 typical problems for a rental business with 50 units:
- Double bookings — an order accepted for an already booked date
- Damage disputes with the customer — no documented condition at check-out
- Missed scheduled maintenance — a drill ran 150 hours without service, breaks down with the next renter
- Invoice errors — 18 days rental billed as 17, or simply forgotten
- “Repair or write off” decision in the dark — no unit history or annual revenue
What should an equipment rental management system close?
6 functions in one cycle: unit catalog, booking with validation, rental contract with period and pricing, check-out/return acts with condition tracking, scheduled maintenance plan, automated periodic invoicing. ERPJS closes this in the “Rental” module.
How does the unit catalog look in ERPJS?
Each rental unit (Rental Object) is a separate card: code + serial number, manufacturer, model, year, location, meter type (HOURS / KM / CYCLES / NONE) and start value. Statuses: AVAILABLE / RESERVED / RENTED / MAINTENANCE / DECOMMISSIONED. Optionally linked to a Fixed Asset.
The module is universal — not only for equipment. Apartments, cars, exhibition equipment, containers, halls — any long-term rental. The same base logic applies. For hourly bookings (services) there’s a separate booking module.
How to see the rental pool load — Resource Manager
ERPJS doesn’t allow creating a booking for a period when the object is already reserved — code-level validation. So there are no “booking conflicts” in the system — they can’t be created.
To let managers quickly find free slots, there’s a Resource Manager — a visual calendar with month / week / day views. Each resource is a separate row, colored blocks are reserved periods. The manager opens the calendar, sees free slots and reserves there.
How are rental orders and contracts structured?
The cycle starts with a Rental Order (statuses DRAFT → CONFIRMED → CONVERTED → CANCELLED) — a soft document that captures the customer’s request without reserving anything. Upon confirmation it’s converted into a Rental Agreement — the main document of the module.
Agreement type: OUTGOING (we rent to a customer) or INCOMING (we rent from a supplier — the module is bidirectional). The agreement has 3 tabs: Rental Objects (with prices and period), Maintenance (service plan), Payment Plan (invoice schedule).
Statuses: DRAFT → ACTIVE → SUSPENDED / CLOSED / CANCELLED. Upon confirmation (OK), the system reserves objects for the dates and the agreement moves to ACTIVE. It can be suspended (SUSPENDED — during unplanned repair) and resumed. The agreement closes automatically (CLOSED) when all objects are returned.
From the document menu: Create Invoice, Calculate Payment Plan, Create Issue/Return Act, Suspend, Cancel.
How does scheduled maintenance work — the “Maintenance” tab?
Scheduled maintenance is a critical feature for a rental business. Without it, equipment breaks down with the customer in the middle of the rental.
The Rental Agreement has a dedicated “Maintenance” tab with a list of scheduled service tasks. For each:
- Service type — e.g., “brush replacement”, “air intake cleaning”
- Description — details
- Interval — in calendar days OR by meter reading (e.g., “every 100 motor hours”)
- Planned and last date
- Status: PLANNED → IN_PROGRESS → DONE
- Who pays: CLIENT (customer pays separately) or INCLUDED (bundled into rental price)
The meter-based interval works on real runtime: each return updates the new reading, compared with start — when the difference exceeds the interval, the system signals “time for service.”
Service work execution is handled in a separate Service Management module.
How is pricing set and invoices issued?
The price is always set per day — from the price list. The rental period (day/week/month + quantity) is not a tariff but the billing frequency: it defines how often to issue an invoice.
Example: price $50/day, period “month”, rental for 90 days → 3 monthly invoices. Or: price $20/day, period “week”, rental for 21 days → 3 weekly invoices.
The invoicing moment is also configurable: at the start of the period (prepayment) or at the end (postpayment). The “Payment Plan” tab shows the invoice schedule with statuses PLANNED → ISSUED → PAID. The “Create Invoice” command generates an invoice from the standard Sales module.
Payment is handled via invoices and prepayments. POS and fiscal receipts are not used for rental — rental isn’t retail. Financial control — through management accounting (planned vs actual revenue, customer receivables).
How is equipment condition tracked at check-out and return?
Rental Issue Act: condition at check-out, accessories and bundled items, meter reading, photos (as document attachments). Customer signs — it’s a legal document.
Rental Return Act: new meter reading (difference = runtime), condition at return, damage notes, missing parts, target status — AVAILABLE (back to the pool for next rentals) or MAINTENANCE (straight to repair without intermediate operations).
If the manager records damage or missing parts, or sets target status to MAINTENANCE — the “Has Issues” flag is automatically set. In the returns list, problematic items are immediately visible.
In any customer dispute — there’s a signed act with documented condition. Not “your word against mine.”
AI agent and MCP for rental managers
ERPJS supports the MCP protocol — an AI agent has direct read/write access to the system. The rental manager can ask the agent in Telegram without switching to the UI:
- “Which units are available from May 15?”
- “When is the next service for SN-001?”
- “Create a Rental Order for hammer drill SN-001 from May 15 to 17”
Documents are created as drafts requiring user confirmation. Real case — AI agent created 3 documents from a single Telegram message.
Frequently Asked Questions
Does ERPJS support hourly rental?
No, the Rental module is designed for long-term rental — from one day. Price is set per day, billing period — from day to month. For hourly bookings (e.g., services) there’s a separate Booking module.
How does ERPJS distinguish rental from product sale?
Through a separate document type and the Rental Object entity with a serial number. A sale removes the item from stock permanently, a rental temporarily changes status (RENTED) and returns the unit to the catalog after return.
How to track equipment condition at check-out and return?
Through two documents: Issue Act (condition, accessories, meter reading, photo) and Return Act (new reading, damage notes, missing parts, target status). In disputes there’s a signed document with documented condition.
How to manage scheduled maintenance for rented equipment?
The Rental Agreement has a “Maintenance” tab — a list of scheduled tasks with interval in days or by meter reading. Status lifecycle: PLANNED → IN_PROGRESS → DONE. Who pays is also tracked — customer or owner.
Can a unit be booked for two overlapping dates?
No. ERPJS doesn’t allow creating overlapping bookings for a single unit — it’s validated at the code level. The manager sees the load on the calendar in the Resource Manager and picks free slots.
Can the module be used for renting apartments, cars, halls?
Yes. The module is universal for any long-term rental — equipment, real estate, vehicles, exhibition props, containers. The same base logic: contract for period, check-out, return, payment plan.
How is payment handled for rental?
Payment through invoices and prepayments from the standard Sales module. POS cash register and fiscal receipts are not used for rental — rental isn’t retail sales. The invoice schedule is generated automatically from the agreement’s payment plan.
Try ERPJS for your rental business
Free plan with no feature or time limits. Set up your unit catalog, first bookings and maintenance plan in a single day. Sign up →