This guide explains how to:
Create a subcontractor
Create and approve a subcontract with AP retainage
Create and process commitment change orders (CCOs)
Track and release Accounts Payable (AP) Retainage
Table of Contents
Table of Contents
Glossary
Glossary
Vendor - A company or individual that provides goods or services your business purchases, such as materials, equipment, or general supplies. Can act as a subcontractor, as a supplier or as both.
Subcontractor - a third-party company or individual hired to perform specific work or services on a project, often under the direction of the primary contractor.
Supplier - commonly refers to companies providing raw materials or stock items needed for operations or production.
AP (Accounts Payable) - The amount a company owes to vendors or suppliers for goods and services received but not yet paid for. AP represents a liability on the company’s balance sheet until settled through payment.
Commitment - a legally binding obligation to spend money in the future, created when an agreement is executed but before the cost is actually incurred or paid. Typical sources of commitments:
Purchase Order (PO) - a formal document issued by a buyer to a seller, specifying the type, quantities, and agreed prices for products or services. The purchase order serves as an official offer to buy goods or services. Once the seller accepts the purchase order, it becomes a legally binding contract between the buyer and the seller that obliges the seller (supplier / vendor / subcontractor) to provide goods and services and the buyer - to pay for the latter. Purchase orders are a critical component of business operations, especially in inventory management, procurement, and financial accounting. The document generated by the buyer, outlining the goods or services ordered, including quantities and agreed-upon prices.
Subcontract (Subcontract PO, SC) - a specialized type of purchase order used to manage subcontracted work on a project. Unlike a standard PO for materials or supplies, a Subcontract PO commits costs to a subcontractor for labor or services, often including terms for compliance documents, retainage, milestone billing, and change orders.
Purchase Receipt / Receipt / Receiving Report - a formal document acknowledging the receipt of goods / services. The document created when goods are received, confirming that the items ordered were delivered in the correct quantity and quality.
AP Bill / Bill / Vendor Invoice - an accounts payable document that shows amount owed to vendors / suppliers / subcontractors; shown as a liability on the company’s balance sheet. The bill is sent by the vendor to the buyer, listing the items delivered and the total amount due.
Committed Costs - planned purchases or expenses that a company has legally agreed to pay in the future. In business and accounting contexts, particularly within project management and construction industries, committed costs represent financial obligations that arise from contracts or purchase orders that have been authorized but where the actual expenditure might not yet have been incurred.
Actual Costs - actual expenses incurred by a business or a project during a specific period. These costs represent the total amount of money spent on direct labor, materials, services, and other expenses associated with the operation of a business or the execution of a project. Actual costs are crucial for financial accounting, budget management, and performance evaluation.
AP Retainage (Payment Hold Back / Retention) - A portion of the subcontractor’s or vendor’s payment that is withheld until certain conditions, such as project milestones or final completion, are met. Retainage is common in construction contracts to ensure satisfactory performance and completion.
AP Retainage Release - The process of paying out previously withheld retainage once contractual obligations have been fulfilled. This typically occurs when work is certified as complete or compliance documents are received.
AP Retainage Withheld - The actual amount currently held back from vendor or subcontractor invoices as retainage. This represents the difference between the total billed amount and the portion released for payment.
Project - a long-term endeavor (1 month and longer) that has phases performed at the company site and tracked as a project (project accounting with work-in-progress, revenue recognition, etc.).
Job - a short-term work requiring less than N visits to the customer site.
Change Order - a formal document used to modify the scope, cost, or timeline of an existing contract or purchase order.
Internal Change Order - a change order created within your organization to track internal adjustments, without sending it to an external vendor or subcontractor.
Commitment Change Order - a change order that modifies the terms of a financial commitment (e.g., a subcontract, purchase order, or vendor agreement) by adjusting scope, cost, or schedule.
Enabling Subcontracts, Commitment Change Orders, AP Retainage Workflows
Login as a system administrator.
Go to Procurement Settings.
Enable the toggle Enable Subcontract Workflow.
When enabled, it will allow creating subcontract records in BuildOps.
Enable the toggle Enable Commitment Change Orders.
When enabled, it will allow creating commitment change orders against purchase orders and subcontracts in BuildOps.
Keep Enable Intacct Integration toggle disabled. This functionality is under development right now.
Enable the toggle Enable AP Retainage.
When enabled, it will allow tracking and managing retainage on subcontracts in BuildOps.
Note: This feature is available for customers with Three-way Matching enabled.
Controlling Permissions for Subcontracts, Commitment Change Orders, AP Retainage
Login as a system administrator.
Go to Settings.
Click Admin.
In the Roles and Permissions screen, choose the role access rights of which you would like to modify.
Modify the following access rights as necessary:
General > Procurement Settings toggle.
When enabled, allows users to see the Procurement settings menu item.
Financials > AP Retainage toggle.
When enabled, allows seeing the AP Retainage menu item within the Accounting Menu.
View AP Retainage toggle.
When enabled, allows users to view the release AP Retainage screen.
Edit AP Retainage toggle.
When enabled, allows users to edit the retainage release values and proceed with releasing retainage.
Parts > Procurement toggle.
When enabled, allows users to see the Procurement menu items.
View Purchase Orders and Subcontracts toggle.
When enabled, allows users to access the menu item and view purchase orders and subcontracts.
Create Purchase Orders and Subcontracts toggle.
When enabled, allows users access to create Purchase Orders and Subcontracts across the entire platform, including from the Projects and Quotes screens.
Edit Purchase Orders and Subcontracts toggle.
When enabled, allows users access to edit all Purchase Order and Subcontracts fields including Department, dates, and line items.
Approve Purchase Orders and Subcontracts toggle.
When enabled, allows users to approve Purchase Orders and Subcontracts.
Email Purchase Orders and Subcontracts toggle.
When enabled, allows users access to send emails with the Purchase Order and Subcontracts PDF attached out of BuildOps.
Export Purchase Orders and Subcontracts toggle.
When enabled, allows users to export Purchase Orders.
View and Add Attachments.
When enabled, allows users to add attachments to Purchase Orders and Subcontracts.
Delete Purchase Orders and Subcontracts toggle.
When enabled, allows users access to permanently delete Purchase Orders and Subcontracts that have not been posted.
Void Purchase Orders and Subcontracts toggle.
When enabled, allows users access to void Purchase Orders and Subcontracts that have been posted.
View Commitment Change Orders toggle.
When enabled, allows users to access the menu item and view commitment change orders.
Create Commitment Change Orders toggle.
When enabled, allows users to create change orders against purchase orders and subcontracts.
Creating a New Vendor (Subcontractor)
Go to Directory -> Vendors.
Click New Vendor.
In the New Vendor dialogue, select the Vendor Type as Subcontractor or Supplier And Subcontractor. These two vendor types support subcontractor-specific attributes.
Enter a Subcontractor Name.
(Optional) Populate other fields.
Enter the vendor’s Billing & Shipping Address.
These addresses will be used to populate the purchase order billing address (remittance address) and the shipping address when the purchase order shipping location is set to the Vendor Location.
Select Retainage Applicable checkbox.
Specify the default Retainage % applicable for this vendor.
This value will be populated in the subcontracts created against this subcontractor, but can be overridden at the document header and line level when necessary.
Click Create to save the new subcontractor record.
Reviewing & Editing Vendor (Subcontractor) Details
If you wish to review the details associated with the vendor or need to change any vendor attributes you can click on the hyperlink in the Name column on the Vendors list. This will initiate the Vendor detail screen.
The vendor detail of a Subcontractor type screen contains the following details:
Vendor Info - Main subcontractor information:
Vendor Type - Can be changed for the vendor at any time, however, there are some limitations:
If a vendor type is Subcontractor, the system would not allow switching to a Supplier vendor type anymore since it will result in the loss of data and functionality.
Supplier And Subcontractor vendor type cannot be changed to any other vendor type.
A Supplier vendor type can be changed into a Supplier And Subcontractor type, but not the Subcontractor type.
Vendor Name - The vendor's display name. Can be changed for the vendor at any time.
Subcontractor Type - Customer-defined multi-select configured in the Custom Fields -> Subcontractor Types. Can be changed anytime.
Subcontractor Service Zone - A selector of service zones configured in the Custom Fields -> Subcontractor Service Zones.
Subcontractor Tags - Allows associating tags with the vendor record (only of the type Subcontractor for now - we will extend it for other types too). Tags are pulled from the Subcontractor Tags custom field. Tags can be modified at any point.
Use Taxable - Controls whether the vendor is subject to use tax. Can be changed anytime. This value is used to default use taxability of purchase orders and subcontracts created against this vendor.
Address - Default vendor billing and shipping address. The addresses can be changed anytime for the vendor.
Contact - Default vendor contact. The contact can be changed anytime for the vendor.
Retainage Settings - Displays subcontractor retainage settings and current retainage balances held for the vendor:
Total outstanding retainage - The sum of retainage amounts still remaining unreleased on the bills associated with this subcontractor.
Retainage released to date - The sum of retainage amount released for this vendor up until the current date.
Last retainage released on - The date of the latest retainage bill.
Notes - Free-text notes about the vendor.
Tabs:
Contacts - manages subcontractor contacts.
Compliance - manages subcontractor compliance documents. Please note this is a legacy component
In the Vendor detail screen you can click Edit to initiate the editing process. Click Save button when you are done with the changes to the vendor record.
Creating a Subcontract
Go to Operations -> Subcontracts.
Click Create Subcontract.
In the Create Subcontract dialogue populate the subcontract fields.
Subcontractor Info section:
General Info section:
Created On - a required field reflecting the date Subcontract was created/issued. Defaulted to today and can be overridden.
Effective Date - an optional date selector reflecting the start of the subcontractor’s work.
Completion Date - an optional date selector reflecting the planned completion date of the subcontractor’s work.
Tags - subcontract tags functionality is still in development, please ignore this selector for now.
PDF Template - a required field (when Procurement PDF Templates are enabled).
Job / Project Information section:
Job / Project - a selector of jobs and projects.
Department - a selector of departments applicable for a job selected. Not applicable to projects - Project Phase Department is used for the projects instead.
Project Manager - a selector of employees. Defaulted from the job / project chosen and can be overridden.
Address Line 1, Address Line 2, City, State / Province, ZIP / Postal Code - address fields populated with the job / project site address if any. Can be manually overridden.
This address will be used as the Ship To address of a document when calculating taxes with the help of Avalara tax provider integration.
The fields below will be by default applied to all the subcontract lines, but can be overridden as necessary. The list of available values in the below drop-down selectors depends on the configuration and budget of the job / project chosen.
Cost Code - a selector of cost codes applicable to the job. Projects use the Project Cost Code field instead.
Job Cost Type - a selector of cost types applicable to the job. Projects use the Project Cost Type field instead.
Revenue Type - a selector of revenue types applicable to the job.
Project Phase - a selector of phases within the project chosen. Not applicable to jobs.
Project Phase Department - a selector of departments applicable to the project phase chosen. Not applicable to jobs.
Project Cost Code - a selector of cost codes applicable to the project phase & department chosen. Not applicable to jobs.
Project Cost Type - a selector of cost types applicable to the project phase, department, and cost code chosen. Not applicable to jobs.
Scope & Financial Terms section:
Retainage Applicable checkbox - defaulted from the vendor selected. Can be overridden. When selected, allows specifying the default AP retainage percent to be propagated into subcontract lines.
Default Retainage % - defaulted from the vendor selected when retainage is applicable to them. Can be overridden. This value, if provided, will be defaulted in the subcontract lines. It can be overridden at the subcontract line level.
Payment Terms - selector of payment terms available.
Scope of Work - a free text field used to specify the scope of work associated with the subcontract.
Tax Info section:
Use Taxable - defaulted from the vendor / job / project selected, can be overridden at the header and line level of a subcontract.
Note, the fields in this section differ depending on the tax solution chosen. The current example is based on the Avalara enabled configuration.
You can also choose to use the AI recognition functionality to populate the subcontract and its lines from a file. The AI recognition functionality on subcontracts works the same way it does on the purchase orders.
Click Next Step to be navigated to the shopping cart Add Items step. On this step you can add subcontract line items to the document.
Add the necessary items and specify the desired quantity, amount, description, project key and tax attributes.
Click Next Step once the line items have been added to the subcontract.
Review the subcontract details on the Summary step and save it via clicking Create button.
The subcontract will be created in a Draft status and reflect the following total values:
Original Contract Value - agreed original subcontract amount; equals the sum of the line amounts prior to taxes applied.
Total Change Orders - sum of approved change orders.
Revised Contract Value - sum of original contract value and changes orders.
Tax Amount - total sales tax amount calculated for the subcontract lines.
Tax Amount Overridden - manually overridden sales tax amount value if applicable.
Total Retainage - total dollar value of the retainage calculated for this subcontract; calculated as the sum of retainage amount of the subcontract lines.
Note: Retainage is calculated based on the pre-tax amounts. BuildOps does not support retained taxes yet.
Remaining Retainage - dollar value of the retainage amount still withheld for this subcontract; calculated as total retainage less the retainage released amount.
Total - sum of the revised contract value and sales tax amount.
Use Tax Amount - sum of the use tax amounts calculated for all the subcontract lines if applicable.
Subcontract detail screen will display the following tabs:
Items - this tab contains the subcontract line items and their details.
Change Orders - this tab manages all the commitment change orders associated with this subcontract.
Bills - this tab manages all the vendor bills associated with this subcontract, including the retainage release bills.
Attachments - this tab manages the attachments associated with the subcontract.
Tax Details - contains applicable tax jurisdictions when Avalara tax integration is enabled.
Audit Log - this tab displays the history of actions performed with this subcontract.
You can also choose to create a subcontract directly from the project screen.
On the Project screen go to Purchasing tab -> Commitments and click the drop-down next to the Add Purchase Order button and choose the Add Subcontract action.
When the Create Subcontract dialogue is initiated directly from the project, it will already have the project info defaulted in the Create Subcontract wizard:
Subcontracts created for projects are displayed the same way as purchase orders on the Purchasing tab -> Commitments.
By default the Commitments table shows all the purchase orders and subcontracts, however, you can choose to filter them by the document type via selecting the PO Type = Purchase Order or Subcontract.
You can also create subcontracts from the Job detail screen -> Parts & Purchasing tab.
When the Create Subcontract dialogue is initiated directly from the job, it will already have the job info defaulted in the Create Subcontract wizard:
Editing a Subcontract Prior to Approval
While the subcontract is in Draft status, it can be edited directly.
Click the Edit button.
Once in the editing mode, you can change the following fields: Vendor, Vendor Document Number, Billing Address, Created On, Effective Date, Completion Date, PDF Template, Job / Project details, Scope & Financial Terms, Tax Details.
Click Save to save the changes.
Click Add Item to add new lines to the subcontract.
Click Edit at the subcontract line level to change the subcontract line details.
Click Delete at the subcontract line level to delete the line.
Click the Preview button to generate a preview PDF of a subcontract using the PDF template selected. More info on PDF templates can be found here.
Email PDF button will initiative the standard emailing dialogue.
Click Actions -> Delete Subcontract to delete the draft subcontract.
If you wish to delete a subcontract, you will need to confirm the intention in the Delete Subcontract dialogue via clicking the Delete Subcontract button. The Cancel button will cancel the deleting operation and navigate you back to the Draft subcontract detail page.
Approving a Subcontract
On the Subcontract detail screen, click the Approve button.
On click, it will initiate the Approve Subcontract confirmation dialogue.
On clicking the Cancel button, the dialogue will be closed, and the subcontract will stay in Draft status.
On clicking Approve Subcontract, the system will proceed with approving the subcontract record.
Once approved, this subcontract will acquire the Approved status and will become read-only.
From now on, any changes for the subcontract will have to go through the Commitment Change Order workflow.
Edit and Delete actions will become unavailable for the subcontract lines.
Edit action will become unavailable for the subcontract header.
Note: we will allow editing some fields (Completion Date, PDF Template) after approval in a future release.
Delete Subcontract action will become unavailable for the subcontract. Instead, the ability to Void Subcontract will appear.
Modifying a Subcontract via Commitment Change Orders
Once the subcontract is approved, if you wish to make changes you will need to initiate a commitment change order.
On the Subcontract screen, go to the Change Orders tab and click Create Change Order.
Commitment Change Order dialogue will be displayed.
The dialogue will allow editing line and header values for the subcontract and the existing subcontract lines as well as adding new lines.
Add Subcontract Item button will initiate the Add Subcontract Item dialogue allowing to add new line items to the commitment change order. Adding new line items is done via the shopping cart menu and allows editing all the line attributes similarly to the experience of adding new lines to a draft subcontract.
Modify Existing Line button will initiate the Select Items from the subcontract dialogue. This dialogue allows adding the existing subcontract lines to the Commitment Change Order document. Once the lines are added to the commitment change order, you will be able to make the necessary changes.
The existing lines will allow editing the following attributes via the Commitment Change Order workflow.
Job / Project
Project Phase
Department
Cost Code
Cost Type
Revised Qty Ordered
Note: the revised quantity ordered must not be less than the already billed quantity.
Revised Unit Cost
Use Taxable checkbox
Note: applicable to AP Taxes or Avalara users only.
Work Taxability
Provider Tax Code
Note: applicable to Avalara users only.
Revised Retainage Percent
Note: the retainage percent value can be changed only for unbilled subcontracts. Ability to change retainage percent and amount for the billed subcontracts will be added in future.
Revised Retainage Amount
Note: the retainage amount value can be changed only for unbilled subcontracts. Ability to change retainage percent and amount for the billed subcontracts will be added in future.
Newly added lines will have a New tag next to the line number, while the existing lines modified will have the Existing tag next to them.
It is also allowed to edit the following header subcontract attributes:
Default Retainage % - allows specifying a new retainage percent for the subcontract.
Click Update Retainage button and in the Apply Updated Retainage to Line Items dialogue choose whether you would like the new retainage percent to be applicable only to the selected existing line items as well as future line items.
If you choose to apply the new retainage value to the selected line items, the line item selector will be opened. It will include all the already existing subcontract lines as well as the lines newly added to this commitment change order.
Click Apply Retainage to apply the new retainage percent to the lines selected.
Note: make sure the new retainage percent value will not result in negative remaining retainage on the already existing bill lines. The following constraint must not be violated:
NEW Retainage Amount must still be greater than or equal to the sum of unreleased retainage amount withheld on the existing subcontract bills.
NEW PurchaseOrderLine.retainageAmount ≥ SUM(BillLine.retainageAmountUnbilled) for that subcontract line (that is net retainage still held on bills after releases)
If it is violated, the system will throw the corresponding error message.
Successful retainage update will display the following message:
“New Default Retainage % applied to <nbr of lines updated> line(s) successfully.”
Note: The retainage changes will be reflected on the subcontract only after saving the commitment change order.
Tax Amount Overridden - allows setting the new total vendor sales tax for the subcontract. The tax amount will be spread across the subcontract lines proportionally based on Avalara item taxability rules.
Note: applicable to Avalara users only. The tax changes will be reflected on the subcontract only after saving the commitment change order.
You can choose to change the commitment Change Order Date and Reason fields.
Click Next Step to review the changes made.
Click Save to approve the change order.
The Change Orders tab of the subcontract will display the change orders entered against this subcontract.
The tab will display the number of change orders as well as the Original Contract Value (subcontract amount prior to any change orders), Total Change Orders dollar value, and Revised Contract Value.
If you click on the CCO Number hyperlink, the Change Order Details screen will be opened in a new browser tab listing all the changes made in the framework of this change order.
You can add attachments to commitment change orders via the Attachments tab of the CCO detail screen.
Projects associated with subcontracts and purchase orders which have gone through the commitment change order workflow will have the related balances displayed as follows:
Unbilled Committed Amount - remaining committed amount on the purchase orders and subcontracts not yet billed.
Original Committed Amount - initial committed amount before any change orders
Commitment Change Orders - net change orders associated with the purchase orders and subcontracts.
Updated Committed Amount - total historic committed amount including all change orders.
The list of all the commitment change orders created can be found in the Procurement -> Commitment Change Orders.
Tracking AP Retainage
The subcontract record can hold AP retainage on it. The following attributes reflect the retainage on subcontracts:
Subcontract Scope & Financial Terms:
Retainage Applicable - a checkbox indicating if retainage can be held on this subcontract.
Default Retainage Percent - a default retainage percent applicable to this subcontract.
Subcontract Items:
Retainage % - line retainage percent.
Retainage Amount - total retainage amount held on this subcontract item; calculated as line subtotal (prior to taxes) multiplied by the line retainage %.
Remaining Retainage Amount - total retainage amount held on this subcontract item minus retainage amount released.
Subcontract Summary:
Total Retainage - total retainage amount held on all the subcontract items.
Remaining Retainage - total retainage amount held on all the subcontract items minus retainage amount released.
When retainage attributes are changed for the existing lines or new lines holding retainage are added, the retainage totals will be recalculated accordingly.
When retainage amount is released from the subcontract related bills, the Remaining Retainage value is decreased accordingly.
Actual Cost of Projects and Jobs currently always includes retainage amount as soon as the main bill (the one holding retainage, not the bill for the released retainage) is generated. Retainage release does not affect the Actual Cost of the jobs or projects.
Billing a Subcontract with AP Retainage
Go to the Subcontract detail screen -> Bills tab.
Click the Create Bill button.
Create Bill from Subcontract dialogue will allow adding billed quantities and amounts against subcontract lines.
Click Next Step to review the bill details on the Summary step.
Click Create Bill to save the bill.
The bill will be generated in Pending state.
The bill will reflect the portion of the associated subcontract AP retainage withheld:
Bill Items:
Retainage % - line retainage percent inherited from the parent subcontract line.
Retainage Amount - total retainage amount held on this bill item; calculated as line subtotal (prior to taxes) multiplied by the line retainage %.
Remaining Retainage Amount - total retainage amount held on this bill item minus retainage amount released.
Bill Totals:
Total Retainage - total retainage amount held on all the bill items.
Remaining Retainage - total retainage amount held on all the bill items minus retainage amount released.
Amount Due - bill total amount less retainage withheld. Retainage is not included in this amount. It will be billed and due separately in retainage release bills.
While the bill is in Pending status, it can be edited as necessary.
Once the bill is confirmed and approved, you can post it via clicking the Post Bill button.
Once the bill is posted, it acquires the Posted status and becomes read-only.
The retainage withheld on the bills can be released from them only after posting the bill.
Releasing AP Retainage
When you are ready to release retainage, you can either go directly to the Accounting -> AP Retainage screen or navigate there from the bill record as follows.
If you navigate to the AP Retainage screen from the Accounting -> AP Retainage screen, you will see the list of all the Posted bills holding retainage. You can use filters and views on the AP Retainage screen to filter out the bill lines of interest and the bulk selector to select the lines from which you would like to release the retainage.
If you decide to release retainage from a particular bill, on the posted bill record click the Release Retainage button.
It will navigate you to the AP Retainage screen pre-filtered by this bill number allowing you to quickly release the AP retainage associated with this bill.
AP Retainage screen allows partial retainage release: you can change the desired retainage percent or amount to be released directly in the lines or in bulk via the Release Retainage side panel.
On the Release Retainage side panel you can specify a different percentage value and click Apply to Selected Lines button.
Click Release Retainage to call the Release Retainage confirmation dialogue.
In the Release Retainage dialogue:
Retainage Release Date - defaulted to today, can be changed to any date in an open accounting period. This date will become the Bill Date of the retainage bill(s) generated as a result of this retainage release iteration.
Release Breakdown section displays the total retainage amount to be released in this iteration.
Clicking the Cancel button will close the Release Retainage dialogue and cancel the retainage release process.
Release Retainage button on click will generate the Retainage Bills for the amount of the released retainage.
The number of retainage bills generated equals the number of different parent bills from which the retainage was released during that retainage release iteration.
Retainage bills are displayed on the Bills list screen the same way as the parent bills are, but with a Retainage Bill label.
Retainage Bill is generated in the Pending status and is always read-only and has the following attributes:
General Information:
Source Bill - the hyperlink to the source bill from which retainage is released in the framework of this retainage bill.
Bill Date - the date specified in the release retainage dialogue.
Due Date - calculated as the bill date + the payment terms number of days.
Subcontract - parent subcontract associated with this retainage release bill.
Vendor - vendor associated with this retainage bill.
Job/Project Details:
Job / Project - job / project associated with this retainage bill inherited from the source bill from which the retainage is released.
Site Address - job / project site address associated with this retainage bill inherited from the source bill from which the retainage is released.
Project Manager - project manager employee associated with this retainage bill inherited from the source bill from which the retainage is released.
Department - department associated with this retainage bill inherited from the source bill from which the retainage is released.
Description & Financial Terms:
Description - “Retainage Release for Bill #” - autogenerated description of the retainage bill.
Payment Terms - inherited from the source bill from which retainage is released.
Items:
Line # - sequential bill line number.
Item Name - the name of the line item inherited from the source bill line from which the retainage is released.
Description - line description inherited from the source bill line from which the retainage is released.
Job / Project - job / project associated with this retainage bill line inherited from the source bill line from which the retainage is released.
Project Phase - project phase associated (if applicable) with this retainage bill line inherited from the source bill line from which the retainage is released.
Department - department associated with this retainage bill line inherited from the source bill line from which the retainage is released.
Cost Code - cost code associated (if applicable) with this retainage bill line inherited from the source bill line from which the retainage is released.
Cost Type - cost type associated (if applicable) with this retainage bill line inherited from the source bill line from which the retainage is released.
Original Bill - contains the reference to the source bill line from which the retainage is released in this bill line.
Total - total amount of this bill line which equals the retainage released in this line.
Summary:
Total - sum of the amount of all the bill lines.
Amount Due - amount due on this bill, which equals the amount of retainage released in his retainage bill.
Retainage Bill needs to be explicitly posted with the help of the Post Bill button to relieve the released retainage amount from the source bill.
Note: bulk posting of the bills does not yet exist in BuildOps.
Once the retainage bill is posted it acquires the Posted status and the associated source bill and subcontract will have the Remaining Retainage amount decreased in the amount of this retainage bill.
The subcontract will list its retainage bills as well as the original bills on the Bills tab. Retainage bills will have the Retainage Bill label displayed on them.
Retainage balances can also be viewed per vendor. Retainage release can be initiated from the subcontract vendor screen too.
Manage Retainage Release button will navigate the user to the AP Retainage release screen pre-filtered by this subcontractor.
Duplicating a Subcontract
In order to create a copy of a subcontract, on the subcontract detail screen you can click Actions -> Duplicate Subcontract.
The action is also available from the Subcontracts list screen as well as from the Project detail screen -> Commitments tab and Job detail screen - Parts & Purchasing tab.
A confirmation dialog will appear. Click Duplicate to proceed, or Cancel to abort.
The system will create a new Draft PO/SC and automatically navigate you to its edit view. A success message will confirm: "Subcontract copied successfully. New SC #: [number]".
Review and modify any fields as needed (dates, quantities, etc.), then save or submit the draft as usual.
Voiding a Subcontract
In order to void an approved subcontract, on the Subcontract details screen click Actions -> Void Subcontract.
Note: you cannot void a subcontract if it has non-void bills associated with it. In order to void a subcontract you will firstly need to void its associated bills.
Void Subcontract confirmation dialogue will be displayed.
The Cancel button on click will cancel the voiding process.
The Void Subcontract button will confirm the voiding process.
As a result, the subcontract will acquire Void status and will no longer be considered in the Project Committed Amount. No more actions can be performed with void subcontracts.
Voiding an AP Retainage Bill
While the retainage bill is in Pending status, it can be deleted via Delete Bill action.
In order to void a posted bill, on the Bill details screen click Actions -> Void Bill.
Void Retainage Bill confirmation dialogue will be displayed.
The Cancel button on click will cancel the voiding process.
The Void Bill button will confirm the voiding process.
As a result, the retainage bill will acquire Void status and the previously released retainage amount will be added back to the Remaining Retainage balance of the parent subcontracts and bills. No more actions can be performed with void retainage bills.
Edge Cases & Limitations
Edge Cases & Limitations
Three-Way Matching - This functionality only works when three-way matching configuration is enabled.
Approval Workflow – Limited to a single “Approve” action; advanced approval rules not yet available. Proper approval workflows will come later in accordance with the normal roadmap prioritization.
Export of Subcontracts to accounting integrations - subcontracts currently cannot be exported to any accounting systems.
Accruals will be entered in Intacct / Netsuite / Spectrum as journal entries (it is possible to prepare a scheduled Sigma report that will contain the necessary data).
Bills (vendor invoices) will be entered in BuildOps and exported to Intacct / Netsuite / Spectrum.
Please note that AP Retainage balances can only be exported to Intacct right now.
Other accounting systems which do not work with Three-Way Matching functionality in BuildOps yet will not allow the workflow described above.
Billing Unapproved Subcontracts - if a bill is generated for a subcontract prior to its approval, the subcontract gets automatically approved and becomes read-only, because currently approval and fulfillment status are tied together. We are planning to enhance this experience with a dedicated approval workflow.
Compliance Tracking – Currently handled via attachments; structured compliance workflows will come later in accordance with the normal roadmap prioritization.
Bonding & Insurance Programs - OCIP, CCIP, ODP, and SDI support is not currently maintained in BuildOps.
Subcontract Receipts – Receiving workflow is not implemented (no customer need identified). Only bills can be entered against subcontracts.
Enhanced Billing - Dollar-based subcontract billing (not tied to quantities) is not yet available in BuildOps.
Project-specific subcontract numbering & single-project restriction - Not addressed yet.
Purchase Order & Subcontract Approval Workflow - Approval is currently implemented via a single Approve action on the purchase order and subcontract detail screens. There are no approval maps, steps or rules supported in Buildops yet. However, you can limit access rights for the approval action via procurement roles and permissions.
Please note if you receive or bill a purchase order when the Commitment Change Order workflow is enabled, the purchase order / subcontract will be automatically marked as approved. This affects the mobile workflow as well since mobile PO creation automatically generates receipt lines which makes the PO approved and read-only. We will enhance this experience in one of the upcoming releases.
Auto-received Purchase Orders & Mobile Field Orders Edge Case - Purchase orders belonging to a purchase order type with auto-receiving enabled and mobile field orders with items added on the mobile app automatically get fulfilled, which silently approves them. Please note that after first saving these purchase orders will no longer be editable on web. The reason is currently approval and fulfillment status are tied together. We are planning to enhance this experience with a dedicated approval workflow.
Mobile field orders will still stay editable on mobile (but not on web) until we introduce a different approach to mobile purchase orders and approval engine. This is done to avoid any unpredictable changes for the technicians' workflow.
CCO Approval Workflow - Commitment change orders are saved in Approved status automatically for now.
Accounting Integration (Intacct-Integrated Mode only) - In integrated mode, adding new lines via CCO is not supported when the PO has already been exported with receipts/bills to Intacct. The integrated flow supports modifying existing lines only. Commitment change orders can be synced to Intacct only for now.
Custom CCO Numbering — CCO numbers are auto-generated sequentially per PO/SC (CCO-001, CCO-002, etc.). Custom numbering formats or project-level numbering sequences are not yet available.
Retainage Edge Case - If a retainage release bill is voided after a CCO has reduced the retainage amount, the subcontract line may temporarily show Retainage Amount less than Remaining Retainage (Unbilled). The system allows this state but displays a warning when voiding retainage release bills that could cause this condition.
Receipt Handling (Non-Integrated Accounts) - currently automated receipt voiding and regeneration is not supported for non-integrated accounts, but this enhancement will be released in one of the upcoming releases. It will behave as follows:
Receipts associated with modified lines can be automatically voided (if they are in Posted status)/deleted (if they are in Pending status) and re-created with updated quantities.
No accounting system sync occurs.
New lines can be added freely via the CCO workflow.
AP Retainage vs Taxes: There is no support for retained taxes in BuildOps for now.
AP Retainage bs Accounting Integrations: AP retained balances can be exported to Intacct only for now
FAQs - Subcontract
FAQs - Subcontract
Q: Is Three-Way Matching required for Subcontracts?
A: Yes — it is a hard prerequisite. The Subcontract workflow will not function without Three-Way Matching configuration enabled on the account. Confirm this before enabling.
Q: Is the Subcontract workflow available for Intacct-integrated customers?
A: Partially. Bills generated from subcontracts can be exported to Intacct normally. However, subcontract documents themselves cannot be exported, and accruals must be entered manually as journal entries. AP Retainage balances can be exported to Intacct.
Q: Do existing POs created against subcontractor vendors get converted to Subcontracts?
A: No — and they don't need to be. Existing POs stay exactly as they are. The new Subcontract workflow applies to new documents created after the feature is enabled.
Q: What vendor types support the Subcontract workflow?
A: Subcontractor and Supplier And Subcontractor. Supplier-only vendors do not support subcontract-specific attributes like retainage. A Supplier can be upgraded to Supplier And Subcontractor if needed.
Q: Can a vendor's type be changed after setup?
A: With some restrictions. A Subcontractor vendor cannot be switched to Supplier-only — this would cause data loss. A Supplier And Subcontractor vendor cannot be changed to any other type. A Supplier can be upgraded to Supplier And Subcontractor.
Q: What happens when a subcontract is approved?
A: It becomes read-only. The only fields still editable after approval are Completion Date and PDF Template. All other changes must go through the Commitment Change Order workflow. Note that approval is currently limited to a single "Approve" action — advanced multi-step approval rules are not yet available.
Q: Can subcontracts be created from projects and jobs?
A: Yes — from Project → Purchasing → Commitments (Add Subcontract) and from Job → Parts & Purchasing. The project or job information pre-populates automatically when initiated from those screens.
Q: Does BuildOps support dollar-only subcontract lines?
A: Not yet — a quantity must be specified on every line. The workaround is to set Unit Cost to 1 and use the total dollar amount as the Quantity. For partial billing, use decimal quantities like 0.25 for 25%.
Q: Can a subcontract be voided if it has bills?
A: No — all associated bills must be voided first before the subcontract itself can be voided.
Q: How does compliance tracking work on subcontracts?
A: Currently via attachments only — users can attach compliance documents (COI, bonding, etc.) to the subcontract record. Structured compliance workflows are on the roadmap.
Q: Are taxes on retainage supported?
A: No — retainage is calculated on pre-tax amounts only. Retained taxes are not yet supported.
FAQs - Commitment Change Order
FAQs - Commitment Change Order
Q: What happens to existing draft POs and Subcontracts when CCOs are enabled?
A: As soon as the CCO toggle is enabled, all draft POs and Subcontracts must go through the Approval workflow before becoming active.
Q: Does CCO replace PO Corrections entirely?
A: Yes. PO Corrections is replaced by the Commitment Change Order workflow. All modifications to approved POs and Subcontracts go through CCOs going forward.
Q: What happened to "Mark as Ordered" on Purchase Orders?
A: It has been replaced by the "Approve" button. Once approved, the PO is read-only — the only field still editable is the PDF Template. All other modifications must go through the CCO workflow.
Q: When does the CCO workflow apply — draft or approved documents?
A: CCOs only apply to approved documents. Draft POs and Subcontracts can still be edited directly.
Q: Can CCOs decrease values, or are they additive only?
A: CCOs can both increase and decrease quantities and costs — they are not additive only.
Q: Does CCO work for both Purchase Orders and Subcontracts?
A: Yes. For Intacct-integrated tenants, CCOs are GA for Purchase Orders only — Subcontract CCO export to Intacct is under development.
Q: What fields can be modified via a CCO?
A: On existing lines: Job/Project, Phase, Department, Cost Code, Cost Type, Revised Qty Ordered (cannot go below billed qty), Revised Unit Cost, Tax fields (Avalara only), Revised Retainage % and Amount (new retainage amount cannot be less than the current remaining retainage on already-created bills).
At the header level: Default Retainage %, Tax Amount Override (Avalara only), Change Order Date, Reason. New lines can also be added.
Q: Can a CCO reduce the quantity below what has already been billed?
A: No — the system blocks this.
Q: Can retainage % changes via CCO be applied to already-billed subcontract lines?
A: Yes — retainage % changes can be applied to both billed and unbilled lines. The only constraint is that the new retainage amount cannot be less than the current remaining retainage on already-created bills.
Q: Can I approve or void a CCO?
A: Not yet — this is a planned future enhancement.
Q: When do CCO changes take effect on the PO or Subcontract?
A: Only after the CCO is saved. Changes within the CCO dialogue that haven't been saved do not apply to the document.
Q: What permissions are needed to create CCOs?
A: Create Commitment Change Orders under Parts in Roles & Permissions. Enabling Create automatically enables View.
The Approve permission (also under Parts) controls who can approve POs and Subcontracts.

































