Store each dog's vaccine expiry dates in your booking software, make the vaccine question required at online booking, and switch on expiry alerts, so owners are reminded before a vaccine lapses and the diary flags any overdue dog. The one step still done by hand, reading certificates, can be sped up with AI extraction that a person confirms.
Automation enforces a policy; it doesn't make one. Which vaccines you require, what counts as proof and what happens when a dog turns up overdue are decisions for you, ideally with your vet's advice and a look at your insurance terms. Once those are written down, most of the checking can run without anyone remembering to do it.
Decide the policy before automating anything
Write a one-page vaccination policy covering these points. Every setting later in this tutorial comes from it.
- Which vaccines you require. The World Small Animal Veterinary Association's guidelines treat distemper, adenovirus and parvovirus as core vaccines for dogs, with rabies also core where the disease is endemic. For adult dogs, those guidelines suggest revaccinating with core vaccines every three years, while leptospirosis and kennel cough vaccines need annual boosters. Many salons require core vaccines plus kennel cough; ask your vet what makes sense for your clients.
- What counts as proof. A vet certificate, a printout from the practice's system, a record in the practice's own app, a clear photo of any of those.
- Puppies part-way through their course, and how soon after vaccination you'll accept them.
- Exemptions. Older or unwell dogs whose vet has advised against a vaccine: do you accept a vet's letter, and for how long?
- Titer tests instead of boosters: accepted or not, and for which vaccines.
- What happens at the door if a dog is overdue: rebook, groom with conditions, or turn away. Decide it once so staff don't negotiate on the doorstep.
Put the policy on your website and in your booking confirmation. Owners argue much less with a rule they were shown before booking.
A filled-in version for an illustrative salon shows how short it can be. The medical numbers are left to the vet on purpose:
OUR VACCINATION POLICY
Required: core vaccines (distemper, adenovirus, parvovirus) in date
by the vet's own "valid until" date; leptospirosis and kennel
cough in date.
Proof: vet certificate, practice printout, or a screenshot from the
practice's app showing each vaccine and its date. A clear photo
of any of these is fine.
Puppies: welcome from [the number of days our vet advises] after
their final puppy vaccination.
Exemptions: a vet's letter, accepted for 12 months, then reviewed.
Titers: accepted for core vaccines with a vet's letter; not for
leptospirosis or kennel cough.
Overdue on the day: no groom; we'll rebook you within 14 days at
no charge once we have the new certificate.
The "Proof" line earns its place. Owners increasingly send a screenshot of the vet's app that just says "Up to date" in green, with no vaccine names or dates. Under this policy that isn't proof, and staff can say so without a debate: ask for the screen that lists each vaccine.
What a certificate shows, and why reading it is the slow part
Tracking expiry dates is easy once they're in the system. Getting them in is the work, because certificates vary so much. A single card can list several vaccines with different renewal intervals, for example core vaccines valid for three years and leptospirosis for one, so "the date on the card" is rarely one date. Vaccines appear under brand names or combination codes such as DHPP. Some vets write a "next due" or "valid until" date; others only write the date given. Handwritten entries, faded stamps and cropped phone photos are routine.
The trap that catches both people and AI is date format. "03/04/2026" is the 3rd of April in some systems and the 4th of March in others. Tell whoever reads the certificate, human or model, which format your local vets use, and flag any date where the day is 12 or lower as worth a second look.
My strong advice: record the vet's own "next due" or "valid until" date. Don't let anyone, especially an AI, calculate an expiry from the date given, unless your vet has told you the interval for that exact vaccine.
Layer 1: let your booking software watch the dates
Most grooming platforms already do the watching part. Examples from their help documentation:
- MoeGo stores each vaccine record with the vaccine type, date given, expiry date and an optional photo or PDF of the certificate. An expiry notification toggle, on by default for new records, alerts you as a vaccine approaches expiry, and appointment cards show a red icon when a required vaccine is missing or expired, yellow when one expires within 30 days, and green when all are current. You can make the vaccine question required at online booking, with the expiry date or a document upload as the required part, and set up workflows to remind owners about upcoming or expired vaccines.
- Gingr can email customers 30 days before a required immunisation record expires (if the customer has a past or future reservation), lets owners upload records through the customer portal, shows an error when someone tries to book with expired vaccinations, and has an expired vaccinations report.
- DaySmart Pet warns you when you try to book a pet with expired vaccinations, alerts you ahead of expiry and can run reminder campaigns to owners.
If you're choosing between platforms, pet grooming software with AI, compared covers features and prices. Whatever you use, turn on three things: the required vaccine question at booking, owner reminders before expiry, and the warning at booking. That's most of the automation, with no AI involved.
One MoeGo detail worth knowing: if someone switches off the expiry notification toggle on a record, the alert icon no longer appears on the appointment, even when that vaccine has expired. Include toggles in your monthly audit.
Layer 2: AI-assisted reading, with a person confirming
For a salon renewing a handful of certificates a week, the simplest useful AI step is a staff member dropping each certificate photo into a chat assistant on a business plan, with a saved prompt, and typing the confirmed dates into the booking software. It turns a squint-and-type job into a check-and-type job.
This is a dog vaccination certificate. Local vets write dates as
[DD/MM/YYYY]. Extract every vaccine listed into a table:
Vaccine as written | What it covers (if the code is standard) |
Date given (as written) | Next due / valid until (as written) |
Date in [DD/MM/YYYY] | Unclear?
Rules:
- Copy dates exactly as written before converting them.
- If there's no next-due or valid-until date, write NONE.
Do not calculate one.
- Mark Unclear = YES for any smudged, handwritten or cropped entry,
and for any date where the day could be the month.
- Also give: vet practice name, pet name, and whether a vet stamp
or signature is visible.
The "as written" columns let the person checking compare the extraction with the certificate at a glance. The Unclear column tells them where to look hardest. Anything marked NONE or Unclear goes back to the owner or the vet practice, not into the system.
An illustrative reply for a photographed card with one printed and two handwritten entries:
| Vaccine as written | Covers | Given (as written) | Next due (as written) | Converted | Unclear? |
|---|---|---|---|---|---|
| DHP | Distemper, adenovirus, parvovirus | 14/05/2025 | 14/05/2028 | 14/05/2028 | No |
| Lepto | Leptospirosis | 14/05/2025 | 14/05/2026 | 14/05/2026 | No |
| KC (handwritten) | Kennel cough | 02/06/2025 | NONE | NONE | YES |
Two things for the person checking. The kennel cough entry has no next-due date, so under the rules it goes back to the owner rather than being given a date the model worked out. And the leptospirosis booster already expired in May 2026, which the table makes obvious: this dog can't be groomed until there's a new certificate, whatever the owner thinks the card says. A subtler failure shows up only when you compare with the photo: a handwritten "2026" with an open loop on the 6 can be read as "2028", which turns an expired vaccine into an apparently valid one. That is the dangerous direction. The as-written column only helps if someone actually compares it with the image, so make that the one job nobody skips. Why AI reading beats older text recognition on messy documents, and where it doesn't, is covered in AI document extraction versus traditional OCR.
Certificates carry the owner's name, address and phone number. Use a business plan that doesn't train on your content, or switch off model training in the privacy settings of a personal plan, and don't keep the chats longer than you need them.
Layer 3: a fully automatic pipeline, and its privacy catch
Higher-volume salons can automate the whole route: the owner uploads a certificate through a form, an automation sends it to an AI step, the extracted table lands in a review sheet, a staff member ticks "approved", and the dates are entered into the booking software. The checking person stays; the copying disappears.
In Zapier, the AI by Zapier step can analyse images and files; each run uses 1, 3 or 5 tasks depending on the model tier you choose, and the step needs the Professional plan or above. The catch is in Zapier's own help: for image analysis, the image must be publicly accessible. Form tools usually protect uploads. Jotform, for example, has an account-wide setting, "Require log-in to view uploaded files"; switching it off so an automation can read the image means anyone with a file's link can view it, for every form on the account. For vet certificates carrying owners' home addresses, that's a real trade-off, not a technicality.
So before building Layer 3, check whether your form tool can pass the file to the AI step privately, or whether your grooming software can read uploaded certificates itself. If neither is possible, stay at Layer 2. On cost, Zapier Professional starts at $19.99 a month billed annually ($29.99 billed monthly) for 750 tasks. Count your steps before you build: for the salon in the worked example below, about nine certificates a week is roughly 39 a month. With an AI step (1 to 5 tasks, depending on tier), a row added to the review sheet (1) and a staff alert (1), each certificate costs 3 to 7 tasks, so 117 to 273 tasks a month. The form trigger and any filter step cost nothing. That leaves room, but a second automation for reminders would share the same 750. Whatever you build, keep the approval step. AI document processing covers what extraction does well on scans and PDFs, and where it still needs a person checking.
Worked example: a two-groomer salon with 450 active dogs
These figures are illustrative. If most of the salon's 450 dogs need at least one annual booster, that's roughly 450 updated certificates a year, about nine a week. Before automation, a receptionist spent about four minutes per certificate reading and typing (36 minutes a week), phoned about 20 owners a month about overdue vaccines, and turned away two or three dogs a month at the door.
After switching on the software's required question, owner reminders and booking warnings (Layer 1), and using the extraction prompt for reading (Layer 2), certificate handling fell to about 90 seconds each, around 14 minutes a week. Phone chasing dropped to a handful of owners who ignored the reminder emails. Turned-away dogs fell to about one a month, and each of those was a grooming slot the salon had been losing. Total new cost: nothing, as the salon already had the software and a business chat plan.
Reminder wording owners act on
Keep reminders short, specific and helpful rather than stern. Three messages cover most cases:
30 DAYS BEFORE
Hi [owner], [dog]'s [vaccine] is due by [date]. Once it's done,
you can upload the certificate here: [link]. We need it before
[dog]'s next groom on [appointment date, if booked].
7 DAYS BEFORE (no upload yet)
Hi [owner], quick reminder: we still need [dog]'s updated [vaccine]
certificate before [date]. If your vet has already done it, a clear
photo is fine: [link].
AT BOOKING, WHEN EXPIRED
Thanks for booking [dog]! Our records show [vaccine] expired on
[date]. Please upload the new certificate before the appointment,
or we'll need to move it. Our vaccination policy: [link].
AI can help you write versions in your own tone, but the fields must come from the software, never from a model's guess. Watch the tone it drifts to. Ask for a "firmer" at-booking message and an illustrative draft comes back as: "Failure to provide valid vaccination records will result in your appointment being cancelled." Accurate, and likely to lose you the client. The version worth sending says the same thing as a next step: "We'll need the new certificate before Thursday, or we'll move [dog]'s groom to a date after the vet visit. Upload it here: [link]."
One edge case catches automated reminders out. An owner of a 15-year-old terrier sends a vet's letter advising against further leptospirosis boosters. If staff simply leave the old expired record in place, the software keeps flagging the dog and emailing "overdue" reminders every month, which feels careless to an owner whose dog is elderly. Record the exemption as its own entry with a review date 12 months ahead, attach the letter, and switch off reminders for that vaccine only, so the core-vaccine reminders keep running. Note the exemption on the record, so the monthly audit below doesn't mistake it for a toggle switched off by accident. Vet practices send their own reminders too; how vets handle vaccination reminders with AI covers the vet side of reminders, so yours can complement theirs rather than repeat them.
What the automation must never decide
- Medical exemptions. A vet's letter for an elderly or unwell dog is read and approved by a person, with an expiry date set for review.
- Titer results. Accepted or not per your policy, by a person.
- Recently vaccinated dogs. If your vet recommends a waiting period after certain vaccines, write it into the policy and have staff apply it.
- Owner disputes. "The vet said it's fine" is a conversation, not a data entry.
- Puppies mid-course. Your policy decides; the system just records.
A ten-minute monthly audit
Once a month: pick ten dog records at random and compare the expiry dates in the software with the uploaded certificates; run the expired-vaccinations list and check each dog has either a reminder sent or a future appointment flagged; look for records with alerts switched off; and read any certificate marked Unclear that month to see whether the prompt needs another rule. If the same misreading turns up twice, add it to the prompt.
An illustrative audit result: of ten records checked, nine match their certificates. The tenth has leptospirosis valid until 2027 in the software, while the certificate says 2026. The extraction table for that dog said 2026 correctly; the mistake happened when a receptionist retyped it. The fix is procedural, not a prompt change: staff copy the converted date from the table instead of retyping it, and the audit sample goes up to 15 for the next two months to see whether it happens again. One alert toggle was also found switched off, on a dog whose owner had "promised to send it next week" three months earlier.
Treat vaccine expiries like any other renewal date in the business; a compliance calendar for licences, insurance and certificates shows how to keep them all in one place. And if you haven't yet set up the rest of the intake questions, collecting pet details before booking covers coat, temperament and health.
Vaccination records: salon owners' questions
Can we accept a phone photo of the certificate?
Many salons do, as long as the photo is clear enough to read the vaccine names, dates and the vet practice's details. Decide what counts as proof in your written policy: a vet certificate, a printout from the vet's system, or a record in the practice's app. If a photo is blurry or cropped, ask for another rather than guessing, and never let an AI fill in dates it couldn't read.
Should we accept titer test results instead of boosters?
Some owners and vets use antibody (titer) tests to check protection for the core vaccines instead of revaccinating on a schedule. Whether you accept them is a policy decision to make with your own vet's advice, including which vaccines a titer result can stand in for and how long you treat it as valid. Record accepted titers in the software like any other record, with an expiry date.
How long should we keep copies of certificates?
Keep what you need to show that each dog met your policy while it was a client, and no more. Data-protection law such as the GDPR expects you to keep personal data only as long as necessary and to say so in your privacy notice. Set a retention period, delete old uploads when dogs leave, and check the details with a data-protection adviser if you're unsure.
Further reads
- How Mobile Dog Groomers Use AI for Routes, Reminders and Rebooking — Reminders and rebooking when you groom from a van.
- How to Redact Personal Data From Documents With AI Before Sharing — Strip owner details from documents before AI sees them.
- How to Add Human Approval Steps to AI Automations — Build the staff approval step into the automation properly.
- When Does Zapier Get Too Expensive? Finding the Tipping Point — When task counts make an automation cost more than it saves.
- What to Check in an AI Tool's Privacy Policy and Terms — What to read before uploading vet records to any AI tool.
- How to Turn Handwritten Forms Into Spreadsheet Data With AI — Handwritten certificates follow the same rules as handwritten forms.
- How to Brief a Developer on a Custom AI Workflow You Need — The eight parts of a developer brief for an AI workflow, a copyable requirements template, and a worked example from a dog-grooming salon.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: MoeGo help articles on vaccine records and online booking questions; Gingr support articles on immunisation records and reminders; DaySmart Pet help on vaccinations; WSAVA 2024 vaccination guidelines; Zapier help on AI by Zapier; Jotform help on uploaded-file privacy (checked September 2026).