Communications
Introduction
KamioKash's Dynamic Communications system enables automatic sending of personalized messages through email and SMS, triggered by specific system events. This feature enhances user engagement by ensuring timely and relevant communication. Currently supported events include new_member, new_redemption, new_booking, and booking_status.
System Events and Data
Supported Events
- New Member (new_member): Triggered when a new user registers.
- New Order (new_order): Fires upon a user redeeming their rewards.
- New Booking (new_booking): Occurs when a new booking is made.
- Booking Status (booking_status): Triggered by changes in booking status (confirmed, canceled, etc.).
Data Available for Templates
Each event exposes specific fields that can be dynamically injected into communication templates:
- New Member: Member name, registration date, welcome offer.
- New Booking: Member name, redemption details, points used.
- New Booking/Booking Status: Booking details, status, member information.
Dynamic Templates with Mustache
Introduction to Mustache Templating
Mustache is a logic-less templating engine used for generating dynamic content. It allows placeholders to be filled with actual data at runtime. Templates can be customized for each communication type via the KamioKash Admin Portal.
Provided Mustache Lambdas and their Usage
We provide some build in Mustache lambdas to assist with formatting of dates, they are available to our MJML, HTML and TEXT templates
Usage of lambdas as follows:
<p>{{#dateFormatMMMMDDYYYYHHMM}}{{ orderDate }}{{/dateFormatMMMMDDYYYYHHMM}}</p>
dateFormatYYYYMMDD
Formats date to YYYY-MM-DD eg: 2024-12-31
dateFormatYYYYMMDDHHMM
Formats a date to YYYY-MM-DD HH:MM eg: 2024-12-31 18:00
dateFormatMMMMDDYYYY
Formats a date to MMMM DD YYYY HH:MM eg: December 31 2024
dateFormatMMMMDDYYYYHHMM
Formats a date to MMMM DD YYYY HH:MM eg: December 31 2024 18:00
Customizing Templates
SMS
Templates are plain text with Mustache sytax for placeholers, see below for examples on customization.
Email
Templates are MJML files with Mustache syntax for placeholders. You can access and edit these templates for each communication type directly within the KamioKash Admin Portal.
Example Template for New Member
<mjml>
<mj-body>
<mj-section background-color="#f0f0f0">
<mj-text>Welcome, {{username}} to {{org}}'s Reward Platform</mj-text>
<mj-text>Enjoy your welcome offer: {{welcomeOffer}}</mj-text>
</mj-section>
</mj-body>
</mjml>
{
"org": "Aperture Industries",
"username": "[email protected]",
}
{{username}}, and {{org}} are placeholders that will be replaced with actual data.
Each template has its own unique set of properties that are injected into the template, please note them when modifying them through the interface
Managing Communications via Admin Portal
Accessing Templates
To access communication templates:
- Log into the KamioKash Admin Portal.
- Navigate to the "Templates" section under "system".
- Select the Communication Channel and event type to view its associated templates.
- Different Channels will have different headers
Updating Templates
When updating templates:
- Make your changes in the MJML template using Mustache placeholders for dynamic content.
- Save your changes and utilize the preview feature to ensure the message appears as intended.
- Utilize the preview to visualize any changes to the communication template.
Best Practices for Template Design
Keep messages concise and to the point.
- Ensure templates are mobile-friendly.
- Include clear and actionable call-to-actions.
Testing and Previewing Templates
Previewing Changes
The Admin Portal provides a preview feature, allowing you to see how your message will look with sample data replacing the placeholders. Use this feature to check for formatting and readability before saving your changes.
Testing Communications
It's recommended to test communications thoroughly after any template update. While a direct test send feature might not be available for all communication types, consider setting up test accounts or scenarios to receive the communications and verify their content and appearance.
FAQs and Troubleshooting
Q: What if my placeholders aren't being replaced with data? A: Ensure the placeholder syntax matches exactly with the fields provided by the system event. Placeholders are case-sensitive and must be enclosed in double curly braces.
Q: Can I revert to an older template version? A: It's advisable to keep a version history of your templates. While the Admin Portal might not automatically save versions, manually saving a copy of your templates before making changes can facilitate reverting if needed.
Feedback and Support
We're continually working to improve the Dynamic Communications feature and welcome your feedback. If you encounter issues or have suggestions, please contact our support team through the Admin Portal's help section.