ServiceM8 and Google Calendar Job Automation
Four n8n workflows that turn Google Calendar bookings into ServiceM8 jobs, contacts and staff schedules.

platform
Web Application
team
1 Member
location
Australia
industries
Home Services
Project Background
Project Background
ServiceM8 and Google Calendar Job Automation connects Google Calendar with ServiceM8 through four n8n workflows. It processes service bookings, extracts customer and appointment details, creates or updates ServiceM8 jobs and schedules staff automatically.
The client first asked for a Zapier integration. The solution was built in n8n instead, to handle the custom data extraction, conditional routing, record matching and API calls the job needed. The workflows also write the new ServiceM8 job number back into the Google Calendar event title, so each booking stays linked to its work order.

Business Needs

Business Needs
Staff were copying customer details, addresses, phone numbers, job notes, appointment times and assigned staff from calendar bookings into ServiceM8 by hand. The automation had to cover several service categories, new bookings and changes to existing ones:
- Move bookings from four Google Calendars into ServiceM8
- Extract customer details, property addresses, instructions and appointment times from each event
- Create customer or company records, work orders and job contacts when needed
- Find existing jobs and update them when a booking changes
- Match staff names in events to ServiceM8 staff records
- Support timed appointments and date-only entries
- Handle missing or alternative phone numbers
- Add the ServiceM8 job number to the calendar event title
- Reuse existing customer records, especially for yard work bookings
Tech stacks
n8n
For Backend
JavaScript
For Language

ServiceM8 API
For API

Google APIs
For API
DigitalOcean
For Cloud Services
Service Provided
Project Challenges
- Zapier limits: The requested Zapier approach could not handle the processing and update steps, so the build needed a platform with custom JavaScript, conditional routing and detailed API calls.
- Semi-structured calendar data: Customer details sat inside event titles and descriptions, not in fields, so staff names, addresses, contacts and notes had to be parsed and mapped to the right ServiceM8 fields.
- New bookings versus existing jobs: Treating an edited booking as new would create duplicate work orders, so the workflows detect existing job numbers and route those bookings to updates.
- Staff matching: Calendar events hold staff names while ServiceM8 scheduling needs staff IDs, so names are matched to staff records and start and end times handled correctly.
- Existing customers: Yard work bookings needed extra lookup logic to avoid creating duplicate customer records.
- Different appointment types: Timed appointments and date-only entries each needed their own processing branch.

Strategy and Solutions

- Four n8n workflows for the SB_Pest, Pest options, Bond_clean and yard work calendars
- Calendar triggers that pick up new and edited events about every minute
- JavaScript parsing of addresses, staff, customer names, phone numbers, emails, notes and times
- Automatic customer or company records for new bookings
- Work order creation with address, description, customer and job status
- Job number lookup from the event title to update existing work orders
- Job contact creation and updates
- Staff matching and scheduled job activities
- Job number written back to the calendar event title
- Extra address and contact matching for yard work customers
- Conditional routing for new or existing jobs and timed or date-only entries
Results & Impact
- Less manual admin: booking details move from Google Calendar to ServiceM8 automatically
- One consistent process across pest control, bond cleaning and yard work
- Separate paths for new and existing jobs, avoiding duplicate work orders
- Staff matched and scheduled from the booking details
- Bookings traceable to work orders through job numbers in event titles
- n8n in place of Zapier, with custom JavaScript, conditional routing and direct API calls
- All workflows managed in one n8n environment on DigitalOcean

Other Works
Explore some of the best solutions that we created to offer a best-in-class user experience.

CAPTY: PDGA Tournament Data Automation
n8n workflows that discover PDGA disc golf tournaments, calculate player and event statistics, and sync them to CAPTY.

PetitionPilot: Bankruptcy Form Automation Platform
A guided bankruptcy form platform that fills official PDFs from user answers and emails court-ready documents.

BizBoost: Google Business Profile Automation Platform
A SaaS platform that automates Google Business Profile posting, AI review replies, and approval workflows.



