Skip to content

Message Templates

Message Templates are pre-approved SMS message bodies with variable placeholders that get resolved from CRM data at send time. Templates give administrators control over what agents can send, support compliance requirements (opt-in/opt-out), and ensure consistent messaging.

When a messaging channel has Require Templates enabled, agents can only send messages using approved templates - freeform messaging is not allowed on that channel.

Template Grid

The grid displays all templates for the current tenant with columns for name, channel type, category, status, and variable count.

Create/Edit Template

Basic Fields

FieldDescription
NameUnique template name within the tenant (required)
Channel TypeThe messaging protocol: currently SMS
CategoryOrganizational category: Marketing, Support, Billing, Reminders, Alerts, Transactional, Onboarding, Notifications, Surveys, or General
StatusActive or Inactive. Only active templates are available to agents

Message Body

The Body field contains the message text with {{source.field}} placeholders for dynamic content. You can add a default value after a pipe character: {{source.field|default}}. If the field is empty at send time, the default is used instead. For example:

Hi {{contact.first_name|Customer}}, thank you for contacting {{company.name}}.
Your appointment is confirmed for {{system.date}}. Call us at {{company.phone}}.
Reply STOP to unsubscribe.

Insert Variable

To add a variable placeholder to the message body, use the Source dropdown and Field list below it:

  1. Select a Source type to filter the available fields
  2. Click a field in the list to insert it as {{source.field}} into the body text

Available Sources

Contact - CRM contact fields:

first_name, last_name, email, phone, mobile, title, department

Account - fields from the contact’s linked account:

name, industry, website, phone, email, address_line1, city, state, postal_code, country

Lead - lead-specific fields:

first_name, last_name, email, phone, company, source, status

Custom Fields - any tenant-defined Custom Fields (inserted as {{contact.cf.field_name}} or {{account.cf.field_name}})

Company - your organization’s identity (from tenant settings):

VariableDescriptionExample
company.nameCompany display nameAcme Corp
company.phoneCompany phone number+15551234567
company.urlCompany website URLhttps://acme.com

System - runtime context (date and time use your tenant’s configured timezone):

VariableDescriptionExample
system.agent_nameThe user sending the messageJohn Smith
system.dateCurrent date in your timezoneMar 7, 2026
system.timeCurrent time in your timezone (12-hour)2:45 PM

Default Values

Add a pipe and fallback text after any variable to handle empty fields:

  • {{contact.first_name|Customer}} - uses “Customer” if first name is blank
  • {{company.phone|our office}} - uses “our office” if no phone is set

If no default is specified and the field is empty, the placeholder resolves to an empty string.

Compliance Options

FieldDescription
Require Opt-InWhen enabled, the system checks the contact’s opt-in status before sending. Messages are blocked if the contact has not opted in for the channel type
Include Opt-OutWhen enabled, the opt-out text is automatically appended to the message
Opt-Out TextThe opt-out instruction appended to messages (default: “Reply STOP to unsubscribe.”). Only shown when Include Opt-Out is enabled

Notes

Free-text field for internal notes about the template’s purpose, approval status, or usage guidelines.

Default Templates

New tenants are created with 8 starter templates covering common use cases:

  • Appointment Reminder - appointment confirmation with callback number
  • Welcome New Customer - onboarding greeting with company name
  • Order Confirmation - order and delivery details
  • Payment Reminder - invoice and payment link
  • Support Follow-up - ticket status check-in
  • Promotion Announcement - marketing offer with expiry
  • Service Outage Notification - disruption alert
  • Feedback Request - post-interaction rating

These templates demonstrate the variable and default value syntax and can be customized or removed as needed.

  • Messaging Channels - assign templates to channels and configure the Require Templates policy
  • CRM Contacts - contact data used for variable resolution
  • Custom Fields - define additional fields available as template variables