Marketing Campaigns

Profitdiagnostix is capable of sending Text/SMS messages for the purpose of marketing campaigns to your customer list. At the time of writing, only text messaging is being supported, but in the future, sending of emails will also be possible.

The lists and phone numbers used are determined by lists that are created in reports and dashboards that have to be designed in a specific format. If all the criteria are satisfied, then the Dashboard and associated reports can be used for semi-automated text message campaigns.

Profitdiagnostix can be used to develop powerful and unique lists of clients based on criteria such as age or the products and services that they have historically purchased. It can also produce lists of clients who have stopped spending in your business for a particular period of time and may need re-activation.

Criteria for reports to be used for marketing campaigns

  • Generally to be able to deal with the complexity of the required report, the report rows have to be designed using a custom SQL query. At the time of writing, this is restricted to only users who have super administrator access.

  • The report must be a list type report that has rows of customers and their contact details.

  • The columns in the report must contain an email address or a mobile number

  • If you want to personalise messages it is highly advisable that you also have client and patient names in the columns

  • For columns containing mobile numbers, it is advisable that you use a regular expression to clean out any alphabetical characters that commonly corrupt phone numbers and also prefix the number with your country code (61 in Australia) and remove the leading zero - this is how cloud based text messaging services usually require the numbers to be presented.

  • For Profitdiagnostix to be able to identify which columns are the preferred ones to use in a message, the output type of that column had to be set to “SMS Mobile”, “Campaign Client Message”, “Campaign Client Name” to identify the name, message and mobile number accurately.

  • To assist with the prevention of repeatedly sending the same message, a further column identified with an output type of “Campaign Message Key” needs to be present - this is discussed later under the heading “Preventing repeated messages”


Example of a list based report that is SMS capable.

Criteria for dashboards that contain the marketing campaign dashboards

For a dashboard to be compatible with marketing campaigns, it needs the following dashboard scope variables:

  • system_campaign_enable - default set to zero. If set to one, then the campaign becomes active and within a few hours the patients in the list will be copied across to the SMS outbox or approval screens

  • system_campaign_max_messages - this is another failsafe to prevent over sending of messages. It determines the maximum number of messages that this campaign should send. If there is an attempt that exceeds this number the messages will not be sent.

Example of dashboard scope variables on a SMS enabled dashboard


Preventing repeated messages

To assist with the possible mistake that a report and dashboard gets designed which repeatedly send the same message to a customer, Profitdiagnostix gives a possibility of controlling this in a very flexible way.

Any message coming from the same dashboard_id, to the same mobile number and with the same message key will not be sent again.

The message key can be created using Twig logic to deliver a number of outcomes. For example if you hard code the message key to be the number 1, then it will always be the same and the system will always send the message - there will be no messages stopped because the dashboard id, key and mobile will always be the same.

However if you create the key using twig to be current year, current and month eg 2023-09, then this means the message will at most be sent once a month because the key will change each month.