AUTOMATION SYSTEM CASE STUDY

First Aid Course Registration → Invoicing Automation

We helped a first aid training company keep their existing Google-based workflow, while automating the high-friction admin steps from registration to invoicing.

At a glance

Primary stack

Google Sites + Forms + Sheets + Apps Script + QuickBooks API

Workflow impact

Reduced manual handoffs across registration + billing

Client-reported result

5+ emails/client → ~2 emails/client

Problem

The business managed course registrations through Google Forms and spreadsheets, but fulfillment was heavily manual. For each registrant, the team often needed to send multiple emails and re-enter data across several sheets, then create/send invoices manually in QuickBooks.

  • • Form submission notifications required manual follow-up.
  • • Invoice creation and delivery depended on admin availability.
  • • Status tracking (new, registered, invoiced, paid) lived in multiple sheets.
  • • Over a full year, this created significant overhead across hundreds of clients.

Constraints

  • • Keep the existing Google Sites experience (no full platform migration).
  • • Avoid disruption to day-to-day operations during rollout.
  • • Maintain compatibility with the QuickBooks billing workflow.
  • • Support both new and returning registrants cleanly.

Solution

We implemented a phased automation layer on top of their current stack instead of replacing it.

1) UX + intake foundation

Updated Google Sites templates and standardized intake flow

2) Dynamic course options

Apps Script + Sheets-driven course dropdown updates

3) Data routing automation

On-submit scripts move records to required tracking sheets

4) Billing integration

QuickBooks lookup/create customer + invoice send + status update

We also built invoice reminder automation for unpaid invoices (implemented, with activation controlled by the client’s preferred timing).

Architecture

Trigger-based workflow using Google Apps Script as the orchestration layer:

Google Form Submission

↓ Apps Script trigger (onFormSubmit)

↓ Normalize + route data to registration/status sheets

↓ QuickBooks API: find existing customer or create new

↓ Generate + send invoice

↓ Update workflow status columns (e.g., Invoice Sent / Paid)

↓ Optional reminder path for unpaid invoices

Outcomes

  • • Client-reported reduction in communication overhead from 5+ emails per client to approximately 2 emails per client.
  • • Less manual copy/paste between sheets and fewer process breaks.
  • • Faster, more consistent invoice handling with clearer status visibility.
  • • Automation foundation that scales better with seasonal and annual volume.

Next Step

If your business is still running key workflows through manual emails and spreadsheets, we can map your current process and identify the highest-leverage automation points first.