عربي
Sectors

Real Estate Development

01

One cycle connects the unit from sales launch to handover

A real-estate developer does not just sell units. Every unit moves through four connected cycles at the same time:

  • Inventory that moves from available to reserved, then contracted, then handed over.
  • A commercial journey that starts with a lead and ends in a contract and a commission.
  • A financial commitment that runs from the down payment to the last installment.
  • Construction cost that accumulates through contractor agreements, payment certificates, and variation orders.

Split these cycles apart and you get four versions of the truth: the unit’s status in sales, the customer’s position in collections, the cost recorded in finance, and what is actually happening on site.

That is why the system is designed around the full journey of the project and the unit, not around the sales or accounting app in isolation.

02

Before the sales launch

The system starts with the company’s business model. Does it own the land, or partner with a landowner in exchange for a share of revenue or a number of units? Is construction handled by a main contractor, or by several contractors and subcontractors?

These are not just profile details: they determine how commitments are recorded, how cost and revenue are allocated, and how contracts and payment certificates are managed.

The real-estate product is then built in the system on a clear hierarchy:

Project → Phase → Building or block → Unit

Each unit carries its core data: type, area, floor, finishing, price, current status, and expected handover date.

Units are then linked to pricelists, payment plans, and sales launch phases, so part of the project can go to market at a different price and plan without touching the other phases.

The Go / No-Go approval

A unit does not enter the market just because it was added to the system. Before the sales launch, the company prepares and approves:

Which units are cleared for release.
Prices and discount limits.
Payment plans and the terms for using them.
Sales launch materials and information.
Sales team readiness.
Participating brokers and freelancers.
Lead registration and attribution rules.

It all ends with a documented Go / No-Go decision. Only after approval do the selected units become inventory available for sale.

Inside Odoo
Property units defined with their prices in Odoo
Units defined before the sales launch, each with its name and price, so nothing can be reserved that does not exist in the system.
03

From lead to contract

Developers typically sell through an in-house sales team, brokers, and freelancers, and the same customer may arrive through more than one channel.

Here the CRM’s job is not just storing customer data. It has to answer:

Who entered the customer first?
Who owns the right to follow up?
How long does lead protection last?
When does ownership pass to another rep or channel?
Who earns the sale attribution?
How do we prevent duplicates, or disputes over a customer after signing?

The system uses phone number, national ID, and email to detect duplicates, and records each lead’s source, owner, and stage history. Any reassignment or change in attribution stays in the audit trail.

Sales channels and what each one can do

All three channels work on one CRM and one inventory, with different access rights:

In-house sales team

Manages the customer, works the opportunity, shows available units, and issues the commercial offer.

But cannot override approved prices, discounts, or payment plans without sign-off.

Broker

Registers the lead and follows it through the protection period, and earns the commission once its conditions are met.

But cannot change prices, reserve a unit outside availability, or offer the customer an unapproved exception.

Freelancer

Refers opportunities with narrower rights than a broker: can register a lead and track its status within set limits.

But cannot see customer lists or the full inventory, and cannot edit offers, prices, or unit data.

Separating access rights protects company data, blocks unapproved promises, and makes each channel accountable only for what it actually controls.

The customer moves from initial interest to contact, qualification, and a site visit. Then commercial conversion begins. At this stage, three distinct commitments must be kept apart.

Expression of Interest (EOI)

Registered against the project before a specific unit is chosen, and may give the customer priority in the sales launch. The amount remains a temporary commitment until it converts into a reservation or is refunded per policy.

Reservation

Tied to a specific unit, blocking its sale to anyone else for a defined period. If payment or paperwork is not completed in time, the reservation expires and the unit returns to available inventory automatically.

The contract

The final commitment that locks in the unit, the price, the payment plan, the handover date, and the remaining legal terms.

A reservation does not become a contract before the customer’s data, documents, discounts, exceptions, and channel attribution are reviewed. Once the contract is signed, the system generates the installment schedule and links it to the customer, the contract, and the unit.

So an EOI payment is never treated as a reservation, a reservation is never treated as a contract, and no unit stays blocked by a process that never finished.

Inside Odoo
A property buyer's journey from inquiry to contract in Odoo
The customer journey on a specific unit: new inquiry, then viewing, initial reservation, and contract, with each stage’s value in front of the sales team.
04

Commission is part of the sales cycle

Booking the deal does not mean the commission is ready to pay.

Commission passes through several gates: a valid registered lead, a confirmed reservation, a signed contract, collection of the required payment, and a review period that ends with no cancellation.

Only then is it cleared for payout, after verifying the broker’s details and tax documents.

And if the contract is canceled after the commission was paid, the system applies the clawback policy (a refund or a deduction from future dues), keeping the cancellation reason and its full financial impact on record.

05

After the contract

Signing the contract opens the longest phase of the relationship: installments, arrears, service requests, amendments, and handover.

The system generates the payment schedule from the approved contract, then tracks every installment from the approach of its due date to full payment.

An installment moves through clear states, such as:

Scheduled → Due soon → Due → Partially or fully paid → Overdue

When a payment is late, the actions defined by company policy kick in: reminders, promises to pay, penalties, escalation, or rescheduling.

Placing an installment on hold during a dispute

An installment can enter a Frozen state when a dispute or open request affects it: a rescheduling request, a cancellation, or a disagreement over the contract.

Placing it on hold does not delete the installment or mark it as paid. It pauses collection actions and penalties until the case is resolved.

Once a decision is made, the installment resumes its original schedule, moves to a new one, or is settled per the financial and legal approval.

The system separates three roles:

Collections

Tracks dues and arrears and handles customer follow-up.

Customer service

Receives requests and gathers their reasons and documents.

Finance

Executes the approved financial impact: a settlement, a refund, or a new schedule.

This separation prevents one employee from receiving the request, changing the financial commitment, and executing it, all without review.

06

Exceptions are never handled by hand

After signing, requests like these appear:

Rescheduling installments.
Deferring a payment.
Changing the unit.
Adding or amending a partner on the contract.
Assigning the contract to another party.
Waiving a penalty.
Canceling the reservation or the contract.
Refunding amounts.

Every request starts as its own case, with a reason, documents, an owner, and a deadline. It then passes through the required approvals (commercial, finance, legal) depending on the size of its impact.

Take rescheduling: collections reviews the payment history, finance calculates the principal and penalties, commercial sets the allowed alternatives, and legal issues the addendum.

Once the addendum is approved, a new installment schedule is created. The old schedule is closed and kept on record, never deleted or edited as if it had never existed.

07

Cancellation resets more than one thing

Canceling an EOI is not the same as canceling a reservation, and canceling a reservation is not the same as terminating a signed contract.

In every case, the system must determine:

The refundable amount.
Fees or penalties due.
The unit’s status after cancellation.
The impact on commission.
The journal entries and settlements.
The documents and approvals required.
The cancellation reason and date.

The unit does not return to inventory automatically before the legal and financial impact is closed, and no money is refunded before calculating what was collected and what deductions apply.

This is one of the highest-risk areas in real estate: it touches the customer, the unit, the commission, cash, and reputation all at once.

08

Construction and project cost

On the other side of the customer cycle, the system runs contractor agreements, payment certificates, and execution cost.

The cycle starts with the contractor’s agreement, the BOQ, and the execution program. The contractor submits a payment certificate, project management reviews the progress percentage, and Cost Control reviews the quantities, variation orders, retention, and advances.

Only after approval does the certificate move to accounts payable and treasury for payment.

Cost is allocated at clear levels:

Project → Phase → Building or block → Cost item

It can be analyzed by contractor, by type of work, original contract vs. variation orders, committed cost vs. actual cost, and retentions and advances.

Which means management can see:

What is contracted but not yet executed.
What is executed and approved.
What is recorded but not yet paid.
What has actually been paid.
The variance between budget and cost to date.
The impact of variation orders on the project and phase.
09

Collections are not revenue

Collecting money from a customer does not automatically make it company revenue, just as receiving a contractor’s payment certificate does not make its cost fully due without approval.

The system keeps these apart:

Customer collections Contractual commitment Revenue recognition Contractor payment certificates Accumulated cost Advances and retentions Settlements and refunds Sales commissions

When revenue is recognized, and which journal entry each event triggers, is decided with the finance team based on company policy and the nature of the contracts, never assumed in advance by the system.

Inside Odoo
A unit sale contract with an installment schedule in Odoo
The unit sale contract posted as an invoice on its terms: a 20% down payment and eight quarterly installments, with the amount due tracked automatically.
10

From readiness to handover

As the handover date approaches, the system brings the unit’s construction status together with the customer’s financial and legal position.

A unit does not jump straight from Contracted to Handed over. It first passes through Ready for handover after confirming:

The unit is physically ready.
The customer’s installments and outstanding balance.
All required documents are complete.
Open requests or exceptions that affect handover are closed.
The handover file and protocol are prepared.

Once complete, the handover is recorded, and the unit, customer, contract, collections, and amendments stay linked in one file.

11

Governance sits above every operation

Having workflows is not enough: decision authority has to be clear at every stage.

The system relies on four connected layers:

Approval matrix

Defines who approves discounts, payment-plan changes, waivers, rescheduling, cancellations, variation orders, and payment certificates.

Audit trail

Records who changed the data, when it changed, why, and the value before and after the change.

Status dictionary

Standardizes what unit, lead, reservation, contract, installment, and request statuses mean, so no two departments define the same status differently.

Management indicators

Connect sales, inventory, collections, and cost, instead of tracking each department in isolation.

The indicators cover: lead flow and conversion; units available, reserved, and contracted; collections and arrears; cancellations; commissions; and actual cost vs. budget.

12

Who owns the decision?

In smaller companies one person may wear more than one hat, but every decision must still map to a clear role, so accountability never gets lost between departments.

Account Manager
Decisions they own
Prices, payment plans, which units go to market, and commercial discount limits.
CRM Manager
Decisions they own
Lead ownership, duplicate prevention, channel attribution, and customer reassignment.
Direct Sales
Decisions they own
Qualifying the customer, site visits, the offer, and moving them to EOI or reservation.
Sales Admin
Decisions they own
Confirming reservations, verifying availability, documents, and reservation validity.
Legal / Contracts
Decisions they own
Contracts, addenda, assignments, cancellations, and legal changes.
Customer Service
Decisions they own
Logging after-sales requests, verifying them, and flagging what needs escalation.
Collections
Decisions they own
Tracking dues, arrears, promises to pay, and default cases.
Finance: AR / GL
Decisions they own
Customer collections, settlements, refunds, journal entries, and receivables.
Finance: AP / Treasury
Decisions they own
Contractor dues, payments, retentions, advances, and payment timing.
Engineering / Project Management
Decisions they own
Approving progress percentages, reviewing payment certificates, and unit readiness for handover.
Cost Control
Decisions they own
Budget vs. actual, commitments, variation orders, and cost allocation.
Channel Operations
Decisions they own
Registering brokers and freelancers, protection periods, commission eligibility, and attribution disputes.

Owning a decision does not mean making it alone. Some cases pass through more than one department per the approval matrix, but one party always owns starting the decision and seeing it through.

13

What does Odoo actually run?

Odoo brings into a single cycle:

Projects, phases, buildings, and units.
Pricelists, payment plans, and sales launch phases.
Leads, the sales team, brokers, and freelancers.
Customer ownership rules, duplicate prevention, and channel attribution.
EOIs, reservations, contracts, and installment schedules.
Collections, arrears, and after-sales requests.
Rescheduling, changes, assignments, cancellations, and refunds.
Sales commissions: earning conditions and clawbacks.
Contractor agreements, payment certificates, and variation orders.
Project cost, budget, and cash flow.
Approvals, access rights, and the audit trail.
Operational, financial, and management reporting.

The percentages, periods, discount limits, penalties, approval authorities, and accounting entries are all defined during the company analysis, because the system has to enforce your actual policies, not a generic fixed template.