Construction procurement software for Saudi Arabia from requisition to three-way match
IntellaQ Flow runs the full procure-to-pay cycle for contractors: requisitions raised straight off a BOQ line or cost code, approvals routed by value and project, quote comparison, and purchase orders that post committed cost against the budget the moment they are issued. Site receiving, store stock, transfers between projects, wastage and subcontractor material issue all feed the same cost ledger. Supplier invoices arrive as ZATCA Phase-2 e-invoices and are matched three ways against the PO and the goods receipt before anyone can post them.
From BOQ line to committed purchase order
Every request starts against a budget line, so nobody orders blind and nothing arrives without an owner.
Requisitions raised from the BOQ or budget
A site engineer picks the cost code or BOQ item and sees the budget, what is already committed and what remains before submitting. The requisition carries the project, the required-on-site date and the specification, so procurement is not guessing.
- Linked to BOQ item, cost code and work package
- Remaining budget shown at the point of request
- Required-on-site date drives buying priority
- Attach drawings, specs or material approval submittals
Approval workflows that match your delegation of authority
Route by value band, project, cost code or category — anything above a threshold goes to the project manager, then the commercial manager. Every approval, rejection and comment is stamped with user and time, in Arabic or English.
- Value-band and category-based routing
- Project manager, QS and finance steps
- Budget-exceeded requests flagged for a decision
- Audit trail that stands up to internal and external audit
Supplier quotes and side-by-side comparison
Send an RFQ to a shortlist, capture quotations against the same line items, and compare unit rate, lead time, payment terms and total landed cost. Record why a supplier was awarded so the file stands up months later.
- One RFQ to several suppliers, identical line structure
- Line-by-line rate and lead-time comparison
- Approved-supplier and material approval status visible
- Award reason recorded on the file
Purchase orders that become committed cost
Approving a PO posts committed cost to the cost code the same moment it is issued, not when the invoice arrives weeks later. Budget vs committed vs actual and the estimate at completion move immediately — that is the whole point of commitment accounting.
- Commitment posted by cost code on PO approval
- Open commitment released as goods are received and invoiced
- PO amendments and variations tracked against the original
- Feeds EAC in construction job costing
Delivery scheduling and expediting
Track promised versus actual delivery dates per PO line, flag orders running late against the required-on-site date, and see which packages threaten the programme. Partial deliveries are normal on site and are handled as such.
- Promised vs required-on-site date per line
- Late and part-delivered order list
- Supplier delivery performance visible over time
- Call-off orders for bulk materials
Site stores, issue, wastage and invoice matching
Once material is on site the questions change: what actually arrived, where it sits, what it was consumed on, and whether the invoice deserves to be paid.
Goods receipt at the site store (GRN)
The storekeeper receives against the PO on a phone or tablet at the gate — full or partial quantity, short supply, damaged or rejected items, delivery note number and vehicle details. The GRN is what converts commitment into actual cost.
- Partial receipts and over-delivery tolerance
- Rejections and returns recorded with reason
- Delivery note and photo attached to the receipt
- Actual cost posted to the cost code on receipt
Site-store stock and transfers between projects
Each project or store holds its own balances for cement, steel, blocks, cable, pipe and consumables. Material moved from one site to another transfers the value with it, so the receiving project carries the charge and the sending project is credited.
- Per-store and per-project stock balances
- Inter-project and inter-store transfer notes
- Issue to a cost code, work package or activity
- Reorder levels and slow-moving stock visibility
Wastage, consumption and reconciliation
Compare material consumed against what the BOQ implies for the work executed, and post the difference as wastage with a reason. Periodic physical counts reconcile the book balance to the yard, and the variance goes to the right cost code.
- BOQ-implied vs actual consumption per cost code
- Wastage posted with reason and approval
- Physical count sheets and variance adjustment
- Shrinkage visible early, not at year end
Material issued to subcontractors
When you supply material to a subcontractor — steel, blocks, formwork, diesel — it is issued against their subcontract and recovered from their next payment certificate as a deduction, alongside retention (ضمان أعمال) and advance recovery.
- Issue notes signed against the subcontract
- Recovery deducted on the subcontractor certificate
- Free-issue vs chargeable material distinguished
- Ties into subcontractor and retention management
ZATCA supplier invoices and 3-way match
Supplier invoices are captured as ZATCA Phase-2 e-invoices with VAT number, QR and line detail. The system matches invoice to purchase order to goods receipt on quantity and rate, and holds anything outside tolerance until someone with authority releases it.
- Invoice vs PO vs GRN quantity and price match
- Tolerance rules and a hold-and-approve exception queue
- Supplier VAT number and ZATCA fields validated
- Input VAT captured correctly for the VAT return
One cost ledger, not a parallel spreadsheet
Requisition, commitment, receipt, issue, wastage and invoice all post to the same cost code, so the procurement picture and the job cost report never disagree. FlowAI can answer questions such as which cost codes are over-committed this month, in Arabic or English.
- Committed, received, issued and invoiced in one view
- Cost codes shared with job costing and IPC billing
- Hijri and Gregorian dates, SAR throughout
- Arabic and English interface for site and head office
Related: construction job costing by cost code · subcontractor and retention management · BOQ and tender management · ZATCA Phase-2 progress and IPC billing · construction ERP for Saudi Arabia
The procure-to-pay cycle on a construction project
Requisition against the budget
Site raises a requisition tied to a BOQ item or cost code with a required-on-site date. Remaining budget is visible before it is submitted.
Approve and source
The requisition routes through your delegation of authority. Procurement issues an RFQ, collects quotations and compares rate, lead time and terms.
Issue the PO and commit the cost
On approval the purchase order is issued and committed cost posts to the cost code immediately, updating budget vs committed vs actual and the EAC.
Receive at the site store
The storekeeper records a GRN against the PO — partial quantities, rejections and delivery note included. Stock and actual cost move at the moment of receipt.
Issue, transfer, reconcile
Material is issued to work packages or subcontractors, transferred between projects where needed, then counted and reconciled with wastage posted to a cost code.
Match and pay the supplier invoice
The ZATCA e-invoice is matched three ways against PO and GRN. Clean matches flow to payment; exceptions sit in a queue with a named owner.
Questions contractors ask
What does "committed cost" mean, and why does it matter more than actual cost on a construction project?
Actual cost only tells you what has already been invoiced, which on a construction project can lag the real position by weeks. Committed cost is the value of purchase orders and subcontracts you have signed but not yet been invoiced for. Add commitments to actuals and you get a far more honest estimate at completion for each cost code. In IntellaQ Flow, approving a purchase order posts the commitment straight away; goods receipt converts part of it into actual cost and releases the rest of the open commitment. That is why a PO here is a cost event, not just a document sent to a supplier.
Can a requisition be blocked if it would take a cost code over budget?
Yes, and you choose the behaviour per cost code or per project. The usual options are: warn the requester but allow submission; require an extra approval from the commercial manager or project director when committed plus actual would exceed the budget; or block outright. Remaining budget is shown to the requester before they submit, which stops most of these cases before they reach an approver. Whichever setting you use, the exception and the person who released it are recorded.
How does the 3-way match work with ZATCA Phase-2 supplier invoices?
The supplier invoice is captured with its ZATCA fields — supplier VAT number, invoice reference, QR and line detail — and matched against the purchase order and the goods receipt notes. The system checks that the quantity invoiced does not exceed the quantity received and that the unit rate matches the PO rate, within the tolerance you set. Clean matches are ready to post and pay. Anything outside tolerance is held in an exception queue with the reason shown, so someone with the right authority either corrects the receipt, raises a PO amendment, or approves the difference. Input VAT is taken from the same record for your VAT return.
We move cement and steel between projects constantly. Does the cost follow the material?
Yes. A transfer note moves the quantity from the sending store to the receiving store and moves the value with it — the receiving project's cost code is charged and the sending project is credited at the transfer valuation you configure. Without this, the project that happened to buy the material carries cost it never consumed and job costing is wrong on both sides. Transfers require approval and leave a signed record for each store.
Our storekeepers work on site with poor connectivity and mostly in Arabic. Is that workable?
Goods receipt, issue notes and transfers are built for a phone or tablet at the gate — a short form with a photo attachment rather than a desktop screen. The interface runs in Arabic or English per user, dates can be Hijri or Gregorian, and the system is hosted in-Kingdom. If site connectivity is genuinely intermittent, raise it during the demo and we will be specific about what works offline and what does not, rather than promise something we cannot deliver.
How does procurement connect to subcontractor payments and progress billing?
They share the same cost codes and the same ledger. Material you issue to a subcontractor is recorded against their subcontract and appears as a recovery deduction on their next payment certificate, next to retention and advance recovery. On the client side, the cost committed and incurred against each cost code feeds the job cost report and the estimate at completion behind your progress or IPC (مستخلص) applications. Nobody re-keys between a procurement system, a subcontract ledger and a billing spreadsheet.
Can we bring across our supplier list, open POs and current stock?
Yes. Suppliers, the cost code structure, open purchase orders and opening stock balances per store are imported at implementation, usually from Excel exports of whatever you use today. Open POs come across with their remaining committed value so the budget picture is right from day one. Migration scope is agreed before the project starts so there are no surprises, and typical implementations go live in weeks rather than quarters.
See procurement, site stores and job cost in one system
Tell us how your business works. We'll show you the integrated ERP & CRM that fits it — and start building next week.

