Check visits against what customers are billed
Each month, flag customers billed for more or fewer visits than they got, so errors are caught before the statement.
Finance · Home services · On a schedule · Updated
Works with
- Slack
- Stripe
- PayPal
- Airtable
- Microsoft 365
How do you reconcile service visits with customer invoices?
To reconcile service visits with customer invoices, set up a monthly Loop. Maito reads the visits in your field service software and the invoices in Stripe or PayPal, checks each customer against their own billing cadence, and posts billed-but-not-visited, visited-but-not-billed and double bills in Slack with a likely reason for each.
How it's done today
Staff assume every visit creates a bill, though contracts differ.
What Maito does
- Read each contract's billing cadence
- Count visits against invoices for the period
- Flag skipped or extra invoices
- Confirm intended exceptions with the office
Example
Loop run: 3rd of the month · Billing cadence check
Checked 212 customers for September. 6 mismatches. Billed but no visit (3): • Acme Dental: monthly plan, visit rescheduled to Oct 4, billed Sep 30 • Hooli Cafe and Initech: same pattern Visited but not billed (2): • Globex Storage: 2 visits, 1 invoice, $145 missing • Wonka Foods: Sep 22 visit, no invoice Double bill (1): • Vandelay Imports: INV-1203 and INV-1207, both $210 for the Sep 9 visit Catch: Vandelay is on a quarterly plan, so it should only have been billed once, in September. The second invoice looks like a monthly rule left on after the switch. Source: visits in the field service software, invoices in billing. Total at stake $565.
@Maito confirm Acme, Hooli and Initech are fine, it's the timing. Draft credit notes for Vandelay.
Marked those three as timing only. Credit note draft for INV-1207, $210, is ready for your approval. I'll also list other quarterly customers with the monthly rule still on.
Maito (9:00 AM):
Checked 212 customers for September. 6 mismatches.
Billed but no visit (3):
• Acme Dental: monthly plan, visit rescheduled to Oct 4, billed Sep 30
• Hooli Cafe and Initech: same pattern
Visited but not billed (2):
• Globex Storage: 2 visits, 1 invoice, $145 missing
• Wonka Foods: Sep 22 visit, no invoice
Double bill (1):
• Vandelay Imports: INV-1203 and INV-1207, both $210 for the Sep 9 visit
Catch: Vandelay is on a quarterly plan, so it should only have been billed once, in September. The second invoice looks like a monthly rule left on after the switch.
Source: visits in the field service software, invoices in billing. Total at stake $565.
Omar (9:08 AM):
confirm Acme, Hooli and Initech are fine, it's the timing. Draft credit notes for Vandelay.
Maito (9:09 AM):
Marked those three as timing only. Credit note draft for INV-1207, $210, is ready for your approval. I'll also list other quarterly customers with the monthly rule still on.
How to set it up
- Ask your agent
“On the 3rd of each month, compare last month's pest-control visits with the invoices in billing. Post any mismatches in #billing with the likely reason.”
- Connect field service software
- Jobber
- Connect billing
- Stripe
- PayPal
- Connect spreadsheet
- Airtable
- Microsoft 365
Not connected yet? Your agent sends you a link to sign in.
What it won't do
It can only compare what is recorded. A visit nobody logged or a contract change nobody wrote down will not show up as a mismatch.
Questions
Visits come from Jobber. Invoices come from Stripe or PayPal. A customer list in Airtable or Microsoft 365 can add contract terms such as quarterly or flat-fee plans.
No. It drafts a credit note and waits for your approval. Changes to billing records stay with your team.
Yes. It runs as a Loop on the day you pick, for example the 3rd of each month, and posts the mismatches in the channel you choose.