Skip to content

Automations

Automations let BridalOp automatically send emails, text messages, in-app notifications, update customer fields, and even book follow-up appointments when something happens in your shop — without anyone lifting a finger.

Go to Settings > Automations to manage them.

The Idea

Every automation follows a simple pattern:

When something happens (the trigger), and certain conditions are met, then run these steps in order (email, SMS, etc.).

So, for example:

  • When a customer's appointment is a no-show → 1 hour later, email them with a link to rebook.
  • When a sale completes → wait 7 days → email asking for a review.
  • When the wedding date is 30 days away → email a final prep checklist.

You can build these by hand or clone one from the starter library (see below).

Starting From a Template

The fastest way to get started. Click Start from template on the Automations page to open the catalog.

Each template is a fully-configured automation you can clone in one click — trigger, conditions, steps, and email copy all pre-filled. After cloning, you land on the builder where you can tweak any piece (names, wait times, wording) before enabling it.

Current starter catalog includes:

StarterFires OnWhat It Does
Appointment booked — confirmation emailAppointment bookedSends a branded confirmation email right after a new booking
Post-sale — review request (7 days later)Sale completedEmails the customer a week after purchase asking for a review
Welcome after first purchaseSale completed (first sale only)Sends a welcome email the first time a customer buys
No-show follow-upAppointment marked no-showEmails a rebook-us-please message an hour after the no-show
Post-appointment thank you + reviewAppointment completedTwo hours after the appointment, sends a thank-you + review request
Layaway overdue — email + SMS reminderLayaway marked overdueEmails immediately, then texts an hour later
Wedding — 7-day final prep reminderWedding date approachingSeven days before the wedding, sends a final prep checklist
Wedding — 30-day countdownWedding date approachingOne month out, sends an excited "you're a month away!" email

Cloned starters always start disabled — review and enable when you're ready.

Building From Scratch

Click + New to open the builder. It has four sections, top to bottom.

1. Name It

Give the automation a descriptive name — this is what appears in the list and the run log. Example: "24-hour appointment reminder."

FieldDescription
NameShown in the automations list
DescriptionOptional. What this automation does, in plain language
CategoryTransactional (order confirmations, reminders) or Marketing (review requests, birthday greetings). Marketing automations skip customers who haven't opted into marketing
Cooldown per customer (minutes)Prevents the same automation from firing twice for the same customer within this window. Defaults to 1440 (24 hours)

2. When Should This Run?

Pick the trigger event that kicks the automation off. Some triggers have extra configuration (e.g., "Wedding date approaching" asks how many days before).

Available triggers:

TriggerFires When
Appointment bookedA new appointment is created
Appointment cancelledAn appointment is cancelled
Appointment completedAn appointment is marked completed
Appointment no-showAn appointment is marked no-show
Sale completedA sale/order is finalized
Refund issuedA refund is processed
Layaway createdA new layaway plan is started
Layaway payment receivedA payment is applied to a layaway
Layaway overdueA layaway is marked overdue
Special order placedA special order is submitted to a vendor
Special order arrivedA special order arrives and is ready for pickup
Quote sentA quote is sent to a customer
Quote acceptedA customer accepts a quote
Contract sentA contract is sent for signature
Contract signedA contract is signed
Customer createdA new customer is added
Customer birthdayOnce each year on the customer's birthday
Wedding date approachingN days before the customer's wedding date (configurable per automation)
Customer field changedA specific customer field changes value

3. Who Qualifies? (Optional)

Add conditions to only fire for customers who match. Every condition is joined with AND — all must be true for the automation to run. Leave it empty to fire for every trigger event.

Each condition has three parts: field · operator · value. For example:

  • Customer's Event type · equals · wedding
  • Customer's Total spent · is greater than or equal to · 500
  • Sale total · is greater than · 1000

Operators include: equals, does not equal, is greater than, less than, contains, is empty, is not empty, and more. Available fields depend on the trigger (a sale-triggered automation can condition on the sale total; an appointment-triggered one can condition on the appointment type).

4. What Should Happen?

The actual work. Add one or more steps — each step has:

  • A wait time (in minutes) after the trigger fires (or after the previous step)
  • An action — the thing that happens

Steps run in order. Click + Add step to stack them; drag or use arrow buttons to reorder; click the header to collapse a step once it's configured so the builder stays readable.

Actions

ActionWhat It Does
Send an emailSends a branded email to the customer. Three modes: pick a saved template, write custom subject + body (rendered in your boutique's branded layout), or paste completely custom HTML that bypasses the layout
Send a text (SMS)Sends an SMS via your Twilio number. 160-character soft limit (counter shown). Skipped automatically if the customer has no phone, opted out of SMS, or you're out of credits
Notify staff in-appCreates a bell-icon notification visible to the specified audience: all staff, a specific role, or a single user
Update a customer fieldSets a built-in customer field (event type, source, consultant, etc.) or a custom profile field to a value. Can also add or remove tags
Book an appointmentSchedules a new appointment on your calendar. Respects your business hours, fitting room capacity, holidays, and existing appointments — if the requested slot isn't available, finds the next open one within 14 days

Each action has its own form. For example, Send an email asks for the subject, body, optional from-name, optional reply-to, and the mode (template / custom / raw HTML).

Multi-Step Example

A "welcome new lead" drip might look like:

1. Immediately        → Send email "Welcome to {{boutique.name}}!"
2. Wait 2 days        → Send SMS "Hi {{customer.first_name}}, ready to book? Tap here: {{boutique.booking_url}}"
3. Wait 5 days        → Update field `source` → "engaged-lead"

Merge Tags

Every text field (subject, body, SMS message, notification title) supports merge tags. They're replaced with live values at send time.

Tags are organized in a reference panel on the right side of the builder — click any tag to copy it, then paste into the field you want.

Common tags:

NamespaceExamples
Customer{{customer.first_name}}, {{customer.full_name}}, {{customer.email}}, {{customer.phone}}, {{customer.wedding_date}}
Customer custom fields{{customer.field.your-field-name}} — auto-added for every custom field defined under Customer Fields
From the triggerDepends on trigger. E.g., for Appointment booked: {{appointment.starts_at}}, {{appointment.type}}
Records created by earlier stepsIf an earlier step books an appointment, later steps can reference {{new_appointment.start_at}}, {{new_appointment.id}}, etc.
Boutique{{boutique.name}}, {{boutique.phone}}, {{boutique.email}}, {{boutique.address}}, {{boutique.website_url}}
Customer links{{boutique.booking_url}}, {{boutique.lookbook_url}}, {{boutique.gift_card_url}}, {{boutique.portal_url}}, {{boutique.review_url}}
Per-location booking{{location.slug.booking_url}} — shown only if you have more than one location
Time{{now}}, {{today}}

Dates in merge tags auto-format nicely in the boutique's timezone (e.g., "May 15, 2026 2:00 PM"), not raw timestamps.

Relative Dates in Booking

The "Book an appointment" action's Start time uses a structured picker:

  • Relative to an event — compose expressions like "7 days before the customer's wedding date, at 10:00."
  • Specific date — a plain date/time picker for fixed scheduling.

You never have to write merge-tag arithmetic by hand.

Enabling, Toggling, and Duplicating

On the automations list page:

  • Enable toggle — the pink switch next to each name. New automations start disabled so you can build confidently. Click to turn on.
  • Duplicate — clones the automation with all its conditions and steps, names it "{original} (Copy)", and starts it disabled. Useful when building a family of similar automations (e.g., different messages per location).
  • Edit — re-opens the builder.
  • Delete — removes the automation. Run history is preserved for auditing.

Test Runs

Before enabling an automation, test it against a real customer to make sure the merge tags resolve correctly and the emails/SMS look right.

  1. Open any automation's detail page.
  2. Click Test run.
  3. Search for a customer by name, email, or phone.
  4. Click Run.

Test runs:

  • Bypass the cooldown — they always fire.
  • Still respect consent — SMS opt-outs and marketing opt-outs are honored.
  • Still respect SMS quiet hours — texts queued during 9pm–8am boutique-local time get rescheduled to the next morning.
  • Skip "Book an appointment" steps so tests don't pollute your real calendar. The run log shows test_run_create_record_skipped for those steps.
  • Fire even if the automation is disabled — you don't have to flip the switch to test.

Run Log

The detail page shows the last 50 runs, each expandable to see every step's status, timing, and any errors.

Run statuses:

StatusMeaning
RunningRun started; one or more steps still pending
CompletedAll steps finished (some may have been skipped, which is OK)
FailedAt least one step threw an unrecoverable error
SkippedThe whole run was skipped before any step fired (usually consent: customer_opted_out_marketing)

Common step-level skip reasons:

  • no_email_on_file / no_phone_on_file — customer is missing contact info for that channel
  • customer_opted_out_sms / customer_opted_out_marketing — opt-out honored
  • insufficient_sms_credits — out of SMS credits (top up under SMS Credits)
  • no_availability_in_lookahead — Book-an-appointment couldn't find a free slot within 14 days
  • test_run_create_record_skipped — this was a test run, so Create Record steps were skipped on purpose

A skipped step doesn't fail the run — subsequent steps still execute.

Safety Rails

A few things happening automatically in the background so automations don't embarrass you:

  • Per-customer cooldown — prevents the same automation firing twice for the same customer within the cooldown window. Default 24 hours.
  • Consent respect — marketing automations skip customers who haven't opted in. SMS steps always skip customers who've opted out.
  • Quiet hours for SMS — no texts sent between 9pm and 8am boutique-local time. Anything scheduled for that window gets pushed to the next 8am.
  • Availability for booking — the "Book an appointment" action won't create conflicts with existing appointments, closed days, holidays, or fitting-room limits.

Permissions

The settings.automations permission controls who can view and manage automations. By default, it's granted to the owner and manager roles. Staff roles (consultant, tailor, receptionist) are not granted by default — you can toggle this under Roles & Permissions.