Review and Send a PM Visit Invoice
When the PM is finished, one invoice for the visit drafts itself: review it truck by truck, add any fees or a discount, check the readiness ring and send it.
For: Admins, service managers and billing staff · Permission: Manage appointments · Time: ~3 minutes
Quick summary
- Finish every truck on the visit. The order moves to Invoicing and the invoice drafts itself.
- Open the Invoice tab and review each truck's programs, parts and labor.
- Add fees, a surcharge or a discount if you need to.
- Check the readiness ring next to Send Invoice, then send.
Before you start
- You'll need: a PM visit where every truck is completed or marked Not available (see Complete PM Work). Until then the Invoice tab says Complete services on all vehicle(s) to generate an invoice.
- Check the recipients: sending emails the invoice to everyone at the customer's company with the Receive invoices permission and a valid email. If nobody has it, it goes to the contacts on the order that have an email. Make sure that list is right before you send.
Open the Invoice tab
On the PM service order, click Invoice. The steps bar shows where you are: Service completed, Review & send, Invoice sent. Next to Invoice Details are the readiness ring, Preview and Send Invoice.

Under it you'll find the Bill to details, the invoice number, Invoice Date, Terms (the customer's payment terms) and Due Date. You can type a Reference No. while the invoice is a draft. The QuickBooks invoice number fills in by itself once the invoice is pushed to QuickBooks.
Review each truck
There's one invoice for the whole visit, organized by truck. Each truck shows how many services it had, its status and a Vehicle subtotal, then its unit number, VIN, make and model, year and Mileage in / out. Below that is one Program block per program, with the parts used on it. Parts a technician added to a task appear under that task's program.

Labor comes only from a program's standard time. If the program has a standard time, its block has a Labor line marked Program standard time. If it doesn't, as in this example, there's no labor line. The technician's clock isn't billed. Labor is rounded up once for the whole invoice to your shop's labor rounding step, not truck by truck (see Choose How Labor Is Rounded).
To bill extra time or a charge, use Add charge on a program (Add fee or Add labor), or the ⋮ menu on the truck (Add labor, Add fee, Edit vehicle). Add labor opens Labor Details, where you enter the hours and how they're priced.
Add fees, a surcharge or a discount
The Invoice Summary at the bottom adds it all up. Subtotal is all the work on this visit, before the fees, discount, surcharges and tax below it. Charges your shop applies automatically show an Auto tag. Click ✕ to remove a line.
- + Add fee: pick one or more fees from your catalog, then click Add fee (or Add 2 fees, and so on). Fees take their catalog price on a visit. A fee already on the invoice is grayed out and tagged On this order. The Service Fee is applied automatically. If you remove it, pick it here to put it back.
- + Add surcharge: add a surcharge by hand. Surcharges your shop applies automatically show the Auto tag (they come from Settings › Fees & Surcharges).
- + Add discount: a dollar amount off the whole order (labor, parts, fees and surcharges), before tax. Enter it as a positive amount: a negative amount is refused.
- Travel time: if the technician's travel was logged, it shows on its own line in minutes. Click Edit to change the billed minutes, or ✕ to remove it. Once it's removed, + Add travel time brings it back.
Taxes are worked out the same way as on a repair invoice: from the order's Service Location (or the appointment's, if the order has none), with the same tax classes and customer exemptions. If your shop uses QuickBooks' Automated Sales Tax, Use QuickBooks' Sales Tax under Taxes switches the invoice to QuickBooks' figure, and Use MetaFleet's Sales Tax switches it back. When an invoice has 2 or more taxes, staff can click the info button beside Taxes to see each one. Customers don't see it. Once the invoice is sent, the Invoice History card lists it with a Taxes column. See Set Up Taxes by Jurisdiction.
Use Notes for anything the customer should read, Preview to see the PDF (it opens in a new tab), and Save draft to keep your changes without sending.
Check the readiness ring
The ring next to Send Invoice counts the checks that pass, for example 3/3. Click it to see the list under Before this invoice can be sent:
- Service work finished: every truck is completed or Not available.
- Labor rate set: any labor hours on the invoice have a rate.
- Something to bill: there's at least a fee, some labor or parts.
- When they apply, Inspection labor rate set and A photo for the customer.

If something is still open, clicking Send Invoice opens this list instead of sending, so you can see what to fix.
Send the invoice
Click Send Invoice at the top, or Send invoice in the summary. MetaFleet emails the PDF to the customer's contacts and the order moves to Pending Payment. Send Invoice becomes Resend, and the sent copy is listed under Invoice History. Record payments on the Billing tab, where each payment shows the date in your own time zone. A payment recorded on the order anywhere else is refused with "This order is billed on its visit invoice. Record the payment on the visit invoice instead."

There's no confirmation step. The invoice goes out as soon as you click Send, to the people listed under Check the recipients. If nobody can receive it, Invoice can't be emailed opens instead (see Troubleshooting).
- Photos: if you haven't picked photos, the invoice goes out with every photo from the visit. Send is refused if you deselect them all or if the photos can't be read (see Troubleshooting). Resend doesn't wait on photos.
- FleetNet visits: Send and Resend wait until every inspection form is ready (the ring shows Inspection forms ready for FleetNet), and FleetNet gets the invoice and forms as one PDF. See Work a FleetNet Job After You Win It.
- QuickBooks: if your shop (or the brand on the visit) is connected to QuickBooks, the sent invoice is pushed there automatically, and people with Manage account settings can press QB Sync (before Preview) to push it again. If the connection needs attention, Send is held with Finish QuickBooks setup to send invoices.
- Skip payment: next to Preview (it needs Manage invoices or Manage all service orders) it marks the visit as no charge. Confirm with Mark no charge in the dialog. A no-charge invoice still has to be sent, and sending closes the order instead of moving it to Pending Payment.
- Inspection forms: if the visit included an inspection, a Email the completed inspection forms switch appears under Invoice Details. It's off by default, and the forms stay in Files either way.
Void an invoice before it is paid
Permission: Approve invoice and Manage appointments. On the Billing tab, Void cancels a draft or sent visit invoice that hasn't taken a payment. Voiding asks first and needs a reason. It doesn't refund anything, but if the invoice used company credit, that credit goes back to the company once. Company credit doesn't count as a payment.
Once any payment is on the invoice, even one that was later refunded, it can't be voided. Void is grayed out with the reason, for example: "This visit invoice has $X paid on it, so it can't be voided. Refund the payment, or write off the $Y still owed." In the Billing Hub, the row menu's Void invoice (it needs Approve invoice and Manage Billing Hub) asks first ("Void invoice VST-… for $…?") with a required reason, and is grayed out the same way once a payment is on the invoice.
To void one payment row on the Billing tab, you need Approve invoice and Manage appointments, and you give a reason. A card payment is refused with "This payment was taken by card. Refund it instead." A row posted by a Billing Hub payment is refused with "This came from a Billing Hub payment. Unapply it there instead." A row that gave company credit back is refused with "This row gave company credit back. It can't be voided here."
Stop work and invoice early
If a job has to end before every truck is done, open the Invoice tab while the work is still under way and click Stop work & invoice.

- Pick why the work is stopping: Customer cancelled, Vehicle is not on-site, Site inaccessible, Area is not covered or Other.
- Add a note if you like. It's required for Other.
- Tick the parts that were used. If the order has parts listed, the window asks Which parts were used? Tick each part the technician fitted. Anything not ticked comes off the order and goes back to stock.
- Click Stop work & invoice.

The technician is released right away. Trucks already finished are still billed. Unfinished trucks are called off with your reason (a truck that never started shows Not available), and the order moves to Invoicing. If no truck was finished, there's nothing to bill and no invoice is drafted.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| "Complete services on all vehicle(s) to generate an invoice." | A truck is still Not started or In service | Finish it or mark it Not available (see Complete PM Work), or use Stop work & invoice. |
| Invoice can't be emailed opens when you send | No contact has the right permission or a valid email address | Click Cancel, then give someone at the company the Receive invoices permission or add a contact with a valid email to the service order, and send again. Save invoice sends it without an email. |
| Clicking Send Invoice opens a list instead of sending | A readiness check isn't met | Fix each item in Before this invoice can be sent. |
| A program has no Labor line | It has no standard time | Expected. Use Add charge › Add labor to bill time. |
| Labor shows $0.00 on a truck | That truck was called off or marked Not available, so its program bills $0 | Expected. Add labor by hand if you still charge for the visit. |
| Parts missing from the invoice | They weren't recorded on the task | Add them on the task in the technician app, or add lines on the invoice under the program. |
| "Set a labor rate for … before sending the invoice." | Labor hours were added without a rate | Open the labor line's menu, click Edit labor and set the rate. |
| "Add a fee, some labor, or parts before sending the invoice." | The Something to bill check isn't met: the invoice has no fee, labor or parts | Add a fee, some labor or parts. |
| "Finish QuickBooks setup to send invoices" | The QuickBooks connection needs attention | Click Open QuickBooks setup and finish it, then send. |
| "Select at least one photo for the customer before sending the invoice." | Every photo is deselected | Select at least one photo, then send. |
| "Couldn't read this visit's photos. Try again." | The visit's photos couldn't be loaded | Send again. |
| A banner says "A card charge started at … and hasn't been confirmed. Payments on this invoice wait until we know whether the card was charged." Void and Apply hold answer "A payment for this invoice is already in progress." | A card charge on the invoice is still waiting for Stripe's answer. Mark Paid and the Record payment row are hidden meanwhile, Void and Apply hold are refused, and the card charge is disabled | Wait a few minutes. If Stripe never answers, the invoice shows when the charge started and a Check Stripe button that turns on 8 minutes later, for people with invoice approval. Click it. If Stripe still can't be reached, Record payment by hand appears next to it: read the warning, enter the payment and click Record. A part payment keeps the invoice sent, and the Charge card on file ($) row comes back for the rest. |
| Void is grayed out | The invoice has taken a payment | Refund the payment, or write off the amount still owed (see Void an invoice before it is paid above). |
| "We couldn't open the PDF. Try again." | The stored copy couldn't be fetched | Click Preview (or the Invoice History link) again. |
| Stop work & invoice isn't there | The order has already reached Invoicing | Nothing to stop. Review and send the invoice. |
FAQs
Where do the labor hours come from?
Only from the program's standard time. If a program has none, there's no labor line, and the technician's clock time isn't billed. Add labor yourself if you charge for time.
Is there one invoice per vehicle?
No. There's one invoice per visit, organized by truck, with a block for each program on each truck.
Who receives the invoice?
Everyone at the customer's company with the Receive invoices permission and a valid email, or else the order's contacts that have an email. They get the PDF by email.
Can I void a paid invoice?
No. After any payment, refund it or write off the balance instead.
What happens after I send it?
The order moves to Pending Payment, the button changes to Resend and you record payment on the Billing tab. If QuickBooks is connected, the invoice is pushed there too.