Bill & Expense Overview

A bill in Contractors Cloud records money you owe a vendor — a supplier, an installer or crew, a service vendor, or a user — itemized as expense lines that carry the cost to the right place. Each expense line points at a project and contract, and can attach to the specific Work Order, Material Order, Permit, or Vendor Service it pays for, so your job costing stays accurate line by line. One bill can span several projects at once. Vendor credits are entered in the same place (a credit is just a bill in reverse), and everything rolls up: expense lines drive the actual costs on your orders, the expense totals on projects and contracts, Profit & Loss, commission processing, and — when connected — your QuickBooks books.

Quick start — enter a bill

  1. From the Bills report on the Accounting dashboard click Add bill (or add one from a project's expenses section, a Work Order, a Material Order, or a vendor's page — the bill opens pre-linked to where you started).
  2. Pick the Vendor (required), leave Bill / Credit on Bill, and enter the Ref # — the invoice number from the vendor's paperwork.
  3. Set the Date; pick Terms to auto-suggest the Due Date, or set the due date directly.
  4. New bills include a Quick expense block: pick the project/contract, the expense Account, the Amount, what it's Attached To, and a status. Click Save.
  5. Add more lines with Add bill expense — each line has its own project, account, class, amount, and status, so one vendor invoice can cost out across jobs.

The Bill dialog

  • Company — which of your companies the bill is filed under.
  • Vendor — searchable picker across suppliers, installers/crews, vendors, and users.
  • Bill / Credit — whether this is a bill or a vendor credit. Once the record has synced to QuickBooks this choice is locked (they're different documents there).
  • Ref # — the vendor's invoice number, required. Contractors Cloud warns if another bill already uses the same reference number and offers to open it — and the reference number is also how QuickBooks recognizes the bill. You can turn on automatic reference numbering with your own prefix in Bills / Expenses Setup.
  • Category — your own expense categories/tags (managed in Bills / Expenses Setup) for filtering the reports.
  • Memo, Date, Terms, Due Date.

Below the details, an existing bill carries its expense lines, a Payments section (see below), Vendor Contacts, Files, a QuickBooks section, a Log of bill notes, and Utilities with Delete and Print.

Expense lines

Each expense line carries: an Account (expense account), an optional Class, the Amount — or Quantity × Unit × Unit Amount if you've turned on Quantity and Units — the Customer/Job (project and contract), what it's Attached To (a Material Order, Work Order, Permit, or Vendor Service on that project), an optional memo, and a Status. Lines attached to an order feed that order's actual cost, which is how job costing compares estimated vs. actual.

Line statuses are Pending, Approved, Paid, and Denied, and they're permission-controlled — your administrator decides who may approve, mark paid, or deny expenses. Checkbox bulk actions can change status, class, or account on many lines at once, and delete checked lines.

A bill's expense lines can belong to projects in different companies — the dialog shows a notice when that's the case: each expense's cost goes to its own project's company, while the bill itself stays filed under one company.

Bill status, amount, and balance

The bill's own Status is automatic: the lowest-ranking status among its expense lines becomes the bill's status. If a bill has three expenses — two Paid and one Pending — the bill shows Pending. Get every line to Paid and the bill follows. The bill's Amount and Balance track its expense lines and payments as they change.

Bill payments

Turn on bill payment tracking in Bills / Expenses Setup to record payments against bills. A Payments section then appears on bills (not on credits) where you add simple date / amount / memo entries, with Total Paid and Remaining Balance at the bottom. Note that bill payments are internal bookkeeping — they do not transfer to QuickBooks; pay the bill in QuickBooks itself.

Vendor credits

Set Bill / Credit to Credit to record a vendor credit — money a vendor owes you back. Credits subtract from your expense totals the same way bills add to them, and they sync to QuickBooks as Vendor Credits.

Auto-created expenses

With Auto create pending zero expenses on orders enabled in Bills / Expenses Setup, scheduling a Work Order or Material Order automatically creates a Pending, zero-amount bill and expense for its crew or supplier — a placeholder that keeps upcoming costs visible until the real invoice arrives; open it and fill in the actual amounts.

Where bills appear

  • Bills and Bill Expenses reports — the company-wide lists on the Accounting dashboard, one row per bill and one row per expense line respectively. Filter by company, bills vs. credits, QuickBooks state, and dates; Amount and Balance total in the footers; both export and print.
  • Projects — the contract's Actual Expenses section and the project's expenses area list every line costed to that job.
  • Orders and more — a Bills / Expenses section appears on Work Orders, Material Orders, Permits, Vendor Services, and on each supplier, vendor, and installer page, filtered to what's relevant there.

QuickBooks

With QuickBooks connected and vendor & bill sync enabled, bills export to QuickBooks as Bills and credits as Vendor Credits, line by line — each line carrying its expense account, class, and Customer/Job. With two-way sync, bills entered in QuickBooks Online flow into Contractors Cloud too. QuickBooks Desktop is also supported, including importing existing Desktop bills through the Import Bills dialog.

  • Each bill has a Sync Enabled checkbox in its QuickBooks section, and each expense line has its own Sync with QuickBooks setting (whose default comes from the vendor's sync setting) — uncheck either to hold that bill or line out of QuickBooks.
  • Only Approved or Paid lines export (your company can restrict this to Paid only), and the vendor must already exist in QuickBooks.
  • For QuickBooks admins the dialog's close button becomes Sync & Close, with Close without syncing beside it.
  • Deleting a bill in Contractors Cloud never deletes it in QuickBooks — remove it there yourself if it shouldn't exist.

Permissions

Users with financials hidden can't see bills at all. Can edit Expenses controls creating and editing; separate permissions control who may mark expenses pending, approved, or denied, and who may change a Paid status. QuickBooks actions require the QuickBooks admin permission.

Troubleshooting

"The bill's status won't change."
Bill status is derived, not set: it's the lowest-ranking status among the bill's expense lines. Change the lines — the one lagging line (say, a Pending zero-dollar auto-expense) is what's holding the bill back.

"The bill isn't in QuickBooks."
Check, in order: the bill's Sync Enabled box is checked; the lines you expect are Approved or Paid (or Paid, if your company requires it) and their own sync setting is on; the vendor is already synced to QuickBooks. Then push it with Sync & Close (QuickBooks admin required).

"A bill already exists with that Reference Number."
The Ref # matches an existing bill for your company. Open that bill instead of creating a duplicate — especially important with QuickBooks connected, since the reference number is how the two systems match up.

"I can't mark an expense Paid."
That's a permission — your account is restricted from changing the Paid status. Ask an administrator.

"There's no Payments section on my bill."
It only appears on Bills (not Credits), and only when bill payment tracking is turned on in Bills / Expenses Setup.

"I deleted a bill but it's still in QuickBooks."
That's by design — Contractors Cloud never deletes records out of your QuickBooks. Delete the bill in QuickBooks manually.

Related articles

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.