Accounts Payable for Contractors: Manage Vendor Bills
The short answer: Run accounts payable as a weekly rhythm, not a pile. Enter every vendor bill the day it arrives with its due date, match it against the purchase order and what actually showed up, group open bills into aging buckets, and pay on terms rather than on panic. CRMb records bills under Purchasing, tracks partial payments against them, and builds an A/P aging report by supplier so you always know what you owe and when it is due.
Most contractors watch receivables closely and treat payables as a shoebox. That is backwards by half. What you owe suppliers is the other side of the same cash-flow equation, and it is the side where discipline saves you money directly: in discounts earned, in double payments avoided, and in the credit terms you keep because you never went late.
Here is a payables process that fits a service business.
What accounts payable is
Accounts payable (A/P) is the total of every bill you have received from suppliers and subcontractors but not yet paid. It is a liability: real obligations with real dates attached.
Two numbers matter, and they mirror receivables exactly.
- How much you owe. The open balance across all unpaid bills.
- When it is due. A $9,000 balance due over the next 45 days is manageable. The same $9,000 due Friday is a problem.
Accounts receivable is money coming in. Accounts payable is money going out. Cash flow is the timing between them, and you only control that timing if both sides are written down.
Enter every bill the day it arrives
The whole system depends on one habit: a bill gets entered when it lands, not when you get around to it.
Each bill needs five fields.
- Supplier. Who you owe.
- Bill number. The vendor's own reference, so you can match their statement to yours.
- Bill date. When they issued it.
- Due date. When they expect payment, per your terms.
- Amount. What they are asking for.
That is it. A bill sitting in a truck console or an email inbox is invisible, and invisible obligations are the ones that go 60 days late and cost you your terms. In CRMb, bills live under Purchasing → Bills alongside the suppliers and purchase orders they came from.
The A/P aging report
An A/P aging report groups every open bill by how old it is, using the same buckets as receivables aging: Current, 1 to 30 days, 31 to 60, 61 to 90, and 90 plus.
Read it two ways.
| View | Grain | Question it answers |
|---|---|---|
| Summary | One row per supplier | Who am I most exposed to? |
| Detail | One row per bill | Which specific bill is late? |
A worked example:
| Bucket | Amount |
|---|---|
| Current | $14,300 |
| 1 to 30 days | $4,800 |
| 31 to 60 days | $1,250 |
| 61 to 90 days | $0 |
| 90+ days | $600 |
| Total A/P | $20,950 |
The tail is the story again, just inverted. That $600 sitting past 90 days is not a cash-flow win, it is a relationship you are burning with a supplier whose materials you will need on the next job. Contractors are a small world and a slow payer gets quoted worse prices and later delivery slots.
CRMb's A/P aging report offers both grains, summary by supplier and detail by bill, and exports to CSV when your bookkeeper wants it.
Three-way matching: PO, receipt, bill
Before you pay anything, check three documents against each other.
- The purchase order. What you agreed to buy, at what price.
- The receipt. What actually arrived, counted at the truck or the yard.
- The bill. What the supplier is charging you.
If all three agree, pay it. If they disagree, you have found something worth finding: a price that crept up since the quote, a short shipment nobody flagged, a restock fee, or a bill for materials that went to a different job.
This is where a purchase order stops being paperwork and starts being money. Without a PO, you have no independent record of the agreed price, so the bill is the only version of the truth and you have no basis to dispute it. Issuing a PO for every material buy is covered in what is a purchase order and material takeoff to purchase order.
Receiving against the PO also gets the cost into your inventory at what you actually paid. CRMb runs average cost on received stock, so when that material gets consumed on a job, the job carries the real price rather than last year's quote.
Terms, and when early payment is worth it
Supplier terms are a financing decision, not a formality.
- Net 30 means you hold your cash 30 days. Free short-term financing, if you actually pay on day 30.
- 2/10 net 30 means 2% off if you pay within 10 days. That looks small and is not.
Do the math. Paying 20 days early to save 2% works out to roughly 2 divided by 98, multiplied by 365 divided by 20: about 37% annualized. If you have the cash, taking that discount is one of the highest-return uses of it in the business. If you do not have the cash, you now know precisely what the delay costs you.
The reverse is also true. Skipping a discount to hold cash is a legitimate choice on a tight week, as long as it is a choice and not an accident.
Paying when cash is tight
Some weeks the payables list is longer than the bank balance. Priority order that keeps a business running:
- Payroll and the crew. Always first. Hours worked get paid.
- Anything that stops work tomorrow. The supplier whose materials are on next week's job, the equipment rental, the fuel account.
- Discount-eligible bills inside the window. Skipping these is expensive.
- Everything else, oldest first. Work the tail so nothing crosses 60 days.
And call before you go late. A supplier who hears "$2,400 on Friday instead of today" almost always says fine. A supplier who hears nothing for three weeks starts asking for cash on delivery, and that is a much worse position to be in.
Time payables against receivables
Payables and receivables only make sense together. If your customers pay you in 45 days and your suppliers want money in 15, you are financing every job out of your own pocket for a month, and growth makes the gap wider rather than smaller.
Three levers close it:
- Collect faster. Deposits up front and prompt invoicing. See how to track accounts receivable.
- Negotiate longer terms once you have a payment history worth pointing to. Net 15 becomes Net 30 for reliable payers who ask.
- Match milestones. On larger jobs, bill progress payments so cash arrives before the next material buy goes out. See progress billing for contractors.
Because CRMb connects to your bank read-only, spend that leaves the account can be reconciled against the jobs it belonged to, so your margins reflect money that actually moved. That is covered in reconcile bank transactions to jobs.
Frequently Asked Questions
What is the difference between accounts payable and accounts receivable?
Accounts payable is what your business owes suppliers and subcontractors. Accounts receivable is what customers owe you. A/P is cash leaving, A/R is cash arriving, and the timing between them is your cash flow.
What is a three-way match in accounts payable?
Comparing the purchase order, the receiving record, and the supplier's bill before paying. If the price on the bill differs from the PO, or the quantity differs from what arrived, you catch it before the money leaves rather than discovering it in a margin review months later.
How often should I run A/P?
Weekly. Enter bills as they arrive, then once a week review the aging report, decide what gets paid, and send it. A fixed day makes it a ten-minute task instead of a monthly scramble.
Should I take a 2/10 net 30 discount?
If you have the cash, almost always. Paying 20 days early for 2% is roughly a 37% annualized return, well above what the money earns sitting in the account. Skip it only when cash is genuinely tight, and skip it knowingly.
Do vendor bills count as job costs?
The materials do, at the price you actually paid. That flows through the purchase order and received stock into the job's material cost. The bill itself is the obligation to the supplier, which is a separate question from which job consumed the material.
What happens if I pay suppliers late?
Terms tighten. Late payers get moved to cash on delivery, lose discount eligibility, and quietly get quoted worse prices and later delivery windows. In a trade where a delayed pallet stalls a crew for a day, that costs far more than the cash you held.
Getting started
Pick one afternoon this week and enter every open vendor bill you can find, with its due date. Run the aging on what you entered. You will likely find one bill older than you expected and one you have already paid. Then set a weekly payables day and keep it.
CRMb keeps suppliers, purchase orders, received stock, bills, and payments in one system, with A/P aging by supplier or by bill and A/R aging beside it. It runs on Mac, iPad, and the web. Start your 14-day free trial, no credit card required, and get your payables out of the shoebox.