Rawesome Vets · Admin & Technology Reference

New Client System — Admin & Tech

Manager / Owner Only
Administrative

Version 1.0 · June 2026 · Owner / practice manager reference

Who this is for

This is the technical reference for the owner / practice manager. It explains how the automated new client system fits together, what to check when something breaks, and what a buyer needs to take it over. Reception and nursing staff should use the New Client Digital Form SOP instead — they don't need anything on this page to do their job.

System Overview

The new client registration system is automated end-to-end. Once set up correctly it needs no manual intervention for a standard registration. A client fills in the form, confirms their email, and is automatically saved to the CRM, emailed a welcome pack, and added to the marketing list with the correct consent tags.

End-to-End Flow

#StepWhat happens
1Client submits formForm at rawesomevets.com.au/new-client POSTs the data to a Google Apps Script via fetch.
2Apps Script firesSaves a new row to the Google Sheet CRM, sends a formatted clinic email to clinic@rawesomevets.com.au, and sends a verification email to the client.
3Client confirms emailClient clicks the link in the verification email. Apps Script marks Email Confirmed = Yes, adds the client to Brevo with the correct tags, and sends the welcome email (marketing-yes or marketing-no version).
4Brevo automationOnce tagged in Brevo, the 3-part email nurture series begins (Day 2 / Day 7 / Day 14).
5REALPETFOOD replyIf a no-marketing client replies REALPETFOOD to their welcome email, the hourly Apps Script trigger catches it, updates the sheet, adds them to Brevo, and sends a pack confirmation email.

Key Accounts & Credentials

⚠ Sensitive — do not share outside ownership / management

Live secrets (the Apps Script deployment URL and the Brevo API key) are not printed on this page because the staff portal is visible to all staff. They are kept in the owner password manager. The table below tells you where each piece lives and which account owns it.

SystemDetails
Form URLrawesomevets.com.au/new-client
Form file locationGoDaddy hosting — wp-content/uploads/new_client_form.html
Google Sheet CRMShared from mei@rawesomevets.com.au — sheet named 'New Clients'. Transfer ownership to clinic@ before sale.
Apps ScriptDeployed under mei@rawesomevets.com.au. Redeploy under clinic@ before sale.
Apps Script URLStored in the owner password manager (the live /exec deployment URL). Referenced in the form as APPS_SCRIPT_URL.
Brevo accountclinic@rawesomevets.com.au
Brevo API keyStored in the Apps Script constants and the owner password manager. Retrieve from the Brevo account (Settings → SMTP & API) if it ever needs regenerating — not recorded here.
Sending emailAll client emails send from clinic@rawesomevets.com.au via a Gmail "Send As" alias.

The Google Sheet CRM

Every client who submits and confirms the form gets a row in the Google Sheet. To access it, open Google Drive under clinic@ or mei@rawesomevets.com.au and search for the sheet named 'New Clients'.

ColumnWhat it contains
Submitted AtDate and time of form submission
Owner detailsName, address, postcode, email, mobile, home phone, secondary contact
How HeardReferral source — including referee name if applicable
ConsentsSocial media consent, marketing consent
Email ConfirmedNo (pending) or Yes (confirmed) — updates automatically when the client clicks the link
Confirm TokenUnique one-time token used by the confirmation link — do not edit
Pet columnsUp to 6 pets — name, species, breed, colour, DOB, sex, microchip, insurance, policy, gap only

The Apps Script

The Apps Script is the engine of the system. It runs three functions:

doPost — runs on every form submission

  • Saves the row to the Google Sheet
  • Sends the clinic email to clinic@rawesomevets.com.au
  • Sends the verification email to the client

doGet — runs when a client clicks the confirmation link

  • Marks Email Confirmed = Yes in the sheet
  • Adds the client to Brevo with the correct tags
  • Sends the welcome email (marketing-yes or marketing-no version)

handleSubscribeReply — runs hourly via trigger

  • Scans the Gmail inbox for clients who replied REALPETFOOD to the welcome email
  • Updates Marketing Consent in the sheet
  • Adds them to Brevo with the marketing-yes tag
  • Sends the Welcome Pack confirmation email
Checking the hourly trigger

Open Apps Script → click the clock icon (Triggers) in the left sidebar → confirm handleSubscribeReply is set to run every 1 hour.

Brevo (Email Marketing)

Brevo receives new contacts automatically from the Apps Script when a client confirms their email. No manual importing is needed.

Tags applied automatically

  • new-client — applied to every confirmed client
  • Rawesome Vets — Marketing Yes — applied if they opted in on the form or replied REALPETFOOD
  • Rawesome Vets — Marketing No — applied if they opted out

Email automation to build in Brevo (if not already done)

Trigger: Contact tag added = 'new-client' AND Marketing Consent = Yes

  • Wait 2 days → Email 1: How did it go?
  • Wait 5 days → Email 2: Why we feed differently
  • Wait 7 days → Email 3: Are you noticing a difference?

Full email copy for all three is in the file rawesome-email-series.txt.

Welcome Emails — What Gets Sent

Client typeWelcome email content
Marketing YESFree raw meaty bones feeding guide link + Welcome Pack details (pick up at reception) + teaser for the email series coming.
Marketing NOFree raw meaty bones feeding guide link + soft nudge to reply REALPETFOOD to claim a free sample pack.
Replies REALPETFOODConfirmation email: Welcome Pack reserved at reception + added to the Brevo marketing series.

If Something Breaks — Troubleshooting

Form submits but no row in the sheet

  • Check the Apps Script executions log (clock icon → Executions)
  • Look for doPost — if Failed, click it to see the error
  • Most common cause: Apps Script needs reauthorisation — run doPost manually and click Allow

Client not receiving the confirmation email

  • Check the executions log for doPost errors
  • Check the client's email address is valid
  • Ask the client to check their spam / junk folder

Confirmation link not working

  • Check the executions log for doGet errors
  • Most common cause after a redeployment: old confirmation links use the old deployment URL — redeploy and check the SCRIPT_URL constant matches the deployed URL

REALPETFOOD replies not being caught

  • Check the hourly trigger is active — Apps Script → Triggers → confirm handleSubscribeReply is listed
  • If missing, re-add: function = handleSubscribeReply, time-driven, every 1 hour

Emails sending from Mei's address instead of clinic@

  • Confirm clinic@rawesomevets.com.au is set up as a Send As alias (Gmail → Settings → Accounts and Import → Send mail as)
  • Confirm the alias is verified
  • Redeploy the Apps Script after verifying

Before the Sale — Handover Checklist

Complete every item before handing the system over to a buyer. Done = the full flow has been tested end-to-end under the new account and a buyer can run it without contacting Mei.

Pre-sale handover:

  • Transfer Google Sheet ownership from mei@ to clinic@rawesomevets.com.au
  • Redeploy the Apps Script under the clinic@rawesomevets.com.au account
  • Update APPS_SCRIPT_URL in the HTML form with the new deployment URL
  • Re-upload the HTML form to GoDaddy
  • Confirm the Brevo account is under clinic@rawesomevets.com.au
  • Confirm the 3-email Brevo automation is built and active
  • Confirm the hourly handleSubscribeReply trigger is active under the new account
  • Test the full flow: submit → confirm → welcome email → sheet row
  • Hand the buyer this document + login credentials for all accounts (from the password manager)

Reminder: the live Apps Script URL and Brevo API key are kept in the owner password manager, not on this page. Pass them to the buyer through that vault at handover — don't paste them into the portal.

Questions about the system? This is owner-maintained — contact Mei.