St. Michael Cleaning

Billing System Manual

A complete guide to managing invoices, payments, and client records for St. Michael Cleaning.

← Back to Operations

Table of Contents

1

Getting Started

The operations system lives at stmichael.work/operations.html. It is protected by Google Sign-In, so only people whose email addresses have been pre-approved can get in.

How to log in

  1. Go to stmichael.work/operations.html in your browser.
  2. You will see the login screen with the St. Michael Cleaning logo.
  3. Click the "Sign in with Google" button.
  4. Choose your Google account. If your email is on the allowed list, you are in. If not, you will see an error.

Who has access?

Only email addresses listed in Settings > Allowed Emails can sign in. The business owner can add or remove emails at any time (see Section 11: Settings).

Signing out: Click the Sign Out button in the top-right corner of the header. Your session ends immediately.

Navigation

Once logged in, you will see five tabs across the top of the screen:

  • Submissions — customer order forms that came in from the website
  • Invoices — list of all saved invoices
  • New Invoice — opens a blank invoice editor
  • Scratch Cards — send scratch-and-win promotions
  • Settings — company info, tax rates, access control
2

Submissions

When a customer fills out the order form on your website, it shows up here as a submission. Think of submissions as your inbox of cleaning requests.

Filter tabs

At the top of the submissions list, there are four filter tabs. Each shows a count:

  • All — every submission ever received
  • Active — recurring clients you are currently serving
  • New — submissions that just came in and have not been acted on yet
  • Completed — clients whose service is finished or jobs that are done

Status buttons

Each submission row has action buttons on the right side:

  • Mark Active — appears on New submissions. Click this when you start servicing a recurring client.
  • Done — appears on New and Active submissions. Click this when the job or client relationship is finished.
  • Reactivate — appears on Completed submissions. Click if a past client comes back.

Editing active clients

Active submissions have an Edit button. Clicking it opens a popup where you can change the client's name, address, phone, email, price, frequency, and their cleaning checklist. This is useful when a recurring client moves to a new address or changes their service level.

Linked invoice numbers

If you have already created an invoice from a submission, the invoice number (e.g., #1389) appears under the status badge. Click the number to jump straight to that invoice in the editor.

3

Creating an Invoice

There are two ways to create an invoice: from a submission (recommended) or from scratch.

From a submission (the easy way)

  1. Go to the Submissions tab.
  2. Find the customer and click the Invoice button on their row.
  3. The invoice editor opens with everything pre-filled: name, address, email, price, and cleaning checklist.
  4. Review the details, adjust anything you need, and click Save Invoice.

From scratch

  1. Click the New Invoice tab in the header.
  2. Fill in all the fields manually.
  3. Click Save Invoice.

Invoice fields explained

  • Invoice # — auto-assigned when you save. You do not need to enter this.
  • Invoice Date — defaults to today. Change if you are backdating.
  • Due Date — defaults to today (for "Immediate" terms). Changes automatically if you switch to NET 30.
  • Client Name, Address, Email — the customer's billing info.
  • Activity Date — the date the cleaning was performed.
  • Activity — a description of the work (defaults to "Sales - Cleaning Services").
  • QTY — quantity, usually 1.
  • Rate — the price you are charging.
  • Tax Type — choose GST only, or GST + PST.
  • GST % / PST % — the tax rates (default 5% GST, 6% PST).
  • Previous Balance — any outstanding amount carried forward from a past invoice.

The three sliders

Below the line item section, there are three toggle sliders:

  • Simple / Detailed — switches between a simple one-line invoice and a detailed invoice with a full cleaning checklist. See Section 5: Detailed Billing.
  • Tax Exclusive / Tax Inclusive — In Exclusive mode, tax is added on top of the rate. In Inclusive mode, the rate already includes tax, and the system back-calculates the breakdown.
  • Immediate / NET 30 — switches the payment terms. NET 30 automatically sets the due date to 30 days after the invoice date.

The totals box

At the bottom of the form, a totals box updates in real time as you change the rate, quantity, or tax settings. It shows: Subtotal, GST, PST, Total, Previous Balance, and Balance Due.

Remember: You must click Save Invoice before you can Preview, Download, or Send. The buttons are grayed out until the invoice is saved.
4

Invoice Actions

After saving an invoice, three buttons become available at the bottom of the editor:

Preview

Click Preview to see the PDF in a popup window without leaving the page. A loading spinner appears while the PDF is being generated. Close the preview by clicking the X button in the corner.

Download PDF

Click Download PDF to save the invoice as a PDF file to your computer. The file will be named something like Invoice_1389.pdf.

Send Invoice

Click Send Invoice to email the invoice to the customer. The system uses Brevo (an email service) to deliver a professional, branded HTML email with the PDF attached. The email includes:

  • A green header with the company logo
  • An invoice summary card showing the invoice number, date, due date, terms, and balance due
  • For residential clients: a "Book Your Next Appointment" button and a referral card
  • The PDF invoice as an attachment

After sending, a green "Email sent" banner appears on the invoice with the date and time it was sent. This also shows up in the Invoices list as "Sent" in the Sent column.

Re-editing a saved invoice

You can edit any saved invoice at any time. From the Invoices tab, click Edit on the invoice row. Make your changes and click Save Invoice again. The same invoice number is preserved — nothing new is created.

A copy of every sent email is also BCC'd to the address configured in Settings (by default, [email protected]).
5

Detailed Billing

When you toggle the billing mode to Detailed, a cleaning checklist appears below the line item section. This lets you show the customer exactly what was cleaned.

What the checklist contains

The checklist is divided into four groups:

  • Kitchen — door frames, appliance surfaces, table/chair legs, mats/rugs, cupboards/counters, floor, walls
  • Bathrooms — toilet, sink/vanity, mats/rugs, mirrors, tub/shower, floor, door frames, walls
  • Living Areas — same items as kitchen (door frames, surfaces, vacuuming, floor, walls)
  • Extras — additional bedroom, appliance deep clean, plant dusting, closet interior, wall washing, window washing, cupboard/cabinet interior, laundry room

3-column layout

In the editor, Kitchen, Bathrooms, and Living Areas are shown side-by-side in three columns. Check off each task that was completed. Extras appear below in a 4-column row.

How it appears on the PDF

On the generated PDF, the checked items appear as a professional cleaning report with ZapfDingbats checkmarks. The three main areas are shown as columns, and extras are listed in a 4-column grid below. There is also an "Other Requests" field for any additional notes.

When to use it

Residential clients only. Detailed billing is meant for residential customers who want to see exactly what was done in their home. For commercial clients, the system automatically hides the billing mode slider and keeps it on Simple.
6

Payments

Once an invoice is saved, a Payments section appears below the action buttons. This lets you record partial or full payments against the invoice.

Recording a payment

  1. Open the invoice in the editor (click Edit from the Invoices list, or click the invoice number on a submission).
  2. Scroll down to the Payments section.
  3. Enter the Amount (e.g., 100.00).
  4. Choose the Method: Cash, E-Transfer, Cheque, Credit Card, or Other.
  5. Optionally add a Note (e.g., "Partial payment, remainder next week").
  6. Click Record Payment.

Remaining balance

Below the payment form, a green box shows the Remaining Balance. This updates automatically after each payment. It equals the Balance Due minus all recorded payments.

Payment history

Each recorded payment is listed with its date, amount, method, and note. Payments are stored permanently with the invoice data.

Partial payments are fine. You can record as many payments as needed. If a client pays in installments, just add each one as it comes in. The remaining balance will count down to zero.
7

History Log

Every invoice has a History section that tracks what has happened to it. This appears below the Payments section when editing a saved invoice.

What events are tracked

  • Created — when the invoice was first saved
  • Edited — every time the invoice is re-saved with changes
  • Sent — every time the invoice email is sent to the customer
  • Payment — each payment recorded, with amount and method

Color-coded dots

Each event in the history log has a colored dot to make it easy to scan at a glance:

  • Green — Created
  • Blue — Edited
  • Amber — Sent
  • Green — Payment recorded

Each entry shows the date and time of the event, so you have a complete audit trail for every invoice.

8

Photos

You can attach photos to any invoice. Photos are split into two categories to keep things organized.

Two photo sections

  • Customer Provided — photos the customer sends you (before shots, problem areas, etc.)
  • Cleaner Provided — photos your cleaning team takes (after shots, completed work)

Uploading photos

  1. Open the invoice in the editor.
  2. Scroll to the Photos section at the bottom.
  3. Click the Upload button under either "Customer Provided" or "Cleaner Provided".
  4. Select one or more image files. A progress bar shows the upload status.
  5. Thumbnails appear in a grid once the upload finishes.

Filenames

Photos are automatically renamed with a meaningful format:
Customer_JordanAntunes_01.jpg or Cleaner_JordanAntunes_01.jpg
This makes them easy to find on the server if you ever need to.

Lightbox view

Click any thumbnail to see a full-size version in a lightbox overlay. Click anywhere outside the image to close it.

Photos in the PDF

Uploaded photos automatically appear in the invoice PDF as a photo gallery section at the end. Images are arranged in a 3-column grid, labeled with their source (Customer or Cleaner), and the aspect ratio is preserved so nothing looks stretched.

Deleting photos: Each thumbnail has a delete button (X) in the corner. Click it to remove the photo from the invoice.
9

Scratch & Win Cards

Scratch & Win is a promotional tool that gives every customer a chance to win a free add-on service. Every order confirmation email includes a scratch card link automatically, but you can also send them manually.

Sending a scratch card

  1. Click the Scratch Cards tab in the navigation.
  2. Enter the recipient's Name and Email.
  3. Optionally enter their Phone number for SMS delivery.
  4. Click Send via Email or Send via Text.

The customer experience

The customer receives a link to a scratch card page. They use their finger (on mobile) or mouse (on desktop) to scratch the golden surface and reveal their prize underneath. A confetti animation plays when the prize is revealed, and a "Book Now" button appears.

Prize list

All prizes are free service add-ons. The system randomly picks from a weighted list. Everyone wins something. Prizes include:

  • Free window washing
  • Free laundry room cleaning
  • Free appliance deep clean (inside and out)
  • Free closet interior cleaning
  • Free plant dusting/wiping
  • Free wall washing
  • Free additional bedroom cleaning
  • Free cupboard/cabinet interior
  • 10% off next cleaning

PDF voucher

After revealing their prize, the customer can save a PDF voucher as proof of their win. They bring this to their next appointment.

Admin alerts

When a customer scratches and reveals their prize, you receive an email notification so you know what was won and can plan accordingly.

Recent cards sent

Below the send form, you can see a list of recently sent scratch cards with the recipient name, date, and prize (once scratched).

10

CSV Export

You can download all your invoice data as a CSV file, which you can then import into QuickBooks or open in Excel/Google Sheets.

How to export

  1. Click the Invoices tab.
  2. At the top right, you will see From and To date fields. Set your date range to filter which invoices to include. Leave them blank to export everything.
  3. Click Download CSV.
  4. A .csv file downloads to your computer.

What the CSV contains

The CSV includes all the key invoice fields: invoice number, date, due date, client name, subtotal, GST, PST, total, balance due, payment terms, and sent status. This maps well to QuickBooks import format.

Date range tip: To export just last month's invoices, set the From date to the 1st and the To date to the last day of that month.
11

Settings

The Settings page lets you configure everything about how your invoices look, how emails are sent, and who can access the system. Click the Settings tab to get there.

Company Info

Your company name, address, email, and GST number. This information appears on every invoice PDF and email.

  • Company Name — your legal business name (e.g., 102217651 SASKATCHEWAN LTD.)
  • Address Line 1 & 2 — your business address
  • Email — the accounts/billing email address
  • GST Number — shown on invoices for tax compliance

Tax Defaults

Set the default GST and PST percentages. These auto-fill when creating new invoices. You can still override them on a per-invoice basis.

Invoice Defaults

  • Terms — the default payment terms (e.g., "Immediately")
  • Activity — the default line-item description (e.g., "Sales - Cleaning Services")
  • Next Invoice # — the number that will be assigned to the next invoice you create. Adjust this if you need to skip numbers or align with your previous system.

Email Settings

  • BCC Address — every invoice email is copied to this address. Use your own email to keep a record of everything sent.
  • Subject Template — the subject line used for invoice emails.
  • Body Template — the text version of the email body (for email clients that do not display HTML).

Auth & Access Control

  • Google Client ID — the technical ID used for Google Sign-In. You should not need to change this unless you set up a new Google Cloud project.
  • Allowed Emails — the list of Google email addresses that can sign in to the billing system. Click Add to grant access to a new person. Click the remove button next to an email to revoke access.
Do not forget to click Save Settings after making changes. Nothing is saved until you press the button.
12

Bubble Loyalty Program

The Bubble Loyalty Program rewards repeat residential customers. The concept is simple: every 7th cleaning is free.

How it works

  1. A customer places their first order on the website.
  2. On the order confirmation page, they see a "Join our loyalty program" option with Google Sign-In.
  3. Once signed in, they are enrolled automatically.
  4. Each time you send them an invoice, the system counts their visits by matching their email address.
  5. Invoice emails include a bubble punch card showing filled and empty bubbles (e.g., 3 out of 7 filled).
  6. When they reach their 7th visit, they get a free cleaning.
  7. The counter resets and the cycle starts again.

Where customers sign up

Customers are prompted to join on the order success screen, right after submitting a cleaning request. They simply click "Sign in with Google" and they are enrolled. No forms, no passwords.

How visits are tracked

The system counts how many invoices have been sent to a given email address. This happens automatically — you do not need to manually update any punch card.

Commercial clients: The bubble loyalty program is automatically hidden for commercial/business clients. It only appears for residential customers.
13

Tips & Best Practices

Commercial vs. Residential

The system handles these differently behind the scenes:

  • Commercial clients automatically default to NET 30 payment terms and the detailed billing slider is hidden (they always get Simple invoices). The loyalty punch card and referral card are also hidden in their emails.
  • Residential clients default to Immediate payment and can use either Simple or Detailed billing. They see the loyalty punch card and referral card in their emails.

Always save before previewing or sending

The Preview, Download PDF, and Send Invoice buttons are disabled until you click Save Invoice. If you make changes to a saved invoice, save again before previewing or sending to make sure the PDF reflects your latest changes.

Working with recurring clients

  1. When a new submission comes in, review it and click Mark Active.
  2. Each time you clean for them, click Invoice on their submission to create a new invoice.
  3. If their info changes (new address, new price), click Edit on the submission first.
  4. When the client relationship ends, click Done.

Tax-inclusive pricing

If you quote a customer a flat price that includes tax (e.g., "$200 all in"), toggle the tax mode to Tax Inclusive. The system will back-calculate the subtotal, GST, and PST from the total price so everything breaks down correctly on the invoice.

Using the Invoices list

The Invoices tab shows every invoice with its number, date, client name, total, and sent status. You can quickly see which invoices have been emailed (marked "Sent" in green) and which have not (marked "Not sent").

Keeping your data safe

All data is stored in flat files on the server and protected by .htaccess rules. There is no external database to worry about. Regular server backups will capture everything.

Need help? This system was custom-built for St. Michael Cleaning. If something is not working as expected, contact your developer.