Who We Help · Window & Door Companies · Bookkeeping
Window and door bookkeeping: deposits in, product out, and margin somewhere in between
A window job has three money moments — the deposit at the kitchen table, the manufacturer invoice when the units ship, and the balance or lender payout after the install — and they rarely land in the same month. Bookkeeping that treats each one as revenue or cost on the day it hits the bank produces margins that swing wildly and a deposit balance nobody can explain. We book each job against those three dates, so your gross margin per opening is real and the customer deposits on your balance sheet match the backlog on your install board.
By the AnalytIQ Accounting team · Last reviewed: August 12, 2026
Every job runs on three dates, and the ledger needs all of them
The sale date, the ship date and the install date each move a different account. On the sale date the customer signs and pays a deposit, and that money is a customer deposit liability, not revenue: the units have not been made, and the ten-day cooling-off period on an in-home contract has not run. Weeks later the manufacturer ships and invoices you on terms; those units sit in job inventory until they go in the wall. Revenue and the cost of the units belong to the install date, when the balance is collected or the lender funds.
Most window companies we onboard have been recognising the deposit as a sale and the manufacturer invoice as an expense on whatever day each arrived. The result is a strong month every time the sales team has a good run, a weak month every time the plant ships a backlog, and financial statements that say nothing about whether jobs are profitable. We map the CRM — MarketSharp, LeadPerfection, improveit 360, or a Jobber-style scheduler — to QuickBooks Online so each job carries its own deposit, product cost and completion date.
How the job cycle lands in the books
| Event | What actually happened | Ledger entry |
|---|---|---|
| Contract signed, deposit taken | Customer commits; cooling-off period starts | Bank up, customer deposits (liability) up; no revenue, and no HST reported until the deposit is applied or invoiced |
| Cancellation inside cooling-off | Refund owed in full | Reverse the deposit; claw back any commission advance |
| Manufacturer ships and invoices | Units are yours, payable on terms | Job inventory up, accounts payable up |
| Install complete, final invoice | Performance delivered | Revenue split between product and install, cost of goods out of job inventory, deposit applied, HST on the full price |
| Lender funds a financed job | Payout arrives net of the dealer fee | Bank for the net, dealer fee to selling expense, receivable cleared at gross |
| Volume rebate credit from the manufacturer | Price reduction on past purchases | Reduce cost of goods sold, or inventory for units still in stock |
Manufacturer rebates are a cost reduction, not other income
Volume rebates, dealer-programme tier bonuses and co-op advertising credits all come from the same place: the price you paid for product. Under Canadian accounting standards for private enterprises, rebates and discounts on purchases reduce the cost of inventory and therefore cost of goods sold. Parking them in other income overstates your product cost all year and then drops a mystery gain into the month the credit note arrives — usually the first quarter, long after the units it relates to were installed.
We accrue rebates through the year when attainment of the tier is reasonably assured, true them up to the manufacturer's statement, and post co-op reimbursements against the advertising they repay. The HST treatment follows the paperwork: a supplier credit note that adjusts tax means your input tax credits shrink by the same amount, while a rebate whose paperwork says nothing about tax does not — so we read every rebate statement before posting it.
Financing payouts arrive net; the books need gross
When a job is sold on promotional consumer financing through a lender such as Financeit or SNAP Home Finance, the customer signs for the full contract price and the lender deposits that amount less a dealer fee that rises with the length of the promotion. The temptation is to record the net deposit as the sale. That understates revenue, understates HST collected — because the customer owes tax on the full price — and hides the true cost of the financing programme your sales team is quoting.
We record the contract at gross, post the dealer fee to a financing-cost line inside selling expenses, and reconcile the lender portal to the bank each month so funded, pending and declined deals are all accounted for. The dealer fee is a charge for a financial service, so as a rule there is no HST on it and no input tax credit to claim; if you have been claiming one, that is a correction worth making before a review finds it. Our note on how input tax credits work covers the mechanics.
Callbacks, subs and the monthly close
Installer pay — hourly crews or per-opening subcontractors — is posted to cost of goods by job, and subcontractor payments are tagged from day one so the annual T5018 falls out of the ledger. Warranty callbacks get their own cost code: seal failures, sash adjustments and capping fixes charged back to the original job show which products, crews or sales promises are generating service work. Where the manufacturer reimburses labour on a product warranty, that recovery is posted against the callback cost, not buried in revenue.
At month-end we reconcile the bank, the lender portal, the card processor and the deposit ledger against the sold-not-installed list from the CRM, and issue statements showing revenue split between product and installation, gross margin per opening, and the deposit liability that a lender, a buyer or a cautious owner will want to see. If any of your product comes from US plants, the customs and rebate mechanics are covered in our cross-border guide for window and door dealers, and our bookkeeping services page explains the monthly close we run for every client. Whether you keep books on a cash or accrual footing matters more in this trade than most — our cash versus accrual note explains why deposits tip the answer.
Common questions.
Is a customer deposit revenue when we receive it?
No. It is a liability until the units are installed, and it is refundable in full if the customer cancels inside the cooling-off period on an in-home contract. We apply it against the final invoice on the install date.
Where do manufacturer volume rebates go in the books?
Against cost of goods sold, or against inventory for units still on hand. They are a reduction in what you paid for product, and we accrue them through the year rather than waiting for the credit note.
Should we record the net amount the finance company pays us?
Record the full contract price as revenue and the dealer fee as a selling expense. Netting understates both revenue and the HST you collected from the customer.
Related reading
Books that follow the job from deposit to install.
Book a consultation and get a plain answer on exactly what applies to you.