Retention releases without a structured workflow are how construction companies in Dubai leak cash and lose audit trails on completed work.
Start here
- Construction ERP — project-level financial controls including retention tracking
- Approval matrix — configure who can approve retention releases by amount
- Audit logs — every retention release decision is recorded with timestamp and approver
How retention works in UAE construction
Most subcontractor contracts in the UAE hold back 5-10% of each progress payment as retention. Half is released at practical completion, the rest after the defects liability period (typically 12 months).
The problem is not the policy — it is tracking which contracts have pending retention, what conditions must be met before release, and who actually approved the payment.
What a retention release workflow needs
- Retention register — every active contract with retention balance, release conditions, and target dates
- Trigger event — practical completion certificate, defects liability expiry, or client release instruction
- Evidence attachment — completion certificate, snag list sign-off, or client letter must be attached before approval
- Approval gate — retention releases above a threshold require senior approval via approval policies
- Payment execution — approved retention flows into vendor payments with the retention flag
Controls that prevent early or unauthorized releases
- Block retention release if the contract status is not
completedordefects-liability - Require document evidence before the approval button is enabled
- Separate the person who certifies completion from the person who approves payment
- Log every status change in audit logs — no silent overrides
Monthly retention review
Run a monthly report of all contracts with pending retention balances. Sort by release date proximity. Flag any retention that has been held beyond the contractual period — these are liabilities that need resolution, not indefinite parking.
Track total retention exposure per project and per subcontractor. This is a cash flow number your finance team needs for month-end close.