Preferences allow your users to define what kind of notifications they want to receive and on which channel. This gives your users complete control over their notification experience, thereby reducing the risk of them turning off all notifications from your platform.
In SuprSend, notification preferences are designed around notification categories, which provides a ready-made preference centre that can be easily integrated into your application.
We'll start with a quick overview of how preferences work in SuprSend and then a detailed guide on how to implement notification preferences in your product with ease.
Notification preferences are managed across three levels of users -
- Business: The entity responsible for sending the notifications.
- Brands: Customers on whose behalf notifications are sent to end users.
- Recipient: End users receiving the notifications.
Business and Brands define the default preference for the recipients. These default preferences serve as a starting point for Recipients, who can then further customize their preferences at three levels: channel, category, and channel of category.
Notification Categories are then passed in your workflow call. User only receives the notification on the channel and category where preference evaluates to
In the below section, we'll cover this validation model in detail and cover methods to manage preferences at each level.
Business decides what type of notification categories should the notifications be divided into. For example - here are some categories for a content platform. Refer section to update notification categories
In a multi-tenant architecture, business can also define which notification categories are visible to different brands. For example - if you are a SAAS platform with some paid features and some of your clients have not subscribed to the paid features. You can hide notification categories related to the paid feature for those brands. Refer doc to set visibility of notification categories for brand
Sets Default Preference for the end users. This decides if the notification should be sent to the user or not until they override the setting. For instance, the "Newsletter" category may be set as opt-out by default, and users would need to explicitly opt-in to start receiving notifications in this category. You can set default preference in sub-category settings
- In a multi-tenant architecture, brands can override the default preference set by business for their end users.
- What categories should be visible to their end user? This gives brands control to choose if they don't want to send notifications in certain categories to their end users and that's why don't want users to control their preference for those categories.
Refer doc for methods to set brand preference settings
End users can set preferences at 3 levels - category, channel inside a category and overall channel level. This gives users fine-grain control over their preference experience. For instance, in the below example, the user can opt-out of product updates completely, select specific channels to receive product updates or set email preference - "Required" to receive only required notifications via email.
SuprSend automatically checks for preference settings at the time of workflow run, sending users notifications only on the channels subscribed by users. Users only receive notifications on the category and channel where the preference evaluates to
OPT_IN. If user has not set any preferences, notifications are sent based on the default preference set by the business and brand. brand preference takes precedence over org preference for workflow triggers corresponding to a particular brand.
Business can update notification categories from Settings -> Notification categories page. There are 3 broad categories pre-defined in SuprSend. Based on the nature of the message, notifications can be classified into these 3 broad categories.
- System is for essential communication like OTP, verification and authentication related notifications
- Transactional notifications are the ones that are sent in response to some transaction that a user has done with your platform. Examples could be Payment Confirmation, Delivery status, booking confirmation, Post shared/liked, Balance alerts etc.
- Promotional category is for marketing notifications to increase sales or user engagement like newsletter, deals and discounts etc.
All the above categories can have sections and sub-categories. User preferences are controlled at the sub-category level.
- Sub-category is what end users will see on their preference page.
- Sections are used to group related sub-categories on the preference page, facilitating easier navigation and organization on the preference page.
For instance, in the below example, New Messages, Comments and replies and Mentions are sub-categories and Messages, Comments and mentions is the section in which these sub-categories are grouped
You can update section in any category by clicking on the "+Section" button in each category
Add name and description for the category and "Save Changes". You'll see the updated section inside the category and edit it later by clicking on the "Edit" button against that section.
Sub-Category default preferences vary based on the category that you are adding in.
- System category default preference is set to "Can't Unsubscribe" with "All" user channels set as mandatory. Users will not be allowed to update preferences in this category as system notifications are critical notifications and should always be sent to the user.
- Transactional category default preference is set to "Can't Unsubscribe". We recommend selecting at least one mandatory channel for the transactional category since users should receive notifications on at least one channel corresponding to a transaction. However, you are free to set any default preference in this category
- Promotional category default preference is set to ON. This means that the user will receive notification in this category by default. You can't set this category to Can't Unsubscribe as users should always be able to opt-out of marketing-related notifications.
You can update sub-category in any category by clicking on the "+Sub-Category" button in that category.
|Name||Mandatory||Name of the sub-category to be shown on the user preference page|
|Section||Optional||Section in which this sub-category will be grouped into|
|Description||Optional||Description of the sub-category to be shown on the user preference page|
|Default Preference||Mandatory||Default preference settings for the sub-category. Notifications will be sent to the user based on this preference until the user overrides it|
- On means the user will get notifications on all channels in this sub-category until user opts out from this category or any channel in this category
- Off means the user will not get notification on all channels in this sub-category until user opts into this category or any channel in this category
- Can't Unsubscribe means the user can't completely opt-out from this category. Notifications will always be sent on mandatory channels in this category.
|Mandatory Channels||Optional||Mandatory channels from which user Can't Unsubscribe. The default selection is |
Click on "Save Changes" to save the sub-category. You'll see the updated sub-category inside the section and edit it later by clicking on the pencil icon against that category.
Avoid Changing sub-category name
Changing category name updates the category slug. So, make sure to not change sub-category name once you have configured it in your workflows or if it is absolutely necessary to change the name, change it in all backend and front workflows otherwise the workflows will start failing.
Click on Preview to see a reference view of ready-made preference center for your end user. Please note that this view is just for reference of how the categories and sections will be placed in end user's view. Actual view will be based on the preference page design in your application.
All the changes done are saved in draft version. You can publish the changes to make it live for your end users. You'll be able to add the updated categories in workflow call only after publishing the changes.
Click on Publish Changes button to publish the changes.
You can test preferences in your staging application and use "Clone" button to clone the changes to production workspace.
You can add sthe ub-category slug in
notification_category field in your backend workflow call or select the category from dropdown in workflows created through SuprSend dashboard.
You can copy sub-category slug by clicking on sub-category name on the category settings page
Updated 6 months ago
Add Preference page in your application to give users access to modify their preferences from your product