Work Order (WO)
A Work Order is the formal, legally binding agreement issued to a subcontractor for executing defined work packages on a project. It is the subcontractor equivalent of the Purchase Order — while a PO procures materials from a vendor, a WO procures labor and services from a subcontractor. Work Orders specify the work items (linked to the project’s BOQ/scope), agreed rates, quantities, payment terms, recovery provisions, and completion timelines.
Work Orders are created after evaluating proposals received through the RFP process. They serve as the contractual document governing the subcontractor relationship, linking scope execution to progress measurements, running bills, and payment.
Subcontractor Procurement Workflow
The Work Order sits at the center of the subcontractor management lifecycle. The complete flow is:
| Step | Document | Module | Purpose |
|---|---|---|---|
| 1 | Work Requisition (WR) | Operations | Site team identifies scope of work that needs to be subcontracted and raises a formal request. |
| 2 | Request for Proposal (RFP) | Procurement | Procurement team creates an RFP from the WR, inviting multiple subcontractors to bid on the work package. |
| 3 | Vendor Offers | Procurement | Subcontractors submit their proposals with rates and terms. Offers are evaluated using comparative analysis. |
| 4 | Work Order (WO) | Procurement | Selected subcontractor is awarded the contract. WO is generated from the winning offer with all rates and terms. |
| 5 | Measurements | Procurement | Site engineers record actual work progress against WO line items using the 3-tier measurement system. |
| 6 | Running Bill | Finance | Periodic bills are raised based on certified measurements, less recoveries and retention. |
| 7 | Payment | Finance | Payment is processed to the subcontractor based on the approved running bill amount. |
A Purchase Order procures materials (received via MRN into stock). A Work Order procures services and labor (tracked via measurements on site). Both follow similar patterns: vendor offer → order → approval → receipt/measurement → billing → payment. However, WOs include unique constructs like recovery items, resources provisioned, and the multi-tier measurement system that POs do not have.
WO List Grid
The Work Order list displays all work orders created within the selected date range. The default filter period is the last 30 days.
| Column | Description |
|---|---|
| Code | System-generated WO code. Format: WO/{JobCode}/{SeqId} (e.g., WO/MSD44/10532). Links the WO to the job it was raised for. |
| WO Description | Free-text description of the work scope (e.g., “PLASTERING WORKS FOR BLOCK A”, “MEP INSTALLATION PHASE 2”). |
| Subcontractor | Name of the subcontractor the work order was issued to (from Vendor Directory). |
| WO Date | Date the WO was created (DD-MM-YYYY format). |
| Job Code | The project/job code this WO is charged against. |
| Job | Full name of the job (e.g., “Muscat Sohar Highway”, “Marina Tower”). |
| Net Amount | Total value of work items before order-level tax, recoveries, and other charges. |
| Gross Amount | Final WO value including all taxes, less recoveries, plus other charges. |
| Currency | WO currency (e.g., OMR, INR, AED, USD). |
| Status | Current WO status as a color-coded badge (Draft, Approved, Cancelled). |
Row Actions
Each WO row has a dropdown action menu:
| Action | What It Does |
|---|---|
| View | Opens the WO as a printable SSRS report document with full header, work items, terms & conditions, and signature blocks. |
| Items | Opens the WO detail view to see/edit work items, recoveries, resources, taxes, and payment terms. |
| Details | Expands an inline detail panel below the row showing key WO information. |
| Approve | Submits the WO for approval (only visible for Draft status WOs). Triggers the configured approval workflow. |
| Amend | Creates a revised version of an approved WO. Available only for Approved WOs. See Amendments. |
| Measurements | Opens the measurement recording interface to enter progress against WO work items. |
| Cancel | Cancels a Draft WO. Approved WOs with no measurements can also be cancelled with proper authorization. |
WO Header Fields
The WO header captures the overall order details. All header fields are stored in the omni_work_order_header table (41 columns).
| Field | DB Column | Description | Required |
|---|---|---|---|
| WO Code | wo_code | Auto-generated unique identifier. Format: WO/{JobCode}/{SeqId}. Generated by the object sequence system (omni_sp_GetObjectCode). | Auto |
| WO Description | wo_desc | Free-text title describing the work scope (e.g., “STRUCTURAL STEELWORK — PHASE 2 WAREHOUSE”). Supports rich text. | Yes |
| Job | job_id | The project/job this WO is charged against. Determines the subcontractor budget that is tracked. References omni_job_master. | Yes |
| Subcontractor | vendor_id | The subcontractor the work is awarded to. Must be a registered vendor from the Vendor Directory. References omni_party_master. | Yes |
| Vendor Offer | vendor_offer_id | The vendor offer this WO was generated from. Links to the RFP/offer chain for traceability. | If from RFP |
| WO Date | wo_date | The date of the work order. Defaults to today. | Yes |
| WO Currency | wo_currency | The currency in which the subcontractor is paid (e.g., OMR, INR, AED, USD). May differ from the job currency. | Yes |
| Job Currency | job_currency | The base currency of the job/project. Used for budget tracking and cost reporting. | Auto |
| Exchange Rate | job_ccy_exchange_rate | Conversion rate from WO currency to job currency. Set to 1.0 when both currencies are the same. | Yes |
| Expected Start Date | expected_start_date | Date when the subcontractor is expected to mobilize and begin work on site. | No |
| Expected Completion Date | expected_completion_date | Target date for completing the entire scope of work under this WO. | No |
| Billing Address | billing_address_id | Company billing address. Selected from the organization’s configured addresses. | No |
| Notes | notes | Internal notes visible only within JobNext (not printed on WO document). | No |
| Attachment | wo_attachment | File attachments (drawings, specs, scope documents). Linked to the DMS via dms_document_id. | No |
| Monthly Recurring | is_monthly_recurring | Flag indicating whether this is a monthly recurring work order (e.g., facility maintenance contracts). See Monthly Recurring WO. | No |
| Auto Complete | is_auto_complete | When enabled, the system automatically marks the WO as complete when all work items reach 100% measurement. | No |
| Expense Party | expense_party_id / expense_party_type_id | Optional alternate party to whom the WO expense is allocated, with the party type (e.g., staff, vendor, customer). | No |
Order-Level Amount Fields
These fields summarize the WO’s financial totals and are computed from line items and recoveries:
| Field | DB Column | Description |
|---|---|---|
| Net Item Amount | net_item_amount | Sum of all work-item line amounts (quantity × rate for each item). |
| Order Tax Amount | order_tax_amount | Total tax computed at the order level from the tax items table. |
| Discount | discount | Order-level discount amount in WO currency. Applied before gross calculation. |
| Other Charges | other_charges | Additional charges (mobilization fees, special equipment, etc.). |
| Recovery Before Tax | order_recovery_before_tax_amount | Total recovery/deduction amount applied before tax calculation. Reduces the taxable base. |
| Recovery After Tax | order_recovery_after_tax_amount | Total recovery/deduction amount applied after tax calculation. Reduces the gross payable. |
| Net Less Recovery | net_item_less_recovery_amount | Net item amount minus before-tax recoveries. This is the base for tax calculation. |
| Gross Amount | order_gross_amount | Final WO value: Net Items − Recoveries (before tax) + Tax − Discount + Other Charges − Recoveries (after tax). |
Unlike a PO, a Work Order has two recovery points that reduce the payable amount. Before-tax recoveries (e.g., material recovery for cement provided by the company) reduce the amount on which tax is computed. After-tax recoveries (e.g., liquidated damages, penalties) are deducted from the gross amount after tax is applied. This distinction is important for accurate tax computation.
WO Line Items (Detail)
Each WO contains one or more line items representing individual work items being subcontracted. Unlike PO line items that reference materials, WO line items reference work items from the project’s BOQ/scope. Line items are stored in the omni_work_order_detail table (13 columns).
| Field | DB Column | Description |
|---|---|---|
| Work Item | job_work_item_id | The BOQ/scope work item this line references. Links to the project’s Work Breakdown Structure (WBS), ensuring every subcontracted item maps to a defined scope element. This is the critical link between the WO and the project’s scope. |
| UOM | item_uom_id | Unit of measurement for this work item (e.g., Sqm, Cum, Rmt, Nos, Kg). Must match the UOM defined in the scope/BOQ. |
| Quantity | item_qty | Total quantity of work being awarded to the subcontractor for this item. May be the full scope quantity or a partial award. |
| Basic Rate | item_basic_rate | Unit rate for this work item in the WO currency. This is the agreed rate per unit from the vendor offer. |
| Base Amount | item_base_amount | Quantity × Basic Rate. The subtotal for this line item before any adjustments. |
| Offer Detail | offer_detail_id | Links back to the specific vendor offer line item this rate came from, maintaining full traceability. |
| Party | party_id / party_type_id | Optional per-item party assignment. Allows different work items within the same WO to be allocated to different cost centers or parties. |
| Item Notes | item_notes | Per-line notes for special instructions (e.g., “Include scaffolding access”, “Grade 43C steel only”, “Minimum 28-day curing period”). |
| Source PKID | Source_PKID | Reference to the originating document line item (e.g., WR detail line). Used for backward traceability. |
The job_work_item_id field is the key differentiator between WO and PO line items. Every WO work item maps to a specific BOQ/scope item in the project. This enables the system to track scope completion percentage by comparing measured quantities against the total scope quantity, and to compute subcontractor budget burn by comparing WO values against estimated subcontractor costs in the budget.
Creating a Work Order
Work Orders are created from the RFP module after evaluating subcontractor proposals. The standard process follows the WR → RFP → Offer → WO path:
- Raise a Work Requisition (WR) — The site team identifies scope items that need to be subcontracted and creates a Work Requisition specifying the work items, quantities, and required timelines. The WR is approved through the configured workflow.
- Create an RFP from the WR — Navigate to Procurement → RFP and create a new Request for Proposal from the approved WR. The RFP inherits the work items and quantities from the WR.
- Invite subcontractors — Select subcontractors from the Vendor Directory to receive the RFP. Each invited subcontractor can submit their proposal with unit rates, terms, and conditions.
- Evaluate vendor offers — Once proposals are received, review and compare them using the comparative evaluation view. Assess based on total cost, unit rates per item, vendor capability, past performance, and compliance with technical specifications.
- Select the winning offer and create WO — From the selected vendor offer, click Create Work Order. The system auto-populates the WO with all data from the offer: subcontractor details, work items with quantities and rates, and the offer reference for traceability.
- Review WO header — Verify the auto-populated header: WO description, subcontractor, WO date, currency, exchange rate, expected start and completion dates, and billing address.
- Review work items — Check each line item for work item description, UOM, quantity, basic rate, and base amount. Adjust as needed. Ensure each item correctly maps to the project BOQ/scope.
- Configure recovery items — Add any material recoveries, retention amounts, or other deductions that will be applied. See Recovery Items.
- Add resources provisioned — If the company will provide resources (equipment, accommodation, transport) to the subcontractor, define them here. See Resources Provisioned.
- Set payment terms and T&C — Define payment milestones, add terms & conditions, and configure tax items. See Payment Terms.
- Attach documents — Optionally attach supporting documents (scope drawings, specifications, method statements, safety plans) to the WO.
- Submit for approval — Save the WO (status: Draft), then click Approve to send it through the configured approval workflow.
When a WO is generated from a vendor offer, the system carries over: subcontractor ID, all work items with quantities and unit rates, the offer reference (vendor_offer_id and per-line offer_detail_id), and the original scope item links (job_work_item_id). This eliminates manual data entry and ensures full traceability from the offer evaluation to the awarded contract.
Recovery Items
Recovery items represent deductions that the company will make from the subcontractor’s payments. These are contractual provisions defined at the WO level and applied proportionally during each running bill. Recovery items are stored in the omni_work_order_recovery_items table.
Types of Recoveries
| Recovery Type | Description | Example |
|---|---|---|
| Material Recovery | Deduction for materials supplied by the company to the subcontractor (e.g., cement, reinforcement steel, aggregates). The subcontractor’s rate is assumed to exclude these materials. | Company provides cement at AED 18/bag; 500 bags used this period = AED 9,000 recovery. |
| Retention | A percentage of each running bill withheld as security for defects liability. Typically 5–10% of the certified amount, released after the defects liability period. | 5% retention on AED 100,000 bill = AED 5,000 withheld. |
| Advance Recovery | Proportional recovery of advance payments (mobilization advance) made to the subcontractor at the start of work. | 10% mobilization advance of AED 50,000 recovered at 10% from each running bill. |
| Liquidated Damages (LD) | Penalties for delay or non-performance as specified in the contract terms. Applied as a fixed amount or percentage. | AED 500/day for 15 days delay = AED 7,500 LD deduction. |
| Back Charges | Charges for rectification work, damages caused by the subcontractor, or non-compliance with site rules. | AED 3,000 for damage to existing structure during excavation. |
| Other Deductions | Miscellaneous deductions such as insurance premiums, safety violations, or statutory deductions. | AED 1,500 for non-compliance with safety protocols. |
Before-Tax vs. After-Tax Recoveries
Recoveries are categorized into two groups based on when they are applied in the payment calculation:
| Category | DB Column (Header) | When Applied | Tax Impact |
|---|---|---|---|
| Before Tax | order_recovery_before_tax_amount |
Deducted from the net item amount before tax is calculated. | Reduces the taxable base. Tax is computed on Net Items − Before-Tax Recoveries. Material recovery is typically before tax because the subcontractor’s scope excludes these materials. |
| After Tax | order_recovery_after_tax_amount |
Deducted from the gross amount after tax is applied. | Does not affect the tax calculation. Liquidated damages, penalties, and retention are typically after tax because they are deductions from the gross payable, not adjustments to the scope of work. |
Gross Amount = (Net Item Amount − Before-Tax Recoveries) + Tax − Discount + Other Charges − After-Tax Recoveries
The net_item_less_recovery_amount field stores the intermediate value: Net Item Amount − Before-Tax Recoveries, which serves as the taxable base.
Resources Provisioned
The company may provide certain resources to the subcontractor as part of the work order agreement. These are tracked in the omni_work_order_resources_provisioned table and represent the company’s in-kind contribution to the subcontract scope.
| Resource Type | Description | Example |
|---|---|---|
| Equipment / Machinery | Company-owned equipment provided to the subcontractor for executing the work. Usage may be charged or free. | Tower crane, concrete pump, excavator allocated to the subcontractor for the duration of the WO. |
| Accommodation | Worker accommodation provided by the company in labor camps on or near the project site. | 50 bed spaces in the company labor camp at AED 200/bed/month. |
| Transportation | Worker transport from accommodation to the project site provided by the company. | Daily bus service for 50 workers. |
| Utilities | Water, electricity, or other utilities provided at the work location. | Temporary power supply and water connection on site. |
| Materials | Key materials supplied by the company (typically recovered via material recovery items). | Cement, steel reinforcement, and ready-mix concrete supplied free-issue. |
| Scaffolding / Formwork | Temporary works infrastructure provided by the company. | Scaffolding for facade works, formwork for concrete elements. |
Resources Provisioned are an informational record of what the company provides. Recovery Items are the financial deductions applied to the subcontractor’s bill. When the company provides materials free-of-charge and recovers their cost, both records exist: a resource provisioned entry (documenting what was provided) and a material recovery item (documenting the financial deduction). Not all provisioned resources have corresponding recoveries — some may be provided at no cost as part of the contract terms.
Measurement System
The measurement system is the mechanism for recording and certifying actual work progress against the WO line items. JobNext uses a 3-tier measurement structure that mirrors the industry-standard approach for construction measurement:
Tier 1: Measurement Header
Stored in omni_work_order_item_measurement_header, the measurement header represents a single measurement session or certification event.
| Field | Description |
|---|---|
| Measurement Code | Auto-generated identifier for this measurement session. |
| Measurement Date | Date when the measurement was recorded on site. |
| WO Reference | Links back to the parent Work Order. |
| Measurement Period | The period covered by this measurement (e.g., “01-Jan to 31-Jan”). |
| Measured By | The site engineer or quantity surveyor who recorded the measurements. |
| Status | Draft, Submitted, Certified, or Rejected. |
| Notes | General notes about this measurement session (site conditions, deviations, etc.). |
Tier 2: Measurement Detail
Stored in omni_work_order_item_measurement_detail, each detail record corresponds to a specific WO work item being measured.
| Field | Description |
|---|---|
| WO Item Reference | Links to the specific WO line item (wo_item_id) being measured. |
| Description | Location or scope description for this measurement (e.g., “Block A, Floor 3, Plastering”). |
| Measured Quantity | The total measured quantity for this work item in this measurement session. This is typically the cumulative total up to the measurement date. |
| Previous Quantity | The previously certified quantity (from earlier measurements). The current bill quantity = Measured − Previous. |
| Current Quantity | Work done in the current period: Measured Quantity − Previous Quantity. |
Tier 3: Measurement Dimensions
Stored in omni_work_order_item_measurement_detail_dimensions, dimensions provide the granular breakdown of how the measured quantity was computed.
| Field | Description |
|---|---|
| Location / Description | Specific location where the work was measured (e.g., “Column C1”, “Wall W3, North Face”). |
| Number | Number of similar items (e.g., 4 columns of the same size). |
| Length | Measured length in the applicable unit. |
| Breadth | Measured breadth/width in the applicable unit. |
| Height / Depth | Measured height or depth in the applicable unit. |
| Quantity | Computed quantity: Number × Length × Breadth × Height. Or entered directly for items measured by count or weight. |
For a plastering work item (UOM: Sqm), a typical dimension entry might be:
Location: Block A, Floor 2, Room 201 — North Wall
Number: 1 | Length: 6.50m | Height: 3.20m | Breadth: (not applicable for area)
Quantity: 1 × 6.50 × 3.20 = 20.80 Sqm
Multiple dimension entries are summed to arrive at the total measured quantity for the detail line. For volumetric items like concrete (UOM: Cum), all three dimensions are used: Number × Length × Breadth × Height.
Measurement Workflow
- Record measurements on site — The site engineer or quantity surveyor visits the work location and records physical measurements (dimensions) for each WO work item. Measurements are entered directly in JobNext or via a field device.
- Enter dimensions — For each work item, enter the detailed dimensions (Tier 3) that make up the measured quantity. The system automatically calculates the quantity from the dimensions.
- Review totals — Verify that the computed measurement quantities are accurate. The system shows the current period quantity (measured minus previous) for each item.
- Submit for certification — The measurement is submitted for review by a senior engineer or project manager.
- Certify or reject — The certifier reviews the measurements, verifies against site conditions, and either certifies (approves) or rejects with comments.
- Generate running bill — Once certified, the measurement forms the basis for the subcontractor’s running bill. See Running Bills.
Running Bills
A running bill (also called an Interim Payment Certificate or IPC) is a periodic payment document generated from certified measurements. Each running bill calculates the amount payable to the subcontractor for work completed in the current period, less any recoveries and previous payments.
Running Bill Calculation
| Component | Calculation |
|---|---|
| Gross Value of Work Done | Sum of (Current Period Quantity × WO Rate) for each work item. |
| Less: Material Recovery | Value of company-supplied materials consumed in this period (before-tax recovery). |
| Net Taxable Amount | Gross Work Value − Before-Tax Recoveries. |
| Add: Tax | Applicable tax on the net taxable amount. |
| Sub-Total | Net Taxable Amount + Tax. |
| Less: Retention | Retention percentage withheld (after-tax recovery). |
| Less: Advance Recovery | Proportional recovery of mobilization advance (after-tax recovery). |
| Less: Liquidated Damages | Penalty deductions, if any (after-tax recovery). |
| Less: Previous Bills | Total amount previously certified and paid in earlier running bills. |
| Net Payable This Bill | Sub-Total − Retention − Advance Recovery − LD − Other Deductions − Previous Bills. |
Running bills in construction are typically cumulative. Each bill calculates the total value of all work done to date, then deducts the amounts already paid in previous bills. This approach is known as “up-to-date billing” and ensures accuracy even when previous measurements are revised. The formula is: Current Payment = Cumulative Value To Date − Total Previously Paid.
Running Bill Workflow
- Measurements are certified — The certified measurement quantities form the basis for billing.
- Generate the running bill — The system creates a vendor bill (in Finance) from the certified measurements, applying all recovery items and deductions as defined in the WO.
- Review and approve the bill — The project QS or finance team reviews the bill calculations, verifies recoveries, and approves for payment.
- Process payment — A payment voucher is created from the approved bill, generating accounting entries in the ledger (
omni_account_voucher_entry).
Payment Terms
Payment terms define when and how the subcontractor will be paid. Each WO can have one or more payment milestones stored in the omni_work_order_paymentterms table.
| Field | Description |
|---|---|
| Payment Days | Number of days after the payment event when payment is due (e.g., Net 30, Net 60, Net 90). |
| Payment Quantum | Percentage of the running bill value to be paid at this milestone (e.g., 90% on certification, 10% retention release after 12 months). |
| Payment Event | The trigger event for payment — e.g., “On Measurement Certification”, “On Bill Approval”, “On Completion”, “On Defects Liability Expiry”. |
| Payment Mode | How payment will be made — Bank Transfer, Cheque, Cash, Letter of Credit. |
A common payment structure for subcontractors is: 10% mobilization advance on WO approval (recovered proportionally from each bill), running bills monthly based on certified measurements with 5–10% retention withheld, payment within 30–60 days of bill certification, and retention release after 12 months from project completion (defects liability period).
Terms & Conditions
WOs include standard and custom terms & conditions that define the contractual obligations between the company and the subcontractor. Terms are stored in the omni_work_order_termsandconditions table.
- Template-based — Select from pre-configured T&C templates defined in the master settings. Each template has a term ID and default text.
- Customizable — The terms text can be edited per WO to add special conditions, modify default clauses, or remove inapplicable terms.
- Printed on WO document — All T&Cs are included in the SSRS WO report document sent to the subcontractor.
Common subcontractor T&C categories include:
- Scope of work and exclusions
- Mobilization and demobilization requirements
- Work schedule and completion milestones
- Liquidated damages for delay
- Safety, health, and environmental compliance
- Quality standards and inspection procedures
- Insurance requirements (third-party, workmen’s compensation)
- Retention and defects liability period
- Variation and change order procedures
- Termination and dispute resolution clauses
- Company-provided resources and material recovery terms
- Compliance with labor laws and worker welfare standards
Tax Items
Tax handling on Work Orders is managed through the omni_work_order_tax_items table. Taxes can be applied at the order level:
- Tax Component — Selected from the tax master (e.g., VAT @ 5%, CGST @ 9%, SGST @ 9%, IGST @ 18%, TDS — Tax Deducted at Source).
- Tax Rate — Percentage applied to the taxable base (net item amount less before-tax recoveries).
- Tax Amount — Computed amount: Taxable Base × Tax Rate. Stored in the
order_tax_amountheader field. - Multiple Tax Components — Multiple tax entries can be added for dual or multi-component tax regimes (e.g., CGST + SGST, or VAT + WHT).
In many jurisdictions, subcontractor payments require Tax Deducted at Source (TDS) or Withholding Tax (WHT). This is configured as a tax item on the WO and is automatically applied during running bill generation. The company deducts the tax amount from the subcontractor’s payment and remits it to the tax authority. Common rates: TDS on contracts (India) at 1–2%, WHT on services (GCC) at 5–10%.
WO Statuses
| Status | Badge Color | Description | Allowed Actions |
|---|---|---|---|
| Draft | Blue | WO is being prepared. All fields are editable. Not yet committed or visible to subcontractor. No measurements can be recorded. | Edit, Add/Remove Items, Configure Recoveries, Add Resources, Approve, Cancel, Delete |
| Approved | Green | WO has been approved and dispatched to the subcontractor. Subcontractor budget is committed. Measurements can be recorded, and running bills can be generated. | View, Amend, Record Measurements, Generate Bill, Print |
| Cancelled | Red | WO has been cancelled. No further actions are possible. Budget commitment is released. Cancelled-by user and timestamp are recorded. | View only |
Approval Workflow
WOs follow the organization’s configured approval workflow, similar to POs:
- Value-Based — Different approvers based on WO amount thresholds (e.g., up to 50,000 = Project Manager, above 50,000 = Director).
- Multi-Level Sequential — WO passes through multiple approval levels (e.g., Site Engineer → QS Manager → Contracts Manager → Management).
What Happens on Approval
- WO status changes from Draft to Approved.
- Approved-by user (
approved_by) and timestamp (approved_on) are recorded. - Approver comments are stored in
approved_commentsfor audit trail. - The WO becomes available for measurements and billing.
- The WO value is committed against the job’s subcontractor budget.
WO Amendments
After a WO is approved, it may need modifications due to scope changes, rate renegotiations, additional work items, or revised timelines. JobNext handles this through the Amendment process rather than editing the original WO — the same pattern used for PO amendments:
-
Initiate Amendment — On an Approved WO, click Amend from the row actions. The system creates a new Draft WO linked to the original via the
original_wo_idfield. Detail line items are linked viaorginal_wo_detail_id. -
Make changes — The amended WO is a full copy of the original. You can:
- Modify quantities (increase or decrease scope)
- Add new work items
- Remove work items not yet measured
- Change unit rates (renegotiated rates)
- Update expected completion dates
- Revise recovery items, resources, or terms & conditions
- Submit for approval — The amended WO goes through the standard approval workflow. Approvers can see what changed from the original.
- Approved amendment replaces original — Once approved, the amended WO becomes the active version. The original WO’s budget commitment is adjusted to reflect the new values. All future measurements and bills reference the amended WO.
You cannot amend a WO in ways that conflict with already-certified measurements. The system validates that amended quantities are not less than the already-measured quantities for each work item. Measured quantities are carried forward to the amended WO. Similarly, recoveries already applied in previous running bills are preserved in the amendment to maintain billing integrity.
Monthly Recurring Work Orders
The is_monthly_recurring flag enables a special Work Order mode designed for ongoing, repetitive subcontractor engagements such as:
- Facility maintenance contracts — Monthly housekeeping, landscaping, pest control
- Security services — Ongoing guard services billed monthly
- Equipment rental — Monthly crane or generator hire
- Recurring labor supply — Monthly provision of general labor at fixed rates
- AMC contracts — Annual maintenance contracts with monthly billing cycles
When a WO is marked as monthly recurring:
- The system expects monthly measurement and billing cycles aligned with calendar months.
- Each month’s measurement represents the work done in that specific month (not cumulative).
- Running bills are generated monthly based on the fixed recurring rates.
- The WO remains active until explicitly closed or cancelled, rather than auto-completing when quantities are fully measured.
A standard WO has a defined scope quantity (e.g., 5,000 Sqm of plastering) and completes when the quantity is fully measured. A recurring WO has an ongoing scope (e.g., monthly security services at AED 25,000/month) and continues indefinitely until terminated. Use the is_monthly_recurring flag to indicate this distinction, which affects how the system handles measurements and completion.
Multi-Currency Support
JobNext Work Orders support multi-currency contracting, which is critical for projects with international subcontractors:
- WO Currency (
wo_currency) — The currency in which the subcontractor is paid. Set at the WO header level (e.g., a subcontractor from India is paid in INR, a local subcontractor in OMR or AED). - Job Currency (
job_currency) — The base currency of the job/project. Used for budget tracking and cost reporting. - Exchange Rate (
job_ccy_exchange_rate) — The conversion rate from WO currency to job currency. This rate is set at the time of WO creation and used to convert WO values for budget comparison.
The exchange rate set on the WO is used for budget tracking purposes. If exchange rates fluctuate significantly between WO creation and actual payment, the variance is captured as a foreign exchange gain/loss in the finance module. For long-duration subcontracts spanning months or years, consider including a currency adjustment clause in the T&Cs.
Full Traceability
Every Work Order maintains a complete audit trail in both directions through the subcontractor management lifecycle:
| Direction | Links |
|---|---|
| Backward (Source) |
|
| Forward (Destination) |
|
| Amendment Chain | Amended WO → Original WO (original_wo_id). Detail items link via orginal_wo_detail_id. Allows tracking the full revision history of a subcontract. |
| Scope Linkage | WO Detail → Job Work Item (job_work_item_id) → BOQ/Scope. This provides visibility into how much of each scope item has been subcontracted vs. executed in-house. |
WO Document (SSRS Report)
The printable WO document is generated as an SSRS report and serves as the formal subcontract document sent to the subcontractor. It contains:
| Section | Contents |
|---|---|
| Header | Company logo, company name and address, WO code, WO date, subcontractor name and address, job reference, expected start and completion dates. |
| Work Items | Work item description, UOM, quantity, rate, base amount. One row per work item, linked to BOQ/scope references. |
| Totals | Net item total, recovery amounts (before and after tax), tax, discount, other charges, grand total in WO currency and job currency equivalent. |
| Recovery Schedule | List of all recovery items with type, description, and amounts (material recovery, retention, advance recovery, LD provisions). |
| Resources Provisioned | Company-provided resources with descriptions and any associated charges or recovery rates. |
| Payment Terms | Payment milestones with event triggers, payment mode, and days. |
| Terms & Conditions | All T&C clauses as numbered list. |
| Signature Block | Prepared by, checked by, approved by, accepted by (subcontractor) — with name, designation, date, and signature fields. |
Budget Control
WO values are tracked against the approved subcontractor budget for the job:
- Budget Availability Check — At WO creation, the system checks if sufficient subcontractor budget exists for the work items being ordered. If the WO value exceeds the available budget, the system can either warn or block depending on configuration.
- Budget Commitment — On WO approval, the WO value is committed against the subcontractor budget. This reduces the “available” budget even before work is executed or paid for.
- Scope Tracking — Because WO line items link to BOQ/scope work items via
job_work_item_id, the system tracks what percentage of each scope item has been subcontracted, preventing over-commitment. - Budget Burn Tracking — The Subcontractor Budget Burn report shows estimated vs. ordered (WO) vs. measured vs. billed vs. paid amounts, giving real-time visibility into subcontractor spending.
- Rate Variance — Comparing WO rates against estimate/budget rates reveals contracting efficiency. The system tracks awarded rates vs. budget rates at the work item level.
Available Reports
| Report | Description |
|---|---|
| Work Order Document | Formal WO document for the subcontractor with all work items, recoveries, resources, payment terms, and T&Cs. Multiple format variants may be available per company configuration. |
| WO Tracking | Track progress across all WOs — ordered qty vs. measured qty vs. billed qty vs. pending qty for each work item. |
| WO Pending | List of approved WOs with work items not yet fully measured or billed. |
| Subcontractor Budget Burn | Budget vs. actual spending at the work item level (estimate → WR → WO → measurement → bill chain). Critical for project cost control. |
| Measurement Sheet | Detailed measurement record with all dimensions, computed quantities, and certification status. Used for audit and verification. |
| Running Bill Abstract | Summary of all running bills for a WO showing cumulative work value, recoveries, net payments, and outstanding balance. |
| Subcontractor Liability Summary | Outstanding subcontractor balances across all WOs and bills for a project or company-wide. |
| Subcontractor Ageing | Age analysis of unpaid subcontractor bills (current, 30 days, 60 days, 90+ days). |
| WR to Bill Tracking | End-to-end subcontractor tracking from Work Requisition through WO, measurement, to bill and payment. |
| Retention Release Schedule | List of retention amounts held across all WOs with expected release dates based on defects liability periods. |
Related Database Tables
The Work Order module uses 11 database tables that together form the complete subcontract management data model:
| Table | Purpose | Key Relationships |
|---|---|---|
omni_work_order_header | WO header with all order-level fields (41 columns). | FK to omni_job_master, omni_party_master (vendor). |
omni_work_order_detail | WO line items — work items with rates and quantities (13 columns). | FK to header (wo_id), scope (job_work_item_id), offer (offer_detail_id). |
omni_work_order_paymentterms | Payment milestones (days, quantum, event, mode). | FK to header (wo_id). |
omni_work_order_termsandconditions | Contractual T&C clauses. | FK to header (wo_id). |
omni_work_order_tax_items | Order-level tax components. | FK to header (wo_id), tax master. |
omni_work_order_recovery_items | Recovery/deduction provisions (material, retention, penalties). | FK to header (wo_id). |
omni_work_order_resources_provisioned | Company-provided resources to subcontractor. | FK to header (wo_id). |
omni_work_order_item_measurement_header | Measurement session/event header (Tier 1). | FK to header (wo_id). |
omni_work_order_item_measurement_detail | Measured quantities per work item (Tier 2). | FK to measurement header, WO detail (wo_item_id). |
omni_work_order_item_measurement_detail_dimensions | Granular dimension entries (Tier 3: L × B × H). | FK to measurement detail. |
Best Practices
- Always follow the standard procurement path for subcontract work — WR → RFP → Comparative Evaluation → WO. This ensures competitive pricing, a complete audit trail, and proper budget authorization. Avoid creating WOs directly without an RFP evaluation for any significant value.
- Link every work item to the BOQ/scope using
job_work_item_id. This is essential for scope tracking, budget burn analysis, and preventing over-commitment of scope items to multiple subcontractors. - Define recovery items upfront before approving the WO. Clearly specify material recovery rates, retention percentages, advance recovery schedules, and LD provisions. Changing recovery terms after bills have been raised creates reconciliation issues.
- Record measurements promptly and accurately. Use the 3-tier dimension system for all items measured by area or volume. Attach photographs as supporting documentation for measurements. Late or inaccurate measurements delay subcontractor payments and damage the working relationship.
- Use the before-tax / after-tax recovery distinction correctly. Material recoveries (company-supplied materials) should be before tax. Retention, penalties, and advance recovery should be after tax. Incorrect classification affects tax computation and may cause compliance issues.
- Document resources provisioned even when they are provided at no cost. This creates a record of the company’s in-kind contribution and supports dispute resolution if the subcontractor claims they were not provided agreed resources.
- Use amendments, not cancellations, when an approved WO needs changes. Amendments preserve the history, maintain the measurement trail, and provide a clear audit trail of scope changes. Only cancel a WO when the entire subcontract is no longer needed.
- Review budget impact before approving a WO. Use the Subcontractor Budget Burn report to ensure the WO value fits within the allocated subcontractor budget for the job.
- Set expected start and completion dates on every WO. These dates are essential for project scheduling, resource planning, and enforcing liquidated damages in case of delay.
- Use monthly recurring WOs for ongoing service contracts instead of creating separate WOs each month. This consolidates the billing history and provides a single view of the contract’s lifetime value and payments.
- Attach all supporting documents to the WO — scope drawings, method statements, safety plans, insurance certificates, vendor correspondence, and negotiation records. This creates a complete subcontract file for audits and dispute resolution.
- Process running bills regularly (monthly for construction subcontracts). Delayed billing frustrates subcontractors and can impact site productivity. Establish a fixed billing cycle (e.g., measurements by the 25th, bills by the 5th, payment by the 30th).