From listing the unit online to paying the agent — seven connected stages on Odoo: public front, pipeline and reservation, inventory, contracting and payment, owner portal, collection-linked commissions, and a decision dashboard.
A property developer does not just need an inventory system. It needs the journey to start when the unit is listed online, run through the lead, the viewing, the reservation, the contract, the instalments and the collection, and end at the agent's commission and the owner's service after handover — in one system, not seven spreadsheets.
That is what we built on Odoo: seven connected stages, each feeding the next, every figure with a single source.
Each project gets a public web page showing available units with prices, areas, floor plans and payment schedules, alongside project indicators (unit count, delivery date, completion) and an interest form.
When a visitor registers interest, they enter the system directly as a lead linked to the unit they viewed — no manual entry, and no enquiry lost in somebody's inbox.
And crucially: what the website shows is the system's own register, moment by moment. A sold unit disappears; a reserved one shows as reserved with a “notify me if it frees up” option. No unit is sold twice, and nothing is advertised that is no longer available — an embarrassment every off-plan seller knows.
Customers move through clear stages: qualified → viewing → temporary reservation → contract. A temporary reservation has an expiry, and the system alerts well before it lapses so the agent or manager can decide: extend, or release the unit to another buyer.
This is precisely where developers leak sales: a unit reserved for a lukewarm buyer stays off the market for weeks and nobody notices.
The hierarchy runs from project to phase, block, building, floor and finally the unit — with each unit linked to its plot, plan number, title deed number and subdivision date. That linkage is what separates a system designed for the Saudi and Egyptian markets from any generic real estate product.
Each unit carries its full classification: type (apartment, villa, shop, storeroom, parking), purpose (sale or lease), finishing, view, areas, bedroom, bathroom and parking counts, and ownership type — company-owned or third-party owned.
Each unit has a sale price and a net price per square metre, plus a full payment plan: down payment, second instalment, recurring instalments with count and value, delivery payment and maintenance deposit — with items charged above the price clearly flagged. The plan is shown to the buyer as an indicative preview before the binding schedule is issued with the contract.
The system tracks due, collected and overdue instalments per contract, and manages cheques in their own register: number, bank, buyer, unit, due date and status (received, collected, bounced) — so a bounced cheque becomes a visible event on the dashboard rather than a month-end surprise.
The relationship does not end at handover. Owners get a portal where they raise service and maintenance requests and review their compliant invoices, outstanding balance and payment history.
Each owner gets a monthly statement that explains itself: rents collected from their units, less management fees, less maintenance costs with invoices attached — down to the net transfer and its date. No manual statement, and no monthly argument about where the number came from.
Maintenance tickets are classified with an expected cost and an auto-approval ceiling: below the ceiling, work proceeds and is documented; above it, the owner decides. Other decisions — a new lease offer, a renewal — arrive in a “waiting for your decision” panel with options: approve, reject, negotiate.
This is not only customer service — it turns third-party property management into a sellable product on an annual contract, with recurring revenue and tracked collection instead of manual follow-up.
This is the feature that saves real money. Commission schemes are defined once — an external broker at a percentage of contract value, a sales agent at another — and the system ties payout eligibility to the actual percentage collected from the customer.
Commissions move through states: reserved → payable → invoiced → paid. As long as collection has not reached the agreed threshold, the commission stays reserved and the system states the reason plainly. The result: no commission paid on money that never arrived.
A system does not succeed if it lives only on management screens. The agent interface shows what they need for the day: monthly target and standing within the team, today's appointments with each status, their pipeline from qualified to signature, and alerts on reservations about to expire — plus one button that generates a PDF quotation with unit specifications and payment schedule and sends it to the customer over WhatsApp.
Most importantly: their commission is in front of them without ambiguity — how much is payable and how much is held pending their customers' payments. Collection turns from a chase run by finance into the agent's own interest.
An executive dashboard showing month sales against target, collection against due, overdue amounts, absorption rate and net cash flow — then moving from display to action through a “decisions waiting for you” panel:
Yes. Each unit has a defined purpose (sale or lease) with an independent path: sales with an instalment plan and ownership contract, leasing with contracts, recurring payments and renewals.
Yes — it is built on top of it: contracts, instalments, cheques and commissions generate their entries and documents inside Odoo accounting itself, including e-invoicing for the Saudi market.
Yes. Each unit has an ownership type — company-owned or third-party owned with the owner's details — which serves property management companies, not only developers.
Yes. Schemes are defined with their percentages, conditions, payee and the release condition tied to collection percentage, then applied automatically to contracts.
Tell us about your business and what you want to improve. We reply within one business day — in Arabic or English — with a clear next step.