Reminder triggers — what fires a reminder

A reminder only sends when there's a due date to fire from — here's where each type pulls its date

OwnerManager

Pistonlog's reminders are event-scheduled, not date-scanned. When a meaningful event happens (a jobcard is completed; an appointment is created), Pistonlog queues a reminder for each applicable template with its scheduled date set to (due date − countdown days). The daily run then sends every queued reminder whose scheduled date has passed and that hasn't been sent yet (rows more than 14 days overdue, e.g. after an outage, are marked skipped rather than sent late).

When the daily run happens

Reminders go out once a day at 08:00 UTC, so 8am in the winter and 9am British Summer Time. A reminder scheduled for today won't leave the moment you queue it; it waits for the next run. If a customer needs it now, use Send now on the queued row (see Reminder logs).

When reminders are scheduled

EventWhat gets scheduled
Jobcard completedOne reminder per matching MOT / Service / Timing-Belt template, using the per-job reminder intervals you set on each job
Appointment createdOne reminder per matching Appointment template, using the appointment date
Appointment editedThe existing reminders are cancelled and fresh ones scheduled, if the date, start time, or linked job changed

Setting an MOT date on a vehicle by itself does not schedule reminders — scheduling only happens when a jobcard with an MOT job is completed.

Which date the countdown runs from

For MOT / Service / Timing Belt reminders, Pistonlog adds the job's interval to an anchor date, then subtracts the template's countdown. The anchor is the job's work-completed date when you've set one, and only falls back to the day the jobcard was completed when you haven't.

That matters when you complete paperwork late. Finish the work on the 3rd, tick the jobcard off on the 10th, and a 12-month service reminder anchors to the 3rd if the job carries that work-completed date, which is what the customer will consider their service anniversary.

Editing or cancelling an appointment

Changing an appointment's date, start time, or linked job cancels its queued reminders and schedules replacements from the new details. Deleting the appointment cancels them outright. Only queued reminders are affected; anything already sent stays in the log.

Rescheduling happens in the background

The cancel-and-reschedule runs after the appointment is saved and doesn't report back to the screen, so on the rare occasion it fails you won't see an error. If an amended appointment matters, check the Scheduled tab afterwards to confirm the new reminder is queued for the date you expect.

Business appointments need a linked driver

Appointment reminders for a business jobcard go to the linked driver contacts, not to the business account itself. If the jobcard has no business contact linked, the appointment reminder is skipped entirely. Pistonlog does not fall back to the account's main contact, because an appointment reminder is about a specific person bringing a specific vehicle in. Link the driver on the jobcard before the appointment is created. See Fleet reminders.

What "matching" means

A template matches when its reminderType and the event align — e.g. an MOT template only schedules against an MOT-flagged job at jobcard completion.

If reminders aren't firing

Was the triggering event captured?

For MOT/service/belt reminders, the scheduling happens at jobcard completion, and only for jobs tagged with the matching job type. If the job wasn't tagged MOT/Service/Timing Belt before completion, no reminder was scheduled (the interval itself defaults to 12 months if you didn't change it). Jobs marked declined, postponed, or recommended are also skipped, since the work wasn't carried out. Note the trigger only fires when the jobcard moves into a completed status from a non-completed one.

Does the template exist for this type?

Inactive templates don't schedule. Verify the template exists and is enabled in Workshop Settings → Reminders.

Did the (private) customer opt out?

Individual customers can be marked contactByEmail: false or contactBySms: false and they're then excluded from the relevant channel. (Business contacts don't have these flags — they always receive on whichever channel they have an address for. Business routing is controlled by the per-contact reminder opt-ins instead, see Fleet reminders.)

Was it a business appointment with no driver linked?

Appointment reminders on a business jobcard need at least one linked driver contact. With none linked, nothing is scheduled at all.

Check the logs

Every scheduled and attempted send is recorded in Reminder logs with its status. Remember the daily run is at 08:00 UTC, so a reminder queued for today is expected to still be sitting in Scheduled until then.

Why pre-scheduling and not a date scan

A date scan ("every day, find every vehicle whose MOT is in 30 days") would be simple but brittle — it'd miss the intent of when you, the operator, completed the job. Event-scheduling captures the workshop's view of "this is now eligible for a reminder" at the moment of completion, which gives you a stable record in reminder_logs that you can inspect, edit, or cancel before it actually sends.

Related

Was this article helpful?