Onboarding guide
Welcome — this is the start-to-finish guide for getting voice-office answering your phone. Read it end-to-end the first time, then come back to specific sections as a reference. If anything's unclear, get in touch.
What you're setting up
voice-office is your AI office. It answers inbound calls when you can't, follows up on quotes you've sent, books jobs straight into your ServiceM8 calendar, and writes everything back to your customer records so you don't repeat yourself.
Setup takes about 15–20 minutes. After that, the AI runs in Approval Required mode for the first 30 days — every booking it proposes comes to you as an SMS for one-tap yes/no before being confirmed to the customer. Once you're confident, it graduates to running on its own.
Before you start
Have these ready:
- An active ServiceM8 account (any plan — we don't require Connect Plus).
- The mobile number you want emergency transfers to land on (E.164 format, AU —
+61...). - Your business hours (which days, what times — close enough; you can fine-tune later).
- Your service area (suburbs or postcodes you cover).
- A test customer in your ServiceM8 you can ring as during step 8.
- About 20 minutes.
Step 1: Sign up
Enter your business name, your email, and which ServiceM8 plan you're on (Connect / Connect Plus / Unlimited / Lite — we ask so we know what's available to wire up later).
We email you a magic link. Click it.
Behind the scenes: we create a tenant for your business and stamp it with safe defaults — Approval Required mode, AU compliance config, business hours pre-filled to 9–5 weekdays. You can change all of these in the next steps.
Step 2: Connect ServiceM8
Click Connect ServiceM8. You'll be redirected to ServiceM8's standard OAuth screen. Sign in (if you're not already), review the access we're requesting, click Approve.
You come back to voice-office. We've imported, in the background:
- Your customers — so the AI recognises a returning caller from their number and can read out their last job.
- Your services — so when a caller asks about a service, the AI knows what you offer without you typing it into a FAQ box.
- Your active jobs and quotes — so when a customer asks about "the quote you sent me," the AI can see it.
- Your staff list — so we can suggest your on-call mobile from the people already in your account.
This is the first big difference from ServiceM8's built-in Phone Agent: we read your job data automatically. You don't have to retype your services, prices, or process into a FAQ.
You can disconnect at any time — we keep historical conversation data, but stop pulling new ServiceM8 data immediately.
Step 3: Confirm your basics
We pre-fill what we know. You confirm:
- Timezone — defaults to your detected timezone (e.g.
Australia/Brisbane). Time-of-day rules (no Sunday outbound calls; no calls after 8pm) use your customer's timezone, not yours, but your timezone defines your business hours. - Business hours — per weekday. Saturday and Sunday default to closed; tick to open. These determine when After-hours mode kicks in (step 6).
- On-call mobile — the number the AI rings for emergencies (water gushing, gas leak, no power). We auto-suggest from your ServiceM8 staff list. Pick yourself, or someone else.
- Service area — type the suburbs or postcodes you cover. The AI uses this to answer "are you in our area?" without making things up.
You can change all of these later from your dashboard.
Step 4: Pick your AI
This is the fun bit. Your AI gets a name, a voice, and a personality.
Persona name
Default is "Sarah." Pick anything you want — Mike, Liz, Jules, your dog's name. The name appears in the disclosure script the AI says at the start of every call: "Hi, you've reached [your business] — this is [the name], the AI assistant."
Voice
Pick from four Australian voices:
- Brenna (default, female, warm and clear)
- Charlotte (female, professional)
- Logan (male, easygoing)
- Mason (male, neutral)
Click play next to each to hear it speak the disclosure line with your business name. Pick the one that fits the vibe of your business.
Persona preset
Pick one as a starting point — you can edit the underlying prompt later if you want.
- Classic AU receptionist — friendly, efficient, conversational. The default.
- Warm and casual — yeah, no worries, too easy. Best for residential trades.
- Professional and brief — courteous, precise, doesn't waffle. Best for commercial or strata work.
- No-nonsense — gets to the point fast, good for emergency-heavy businesses.
Whichever you pick, you'll be able to refine vocabulary (your suburbs, surnames the AI tends to mispronounce, your service-specific terms) and banned phrases later.
Step 5: Choose your phone number
You have two options today and a third coming later.
Option A: Get a new Australian number (recommended)
Pick an area code. We provision a new number through Twilio in about 30 seconds. From here you have two choices:
- Use this number on your published business listings (Google Business Profile, business cards, website) going forward. Customers ring it, the AI answers.
- Forward your existing number to it (option B below). You keep the number your customers already have.
This option is the path of least resistance — no carrier configuration, no port-in paperwork, no risk of losing your existing number.
Option B: Forward your existing number
You keep using your current number. We still buy a Twilio number behind the scenes, but you don't publish it — your existing line forwards to it.
You have two flavours of forward:
- Full forward — every call to your existing number rings the AI. Good when you want voice-office to be your only line.
- Conditional forward — calls only forward when you don't pick up after a few rings, or you're busy, or out of coverage. Good when you still want to answer when you can.
Carrier-specific forwarding codes
Dial these codes from the handset whose number you're forwarding. Replace <num> with the Twilio number we provisioned (in international format, e.g. +61399998888). Replace N with seconds before forward kicks in (e.g. 15).
Telstra mobile
| What | Code |
|---|---|
| Forward all calls | **21*<num># |
| Forward when no answer (after N seconds) | **61*<num>**N# |
| Forward when busy | **67*<num># |
| Forward when unreachable | **62*<num># |
| Cancel a forward | ##21# (or ##61#, ##67#, ##62#) |
| Check status | *#21# |
Optus mobile Same GSM codes as Telstra. You can also configure all of the above from the My Optus app under "Settings → Call diversions" if you'd rather not dial codes.
Vodafone mobile
Same GSM codes as Telstra. We recommend full forward (**21*<num>#) on Vodafone — historically Vodafone's conditional-forward path has had occasional carrier-side bugs. If you want overflow behaviour (ring you first, fall back to AI), use the Overflow mode in step 6 instead, which we handle on our side.
AAPT / TPG / fixed line These carriers don't generally support GSM codes. Configure forwarding from your carrier portal — we provide a step-by-step walkthrough for each major fixed-line provider once you select that path in the wizard.
Important notes
SMS routing when you forward calls. Voice forwards to us; SMS doesn't (AU carriers don't have SMS-forwarding equivalents to the
**21*codes). What that means in practice:- AI-initiated SMS we send for you — invoice chasers, schedule confirmations, payment links, follow-ups — go out via ServiceM8's SMS pipeline using your ServiceM8 plan's bundled SMS credits (Starter and up). The customer sees
SERVICEM8as the sender by default; if you've enabled ServiceM8's Branded SMS add-on, they see your business name. When they reply (via the "Reply Here" link in the message), the reply lands in your ServiceM8 inbox + the relevant job's diary, AND voice-office picks it up — so if they then ring, the AI knows about the SMS thread. - Cold customer-initiated SMS to your published mobile — still goes to your existing handset, same as today. ServiceM8 doesn't provide a per-merchant inbound SMS number (confirmed with their support), so there's no way for us to intercept SMS to your personal number short of porting it. You handle those manually, or move the SMS line to Option A.
If "every text on my line should hit voice-office" is important to your business, use Option A (new number) and publish that everywhere going forward.
- AI-initiated SMS we send for you — invoice chasers, schedule confirmations, payment links, follow-ups — go out via ServiceM8's SMS pipeline using your ServiceM8 plan's bundled SMS credits (Starter and up). The customer sees
International call rates: forwarding shouldn't incur international charges (your Twilio number is domestic AU), but watch your carrier bill the first month — surprise charges have happened on edge cases. Tell us immediately if you see one.
Test the forward before going live: ring your existing number from another phone (not the one you set the forward up on). You should hear the AI's disclosure within a few seconds.
Option C: Port your number (coming later)
If you want voice-office to be your published number — not a forward target — number porting is on the roadmap. Porting takes 5–15 business days and involves carrier paperwork; not v1. Forward in the meantime, port later.
Step 6: Choose when AI takes calls
Pick one mode now. You can change it any time, and you can layer multiple modes (e.g. After-hours + Scheduled blackouts).
After-hours only (default — and what we recommend you start with)
The AI answers when you're outside the business hours you set in step 3. During business hours, calls go to you (or whoever the carrier is set to ring). Holidays and weekends count as after-hours by default.
Best when: you're an owner-operator who answers the phone yourself during the day.
Always
Every call to your voice-office number hits the AI first. Best when: you have a separate "office line" that you don't personally answer, or you've decided the AI is a better customer experience than your voicemail.
Overflow (ring you first, fall back to AI)
Calls ring your mobile for N seconds (default 20). If you don't pick up, the AI takes over. You set the seconds with a slider; we recommend 20s for AU mobile networks.
Best when: you want to answer if you can, but you don't want the customer going to voicemail when you're on the tools.
(If you're on Vodafone and your conditional forward is patchy, Overflow mode in voice-office is more reliable than relying on the carrier's **61* code.)
Manual on/off
You flip the AI on and off from your phone whenever you like. Three ways:
- In-app toggle in your dashboard (effects in <5 seconds)
- SMS keyword to your control number — text
PAUSEto pause,RESUMEto resume,STATUSto check current state - Bookmarked URL — we send you a one-tap mobile URL you can save to your home screen
Best when: your day-to-day rhythm is unpredictable and you want explicit control.
Scheduled
Specific windows when the AI is on or off. Off Sundays, off lunch 12–1 Tuesdays, off public holidays — whatever fits.
Best when: you have a regular but non-standard schedule.
What happens when the AI is "off"?
When the AI is off (master toggle off, scheduled blackout, paused via SMS), calls roll to voicemail with a transcribed summary. The customer hears: "Hi, you've reached [your business]. We can't take your call right now — leave a message and we'll get back to you." After they leave a message, you get an SMS within seconds containing the transcribed message and the caller's number.
This isn't a separate mode you have to pick — it's the fallback for any "AI off" state. You always have the option to take messages cleanly even when the AI isn't running.
Step 7: Compliance & disclosure
Australia has rules about AI calls and recorded calls. We handle the call-time mechanics; you handle the privacy policy on your website. Here's the split.
What the AI says on every call
Verbatim, every inbound call:
"Hi, you've reached [your business] — this is [your AI's name], the AI assistant. Calls are recorded for our records. How can I help?"
Verbatim, every outbound call:
"Hey, it's [your AI's name] from [your business] — I'm an AI assistant, just calling about [the reason]. The call's recorded for our records. Did you have any questions, or would you like to go ahead?"
This isn't a feature flag. It's not optional per call. It's not skippable for return customers. Every call discloses, every time. After every call, we scan the transcript to verify both disclosures landed; if either didn't, the call is flagged for review.
You can lightly customise the wording (e.g. "for our records" → "for quality and training"), but the AI identity and recording disclosure are non-negotiable. We won't ship a config that lets you remove either.
Why we're strict about it
- The ACCC enforces against "AI-washing" — disclosure that the customer is talking to AI must be explicit, not buried.
- Australian state laws (NSW, ACT, SA, WA in particular) require all parties to consent to call recording. The disclosure line gives the customer the chance to decline before continuing.
- The federal Privacy Act is being amended; from December 2026, businesses using automated decision-making (AI handling customer interactions) must disclose it and keep an audit trail. Our audit log already captures this for every AI decision — you're ahead of the rule.
What's your responsibility
- Privacy policy on your website. We provide a template you can adapt; you publish it. The template covers: AI use, recording, retention, the third-party providers we use (Twilio for telephony, Anthropic for the model, ElevenLabs for the voice, Deepgram for transcription), and the customer's rights to access/delete their data.
- Letting us know about deletion requests. If a customer exercises their APP 13 right to deletion, you forward it to us — we propagate the deletion through conversation history, recordings, and any anonymised eval-set entries derived from their calls.
You'll review and accept this in the wizard. We email you a copy.
Step 8: Make a test call
This is where you find out whether the AI sounds right.
Click Make a test call. We ring your mobile in about 5 seconds. The AI answers with the disclosure (so you hear what your customers will hear) and then plays a real-feeling scenario — it acts like a customer asking to book a leak repair on Thursday morning. You go through the conversation as if you're the AI side.
We score the conversation against an eval case — a labelled scenario from our regression suite. If anything's off (the AI used a phrase you wouldn't, missed a clarification, jumped to a tool call too fast), we surface it after the call with a note like:
"At 0:38, the AI said 'I can definitely book that.' You may want to add 'definitely' to your banned phrases — it sounds AI-ish."
You then play customer in a second test call: ring your own voice-office number (or the forward) from another phone, and have a normal "I'd like to book in for a hot water service quote" conversation. Hear how it sounds end-to-end with your voice and persona.
This is different from ServiceM8 Phone Agent's test call (which is a single ad-hoc ring): ours is a scored conversation with feedback, so you know what to tune before going live, not after.
If the test goes well, you're done with setup. The AI is now live — but in Approval Required mode for the first 30 days.
The first 30 days: Approval Required mode
Approval Required is the default for new tenants. It's the safety wheel that lets you hear the AI on real customer calls without it making any commitments without you.
What the AI does
It conducts the conversation normally — answers, asks clarifying questions, looks up the customer's history, suggests times. When the customer says yes to a booking, the AI says something like:
"Brilliant — got that down for Thursday at 9. Mike will confirm with you within the hour."
The customer thinks the booking is made (it effectively is — pencilled in). What's actually happening: the AI has written the booking to ServiceM8 with a pending_approval flag, and you receive an SMS within a few seconds.
What you do
The SMS looks like:
Booking pending: Sarah just took a hot water service booking from Maria Lopes (recurring customer, 14 Park St) for Thu 14 May 9–10am. Reply YES to confirm or NO to reschedule. Or tap [link] to review the call.
Reply YES (or tap the link, hit Approve). The booking is confirmed in ServiceM8; nothing else happens.
Reply NO. The AI rings the customer back within 5 minutes: "Hey Maria, Sarah again — quick update. Mike's got a clash at 9 Thursday; can we shift to 11, or another day?" and reschedules. The cross-channel continuity means the AI knows about the original conversation when it rings back.
Where approvals show up
- SMS to your phone (default — fastest)
- In-app inbox (audit trail and bulk actions)
- Email as a backup if SMS fails
Graduation
After 30 days, if all of these are true, you can graduate to Monitored mode (or stay in Approval Required as long as you like):
- 30 calendar days have passed
- 20 or more bookings have been approved
- Your rejection rate is under 5% (i.e. the AI is mostly proposing reasonable bookings)
- No high-severity quality flags in the last 7 days
You don't graduate automatically — we surface the option in your dashboard once the criteria are met. It's your call.
If you want to graduate early (you've reviewed enough, you're confident), there's a manual Graduate now button after day 14. We confirm with you and demote you back if quality regresses.
Monitored mode (most tenants stay here)
The AI books directly. Customers hear bookings confirmed live — no SMS approval round-trip.
You keep light oversight:
- Daily SMS digest at 7am summarising the previous 24 hours: how many calls, how many bookings, anything flagged.
- Spot checks: ~10% of calls are surfaced for you to review in the dashboard. The 100% of calls with auto-detected quality flags are surfaced too — but those go to the top of the list.
- The same kill switches as Approval Required (master toggle, SMS keywords, scheduled blackouts) all still work.
You can stay in Monitored mode forever. We don't push you to Autonomous unless you ask.
Autonomous mode (terminal state, opt-in)
Same operational behaviour as Monitored — the AI books directly. The only difference is lighter monitoring:
- Weekly SMS digest instead of daily
- 2% spot-check rate instead of 10% (the 100% high-severity flag rate is unchanged)
Autonomous is opt-in. You click Take off the training wheels in the dashboard when you're ready; we don't auto-graduate you.
If quality regresses (e.g. 3 consecutive calls flagged high-severity, or an unusual outcome rate), we automatically demote you back to Monitored and SMS you with the reason. Re-graduating works the same as the first time.
Day-to-day controls
Once you're live, you have layered controls. You'll mostly use the master toggle and the SMS keywords; the others are there when you need them.
Master toggle
On the front of your dashboard. Three states: AI ON / AI OFF / VOICEMAIL ONLY. Effects propagate in under 5 seconds. Active calls drain naturally; new calls hit the new state.
Per-channel toggles
Voice in/out and SMS in/out as four independent switches. Useful when, say, you want the voice AI on but you're sorting your SMS templates so you've turned SMS replies off for a day.
Per-workflow toggles
Each workflow has its own on/off — useful when you want the AI answering, but pause one specific outbound campaign while you're on holiday or a busy week. Currently:
- After-hours answering (inbound)
- Business-hours overflow (inbound)
- Quote follow-up (outbound, 24h after quote sent)
- Invoice chaser (outbound, with mid-call payment-link send)
- Schedule confirmer (outbound, day before a job)
The shared Payment request flow runs inside calls that need it (invoice chaser, customer rings to pay) and isn't a top-level toggle on its own — turning off the invoice chaser stops the outbound payment asks too.
Scheduled blackouts
Repeating windows when the AI is off. Off Sundays. Off 24 Dec to 2 Jan. Off lunch 12–1 Tuesday and Thursday. Calendar-style editor in the dashboard.
SMS keywords
From the mobile we have on file (your on-call mobile, or any staff mobile you've added), text these to your control number:
| Keyword | What it does |
|---|---|
PAUSE |
Master toggle to AI OFF |
RESUME |
Master toggle to AI ON |
STATUS |
Reply with current mode + last 24h summary |
SUMMARY |
Reply with a longer summary of yesterday's calls |
HELP |
Reply with the keyword list |
The AI replies within 2 seconds confirming the action.
Auto-pause on quality regression
We pause the AI ourselves if any of these trigger:
- 3 consecutive calls flagged at high severity
- Disclosure verification fails (the AI didn't say either the AI line or the recording line)
- A customer is detected saying "stop calling me" — that customer is flagged across channels for that tenant
When auto-pause fires, your dashboard shows a red banner explaining what triggered it and links to the conversation. You decide whether to resume or investigate first.
Panic forward
The escape hatch. One button: drop everything to my on-call mobile. No AI, no voicemail, just plain forward to your phone. Use when something seems wrong and you don't have time to figure out which kill switch fits.
Pricing & free trial
- 30 days free, no credit card required
- Full feature access during the trial
- Tiered pricing kicks in after the trial — designed for owner-operators through small teams
- Founding-customer pricing for the first 50 sign-ups (locked in for the life of your subscription)
- Available regardless of which ServiceM8 plan you're on
- Cancel any time — your data exports cleanly (transcripts, recordings, outcomes — CSV plus audio)
Specific tier prices will be published before the trial ends.
FAQ
What if it gets a customer's address wrong?
Two layers protect you:
- Vocabulary and pronunciations in your tenant config — add suburbs the AI tends to mishear, surnames it mispronounces, and service-specific terms ("dunny" → "toilet" if you don't want it formalising on you).
- Manual review — every call is recorded, transcribed, and flagged when something's off (a customer correction, an unusual term, a missed clarification). You can dismiss flags or promote the conversation into our eval set so the AI learns to handle that case better.
What if it transfers to me at a bad time?
You can decline the transfer — it rings your mobile but if you don't pick up, the AI takes a message. Set escalation rules in your dashboard so the AI only transfers for genuine emergencies (water gushing, gas leak, no power) versus routine queries (where it should book or take a message instead).
My number is on Vodafone and the conditional forward is flaky.
Use full forward (**21*<num>#) instead, and configure Overflow mode in step 6 inside voice-office. We'll handle the "ring you first, fall back to AI" logic on our side rather than relying on Vodafone's carrier-side conditional forward. More reliable.
Can I record my own greeting?
Not in v1 — your greeting is composed automatically using your business name and your AI's name. You can shape the persona prompt to influence tone, and you can lightly customise the disclosure wording. Custom audio greetings are on the v2 roadmap.
What customer data does the AI see during a call?
Only what's relevant to the caller:
- Their last 3 jobs (status, type, when, who serviced)
- Open quotes addressed to them
- Open invoices addressed to them
- Notes specifically attached to their customer record
Other customers' data is never in the prompt. We don't load your full customer database.
What happens if my ServiceM8 disconnects (token expired, account suspended)?
The AI can still answer calls — but it can't look up jobs or write bookings until the connection is restored. We send you an alert SMS and email immediately. By default, the AI falls back to voicemail mode (take a message, send to your phone) until ServiceM8 is reconnected. You can reconnect from the dashboard in one click.
Can I export my call data?
Yes. From the dashboard:
- Transcripts as CSV (per call, per date range)
- Audio recordings as MP3 (zip download for date ranges)
- Outcomes as CSV (call-by-call: which workflow, which result, booked/escalated/messaged)
- Customer interactions as JSON if you want to feed them into your own systems
Export is included on every plan. No paywall on your data.
What about the Australian Privacy Act and the December 2026 ADM rules?
We're designed for them already. Specifically:
- APP 13 (deletion requests): when a customer asks for their data to be deleted, we propagate the deletion through live records, conversation history, recordings, and any anonymised eval-set entries derived from their calls. You request via your dashboard, we confirm within 24 hours.
- APP 1.7–1.9 (automated decision-making, effective Dec 2026): every AI decision (every booking, transfer, escalation) is logged with the prompt version and the conversation it came from. When the rules go live, you'll have the audit trail required.
- Privacy policy template: we provide one for you to adapt and publish on your website. It discloses AI use, recording, retention, and the third-party providers (Twilio, Anthropic, ElevenLabs, Deepgram) involved.
We're not lawyers. Your privacy policy is your responsibility — but we give you a strong default and update the template when the rules change.
Getting help
- Email: support@voice-office.com.au
- In-app chat: bottom-right of your dashboard during business hours (AEST)
- Status page: status.voice-office.com.au — always-up summary of any incidents
- Production incident escalation: a phone number for tenants on paid plans (provided after trial)
If you find a bug or have a feature request, mention it in chat — we read everything and ship the most-asked-for items every couple of weeks.