STEVENPALMIERI

The truck is full of parts, and the books already called them an expense.

The ticket has a price. The price is not a pile of hours plus a pile of parts unless you build it that way.

A flat-rate price book sells a task for a set price. The customer does not see hours. Your books still have to see the parts that left the truck and the labor that went to the house, or the price book is a black box that happens to deposit money. Maintenance agreements make a second timing problem. The customer paid for a year of visits, the cash is in the bank, and most of the visits have not happened. A third problem sits in the driveway: parts on the truck are still yours until they are installed. Expensing them the day you buy them makes Tuesday look terrible and the job they eventually land on look free.

A flat-rate ticket still has parts and labor inside it

The invoice total can be the task price from the book. Behind that total, the parts used and the labor used are what tell you whether the book is priced right. If every ticket is one income number and the parts were already expensed when they were bought, you will never see a task that loses money. You will only see a company that sometimes has cash. Put the parts on the job when they are used. Put the labor on the job when the tech is there. Let the flat-rate price be the sale. The difference between that price and those costs is the only margin that means anything.

Discounts off the book price should stay visible. If the tech cuts the price in the driveway and you only enter the lower number, the book looks like it performed and the discount never existed. Enter the book price and the discount. Then you can see whether the book is wrong or the discounting is the habit.

Truck stock is inventory until it is on a ticket

Parts in the warehouse and parts on the truck are the same kind of thing. They are yours. They become a cost when they are installed on a customer's job, not when the supply house runs your card. If you expense the supply-house bill on Tuesday, that week absorbs every future job's parts, and the jobs themselves show no parts cost. Minuses and pluses across the month can even look fine in total, which is why the mistake survives. The company total hides a job total that is nonsense.

A truck count does not have to be a warehouse audit every night. It has to be honest often enough that a restock is a transfer to the truck, or a purchase into inventory, and a ticket is what pulls the part out. When a part is missing and nobody can say which ticket took it, that is the leak. Write it down as a shrinkage item you can see. Do not bury it by expensing the next order a little heavier.

A maintenance plan is cash now and work later

If a customer pays for a year of tune-ups today, you have cash and you have an obligation. The cash is not all this month's sales. The visits you have not done are still owed. Record the payment, and keep the unearned portion as a liability until the visit happens, or until the period the plan covers passes, on a simple schedule you can explain. Taking it all into sales in the signup month makes that month look brilliant and makes the month of the actual visit look empty, which is when you are paying the tech to do the work.

Canceled plans and unused visits need a path back out. If you keep the unearned amount, say so, and know that your tax preparer will ask whether you may keep it. If you refund it, the refund is not a new expense category called miscellaneous. It reverses the money you were holding.

The field software and the books must not both count the sale

ServiceTitan, Housecall Pro, and the other field tools are where the ticket is born. The books are where the bank has to agree. If a payment is recorded as a sale in the field tool and recorded again when the deposit hits the bank, you have counted the customer twice. Pick one system as the place the sale is created, and let the other record the deposit as the collection of that sale, net of the processor fee. Fees come out of the deposit the same way they do for any card batch. The deposit is not the sale.

What you send is a recent stack of tickets, a supply-house statement, the maintenance-plan list if you have one, and bank access. The first pass maps a ticket to the books without doubling it, pulls truck stock out of 'already expensed,' and lists plan payments that are still unearned. You get a week you can read: sales at the book price, parts that actually went on tickets, and cash that is still owed back as future visits.

Questions owners ask before they send the file

If I use a flat-rate book, do I still track parts on the job?

Yes. The book sets the price the customer pays. The parts and the labor tell you whether that price worked. Without them, a busy month and a profitable month are the same rumor.

When do parts on the truck become an expense?

When they are installed on a customer's job. Buying them only moves them onto your truck. They are still yours until a ticket takes them off.

The customer paid for a maintenance plan in January. Is that January sales?

Only the part you have already performed. The rest is money you are holding against visits you still owe. Calling the whole payment January sales makes January dishonest and makes the visit month look like you worked for free.

If your file looks like this, start with a free look: HVAC, plumbing, and electrical QuickBooks cleanup.