Rental module — Rental fleet management
eyeot brings the rentable catalog, the fleet register, reservations, contracts, condition reports and deposits together in a single module. The availability engine prevents double-bookings, pricing adapts to the rented duration and every return relies on a contradictory condition report. The module can be activated independently, per organization, and couples with the other ERP building blocks (Stock, Maintenance, Finance, DMS, Delivery).
For renters of equipment, machinery or technical and event gear in small and mid-sized businesses that want to make their reservations reliable, track a fleet spread across several sites and secure deposits and condition reports.
Each reservation places a calendar hold. For serialized units, a PostgreSQL exclusion constraint and a lock prevent any overlapping rental on the same dates; for fungible stock, availability is computed from the committed quantity. Provisional reservations (time-limited quotes), firm or released.
Each unit carries its serial number, fleet number, barcode, lifecycle status, current site and meters (hours, kilometers, fuel). Transfers between sites follow a state machine (pending → in transit → completed) and block availability during transport.
Reusable rate cards define tiers by hour, half-day, day, week or month (28 days). The engine automatically selects the cheapest combination covering the requested duration (e.g. 9 days = 1 week + 2 days). The rate card is resolved from the item to the category then the organization default.
Departure and return condition reports with inspection points (correct, worn, damaged, missing), photos archived in the DMS and meter readings. The report is locked and immutable after signing; the departure→return delta feeds the count of damages and missing items.
Each contract (reference LOC-YYYYMMDD-NNNN) follows a guarded state machine: draft, reserved, confirmed, checked out, returned, closed. Line-by-line partial returns, extensions and unit swaps are handled. Business and individual customers, with encrypted personal data.
Deposits rely on Stripe (pre-authorization/hold, capture, refund) without ever storing a card number. Each withholding from a deposit is documented (reason, amount, supporting document, condition-report point) and excludes normal wear and tear.
Delivery and pickup stops with electronic proof of delivery (signatory and photo), geolocation and a public tracking page via a secure link, with no account or personal data exposed. Couples with the Delivery module via events.
The departure and return condition reports document the state of the equipment when handed over then returned. Photos archived in the DMS and immutable locking of the report after signing constitute an enforceable record in the event of a dispute over damages.
The legal type of the deposit is explicit (earnest payment/down payment, French Civil Code art. 1590). Any withholding is justified (reason, amount, document, reference to the condition-report point) and excludes normal wear and tear, in line with French DGCCRF principles.
Policies distinguish business and individual customers: right of withdrawal (article L221-18 of the French Consumer Code) and safeguards against automatic renewal (French Civil Code art. 1738). The generated terms and conditions carry a 'legal review' notice.
Contracts and condition reports can be signed electronically (advanced signature, French Civil Code art. 1366/1367 and decree 2017-1416): hashed one-time code, timestamping, sealing by document fingerprint and an audit log. eIDAS is the EU regulation on electronic identification and trust services.
Customers' personal data is encrypted (Fernet) with a search hash and a configurable retention period; anonymization is provided for. Deposits rely on an opaque payment identifier (Stripe), never a card number.
eyeot is a French all-in-one ERP for small and mid-sized businesses, hosted in France and GDPR-compliant. Free for individuals (1 user, every module); simple team packs for companies.