EliaFlow Guide
User guide Menus = admin groups

SMS templates

Menu Company Settings → SMS Templates (if SMS notifications / the related module are enabled).

At seed / provisioning, EliaFlow creates the templates below for each store (FR and EN). Text messages for automatic sends (appointments, sub-service reminder). Unlike email templates, an SMS is plain text: no HTML header / footer, no images or graphical buttons in the final message.

The SMS provider (Twilio / Telnyx) and client / staff “by SMS” preferences must be in place for sends to actually go out. See also Calendar settings, Service reminders and Google reviews.


No HTML design: what you can (and cannot) do

In the editor In the SMS actually sent
Assisted input (bold, lists, links, emoji…) Converted to plain text on save
Colors / rich layout Not kept (SMS are not HTML emails)
Images / colored buttons Impossible — no “public https image” equivalent like email

Recommendation: stay concise (SMS length limits at carriers), use {{…}} tags, and always test with Send a test SMS.

Parallel issue to emails: in email, images must be reachable on the web; in SMS, there is no image — only text and links (URLs) the recipient can open in a browser. A link must therefore be a valid and reachable URL (e.g. {{manage_booking_link}}, store site).


Edit a template: fields

On a row / card: open the editor.

Field Role
Name Label (read-only)
Key Fixed technical identifier (read-only) — used by the code
Available tags List of variables to paste into the body
SMS body Message text (required)

Useful tags (examples)

{{store_name}}, {{customer_name}}, {{appointment_start}}, {{appointment_line_items_bullet_list}}, {{manage_booking_link}}, {{reason_canceled_block}}, {{reason_declined_block}}, {{previous_appointment_start_block}}, {{app_name}}, {{phone}}, {{company_address}}, etc.

Recommended footer: phone + address as plain text ({{phone}}, {{company_address}}). Avoid {{company_maps_url}}, {{phone_tel_url}} and {{company_website_url}} — phones already turn them into long blue links.

Important rule: the appointment reminder SMS must contain {{manage_booking_link}} (link to manage / cancel online).

Actions: Save, Send a test SMS (number + optional appointment ID for real data; [TEST] prefix). Outside production, redirection to a fallback number is possible.


Do not delete / do not “create” outside the system

Seeded SMS templates are wired to the code (appointment confirmation, reminder, cancellation, staff notifications, sub-service reminder…).

Do Impossible / avoid
Edit the body (text + tags) Delete a seed template (deletion disabled)
Test before going live Create “marketing campaign” SMS here — marketing campaigns use emails, not these SMS templates

Without these templates (or with an empty / invalid body), automatic SMS sends fail or fall back depending on config.


Catalog of templates created at seed

Each row exists in French and English (24 templates in total).

Appointments

Template Short usage
Appointment — confirmed (booking confirmation) Creation accepted / moved to accepted
Appointment — reminder Before the appointment (calendar delays) — with {{manage_booking_link}}
Appointment — confirmed (accepted) Acceptance
Appointment — cancelled by the team Seller cancellation
Appointment — cancelled by the client Client cancellation
Appointment — declined Request declined
Appointment — rescheduled Date / time change
Appointment — staff notification Assigned to staff (“By SMS” preference)
Appointment — staff cancellation Assigned appointment cancelled
Appointment — staff unassignment Assignment removed
Appointment — staff modification Date / time / client change for staff

Sub-service reminders

Template Short usage
Sub-service reminder Client to remind after the configured delay (service reminders)

Google reviews

Template Short usage
Google review invite Client invited to rate Google Business after a service invoice (Google reviews)

Quick difference from email templates

Email SMS
Format HTML + builder (blocks, images, buttons) Plain text
Envelope Shared header / footer None
Marketing campaigns Yes (marketing templates) No (this page)
Deleting seed templates Must not Impossible (policy)
Test Test email Test SMS

Regenerate templates (Master → Service points)

  1. master tenant → Service points → Edit the store (e.g. yls, not master).
  2. Generate SMS templates = Yes (optionally directions).
  3. Save → system SMS bodies are rewritten (multi-line style).

CLI equivalent below.


Success criteria

  • I see the seed SMS templates (FR/EN) for my store.
  • I know the final SMS is text (no images / HTML colors).
  • I edit a body with tags and include {{manage_booking_link}} on the appointment reminder.
  • I send a test SMS with a valid number (provider configured).
  • I do not try to delete system templates or use them as email marketing campaigns.

Canonical restyle (ops / production)

To re-apply the clean multi-line style (same as the appointment reminder) to all system SMS templates:

php artisan sms-templates:reset-bodies --dry-run
php artisan sms-templates:reset-bodies --force
# One store only:
php artisan sms-templates:reset-bodies --service-point=yls --force

Overwrites bodies in the DB (and syncs booking_settings SMS columns). In production, --force is required.