When a ServiceM8 SMS template is mirrored to WhatsApp, its merge fields are converted to WhatsApp’s numbered placeholders and filled in from the job when you send. All of these come across. A field not listed here still converts; it just gets a plain sample for WhatsApp’s reviewer.

The job

job.date, job.status, job.quote_date, job.work_order_date, job.description, job.work_done_description, job.generated_job_id (the job number), job.completion_date, job.completion_actioned_by, job.unsuccessful_date, job.category, job.purchase_order_number, job.job_address, job.job_address_singleline, job.billing_address, job.instantpost_billing_address, job.site_name, job.company_name, job.booked_by_name.

The contact

job.contact_first, job.contact_last, job.phone_1, job.phone_2, job.mobile, job.email, job.billing_contact_first, job.billing_contact_last, job.billing_mobile, job.billing_email, job.property_manager_first, job.property_manager_last, job.property_manager_email, job.property_manager_phone, job.property_manager_mobile.

Money

job.total_price, job.subtotal_price, job.materials_subtotal_price, job.labour_subtotal_price, job.total_tax_price, job.amount_paid, job.balance_due, job.deposit_description, job.deposit_amount, job.payment_date, job.payment_method, job.payment_actioned_by, job.invoice_date, job.invoice_date_extended, job.invoice_due_date, job.invoice_due_date_from_today.

Time on site

job.last_checkin_staff_name, job.last_checkin_start_date, job.last_checkin_end_date, job.last_checkin_duration, job.total_checkin_duration.

Your business

vendor.name, vendor.email, vendor.website, location.name, location.line1, location.line2, location.line3, location.city, location.state, location.post_code, location.country, location.phone_1, location.mobile, location.lat, location.lng.

Whoever is sending

staff.first, staff.last, calculation.current_user_first, calculation.current_user_last, calculation.current_user_fullname, calculation.current_user_mobile, calculation.current_user_email.

Worked out when sent

calculation.todays_date, calculation.todays_date_extended, and document, which becomes a link to the attached quote or invoice.

The three rules

WhatsApp is stricter than SMS about where a placeholder can sit. The add-on handles the first for you and tells you about the other two.

  1. Two fields with only a space between them (“{job.contact_first} {job.contact_last}”) are rejected by WhatsApp as adjacent. The add-on merges them into one placeholder that fills in as both.
  2. A template cannot start or end with a field. Put a word before or after. “Hi {job.contact_first}, …” is fine; “{job.contact_first}, hi” is not.
  3. 1,024 characters including the filled-in values. Long job descriptions are shortened to fit.

Line breaks inside a filled-in value are flattened to spaces, because WhatsApp refuses them.