January-February-March 2025

Engage+

Mobile SDK

Hydra iOS SDK release 1.6.0

  • Performance Improvements
    • Used backgroundContext for CRUD operations to improve Core Data efficiency.
    • Optimized database operations using asynchronous perform methods.
    • Created a separate queue for thread-safe resource access.
  • Bug Fixes
    • Resolved issues in event handling and pull notifications.
  • Feature Enhancements
    • Added public methods to update various Hydra attributes.
    • Added completion blocks for critical asynchronous operations like DLR event reporting and database insertions.
  • Database and Notification Handling
    • Set mergePolicy for the backgroundContext to handle conflicts gracefully.
    • Improved unread notification count retrieval with a dedicated method.
    • Updated notifications as read when a user interacts with them.
    • Enhanced pull approach by saving valid notifications into the database before further processing.

Hydra iOS SDK release 1.6.2

New Features & Enhancements

  • Database Improvements:
    • Added missing fields in the database.
    • Changed the type of the custom field to [[String: Any]].
  • Shared Data Support:
    • Added support to share the Events database using App Groups.
    • Now using shared user defaults to store and fetch the push notification opt-in status.
  • SwiftUI Support:
    • Introduced a public API to get the NotificationCenterView in SwiftUI applications.
  • Badge Count Enhancements:
    • Reset badge count to zero on the first-time install of the app.

Andoroid SDK release (1.8.10)

Included the following versions of dependencies -
versions = [ core : '1.6.9', pushbase : '1.7.10', firebase : '1.7.9', richnotification: '1.3.9', mipushkit : '1.3.9', inboxcore: '1.4.9', inboxui : '1.4.10', inapp : '1.3.9', catalog : '1.8.10' ]

New event onboarded

On popular demand, we have onboarded the below events as entry trigger to journeys:

  • Customer Update
  • Promotion Issued
  • Coupon Issued
  • Points Issued
  • Reward Issued
  • Tier Upgraded
  • Tier Downgraded

You can find all the available entry trigger events over here.

New tags added

We added the below tags to journeys:

Transaction Id and Bill Points to the Transaction Profile as a part of Transaction Entry Event. We have also added the User Id AES tag to the Customer section

View multiple user entry in Journey History

Now that we allow the same user to enter the journey multiple times, we have enhanced the journey user history feature. When you click on the search icon, a side panel opens where you enter the user's Id. When searching, you can see the list of entries for the user ordered by latest first. You can then select a specific entry to see the user's journey.

You can find more information here.

LINE and Viber Channels now available in Journeys

We've introduced LINE and Viber as new communication channels within Journeys. This enhancement lets you reach customers more effectively through their preferred messaging platforms.

For more details, please refer to the documentation here.

Multiple gateway integrations for WhatsApp and Zalo channels

We now support multiple gateway integrations for WhatsApp and Zalo. This feature enables brands to effectively manage costs by switching gateway vendors.

Support for Special Characters in WhatsApp

WhatsApp now supports special characters, ensuring messages are displayed correctly across all devices.
This enhancement improves readability and prevents formatting issues in customer communications.

Editing messages in a live journey

Previously, when editing a journey, a new version was created, but customers who had already entered a specific journey version could continue in the same version and, therefore, receive the older content.
With this feature, we now offer support for moving users from one version of the journey to the next while going live with the newer version, enabling real-time updates without stopping/sunsetting the journey.
This allows for greater flexibility and optimization based on ongoing performance.

Launching Whatsapp Carousel Component

We've introduced the WhatsApp carousel component in Creatives, allowing you to add multiple images or videos to your WhatsApp creative.

This enables Retail brands to send interactive product offers to their customers.

For more details, please refer to the documentation here.

Reachability calculation for all channels (Viber, Whatsapp, RCS, etc)

Previously, we computed reachability for SMS and used it for channels like Viber and WhatsApp. Now, with the availability of v2 channels, we calculate reachability specifically for each channel.

For more details, please refer to the documentation here.

Insights+

Enhancing Reporting - Support for all types of Audience Groups as filters

Previously, only filter-based audience groups were supported as filters in the reports. As a part of this minor enhancement, we have enriched reporting to support all types of audience groups—combined, uploaded, or filter-based as filters.
This will enable brands to compare reports across a combination of audience groups, including uploaded ones.
You can find more information here.

Enhanced Reporting on Concept Hierarchy

Building on our commitment to empowering brand and business teams with more relevant reporting structures, we’ve now extended the flexibility of our Concept Hierarchy feature in Insights to support deeper and more complex store structures.

Previously, Concept Hierarchy allowed the grouping of stores across up to 3 levels, limiting how deeply brands could model their operational hierarchies. To address the growing need for more granular and business-specific reporting, we’ve enhanced the hierarchy support to allow up to 7 levels, enabling significantly more detailed drill-downs and performance comparisons.

For example:
A brand that previously used: Country → Zone → Store
Can now define: Business Unit → Region → Zone → Store → Till

This means reports can now answer questions like:
"How did premium apparel stores in malls perform in the Northern zone compared to standalone stores in the same region?"

For more details, please refer to the documentation here.

Reducing the upload based segments availability time from T+2 -> T+1

Previously, when brands needed to create complex segments using files created based on Databricks notebooks, the process took T+2 days - one day for ETL and another for syncing the uploaded file via FTP. This delayed time-sensitive campaigns & promotions.

We’ve now reduced this delay to T+1 day by introducing SQL traits based on complex business logic. These attributes are processed during ETL and made available directly to the segment builder the next day, removing the need for an additional sync step.

For more details, refer to the documentation here.

Incentives

Enhanced Coupon Code Redemption Limits

Brands can now set a maximum redemption limit for a coupon code across all customers.

Example

A brand issues a "SALE50" coupon with the following settings:

  • Coupon code redemption limit as 50 and anyone can redeem the coupon

John receives the "SALE50" coupon and shares it with his friends. Since the coupon is not restricted to a single user, anyone with the code can redeem it. However, once the total number of redemptions reaches 50, the coupon becomes invalid for all customers, even if some individuals have not yet used it.

This update provides brands with greater control over coupon distribution, preventing excessive redemptions beyond the predefined limit.

UX Revamp: Improved Coupon Issuance & Redemption Limits UI

We've redesigned the coupon issuance and redemption limits interface for a more intuitive and seamless user experience. Managing limits is now simpler and more efficient.

For more information, refer to the documentation here.

Rewards Catalog

Merge Customer Rewards During Customer Merge

The Customer Merge feature is now enhanced to support the merge of rewards. When two customer accounts are merged, the rewards from the survivor (merged) account are transferred to the victim (retained) account. This ensures that all rewards are consolidated under the surviving account.

To know more about this feature, refer to the documentation here.

Ability to add metadata and images for vendors

The Vendor Management API has been enhanced to support adding a description, vendor code, rank, images, and videos related to the vendor. This enhances the presentation of vendor information, improving the customer experience.

To know more about this feature, refer to the documentation on Vendor Management API.

Support for adding external image URL and altText in rewards

The Reward APIs have been enhanced to support external image and video URLs, allowing reward images to be provided via a URL alongside the existing option of uploading images and videos to the internal S3 file service. Additionally, an optional alt text field has been introduced for both images and videos, which can be used to add a description of the image’s or video’s context.

For more information, refer to the documentation here.

Support for enum data type in custom fields

The Create Custom Field for Rewards API has been updated to support the ENUM data type. This allows you to create a custom field with multiple possible pre-defined values.

For example, as a reward manager, you can create a custom field called "Reward Category" and define possible values such as "Discount", "Free Gift", ”Merchandise” and "Cashback." When creating or updating a reward, you can select one of these predefined values for the "Reward Category" custom field.

The UI is tentative and will come in future sprints.

The UI is tentative and will come in future sprints.

For more information, refer to the documentation here.

Get Reward Transaction API now accepts only transactionId and return the details

The GET Reward Transaction API has been enhanced to retrieve reward transaction details using only the reward transaction id without the need to pass the customer id.

For more information, refer to the documentation here.

Loyalty+

Publishing Loyalty Programs And Promotions Separately

When publishing a change made to a loyalty promotion, any changes made within the loyalty program will also be published along with the promotion. We've updated how publishing a promotion works to provide better control when making changes to loyalty programs and promotions.

What's New:

  • You can publish changes made to a loyalty program or loyalty promotions separately without affecting the other.
  • If you need to publish promotions and loyalty programs separately, you can request this by raising a ticket to the sustenance team.
  • Important: Once this setting is enabled, it is permanent and cannot be reverted.

To know more about this feature, refer to the documentation on Loyalty Promotions.


Support For Reward Currencies (Points & Alternate Currencies) In Unified Targets

Unified targets now support tracking both points and alternate currencies, offering greater flexibility in defining customer goals.

What’s New:

  • You can now track both points and alternate currencies within a unified target. To do this, select Earn reward currency as the customer activity when creating a milestone.
  • A combination of different targets can be set up to track points and alternate currencies separately.

Example:
A brand creates a yearly unified target to earn 1,000 loyalty points, collect 500 “Stamps” and collect 100 “Green Coins.” Customers who meet all three targets earn the “Super Customer” badge for the year.

To know more, refer to the Customer Activities section in the Milestones documentation.


Revamped Enrol Audience For Milestones

To encourage more use cases, the customer enrolment section when creating milestones has been updated to improve the user experience and include a feature to skip enrolment.

What’s New:

  • The UI has been revamped – A new drop-down Add audience to add audience groups or upload a .csv file containing customer details.
  • A new option to skip adding customers to a milestone. When this option is selected, no customers are enrolled in the milestone. You can then add customers using the enrol milestones API.
  • You can now edit the enrolment method for a live milestone.

To know more refer to the section on Customer Enrolment in the Milestones documentation.


Support For “Overall” Target Value For Non-Transactional Targets In A Unified Target

An overall target is an additional goal that users must achieve alongside other targets within a unified milestone. This feature was available for transactional activities. You can now enable an “overall” target for targets that track non-transactional events. You can also use this for multiple targets with different tracking KPIs.

Example:
A fitness brand creates the following monthly targets to encourage customer engagement and activity:
Dance for 15 minutes, jog for 30 minutes, and do yoga for 30 minutes daily. Customers who complete all three activities daily receive the “Fit Today” badge. To motivate customers to exceed their goals, the brand includes an Overall Target: stay active for at least 120 minutes per day. Customers who meet the Overall Target receive the “Superfit Today” badge.

To know more, refer to the Milestones UI and the Milestones API documentations.


Configurable Rounding Methods For Reward Currencies In Advanced Program Settings

You can already set the number of decimal points to round reward values. Now, you can also select a rounding method for Reward Currencies (points and alternate currencies) based on the decimal points configured.

Example:
25.8751 points are to be allocated to a customer and the round-off is set to two decimal places. If the rounding method selected is “Ceiling”, the points are rounded to two decimal places and rounded up to 25.88.

What’s New:

  • Define a rounding strategy for points and alternate currencies based on your program’s needs.
  • Rounding is applied based on the configured decimal places. For example, rounding to two decimal places means rounding to the nearest hundredths.
  • The following rounding methods are available: Ceiling, Floor, Round Half Up, Round Half Down, Round Half Even.
  • This enhancement gives brands more control over how reward currency balances are handled, ensuring consistency in point calculations.

To know more, refer to the Reward Currency Rounding Strategy section in the Points documentation.


Rolling Point Expiry When No Points Are Given

The points rolling feature is an existing feature that extends the expiry window for loyalty points based on conditions set by the brand. By default, the expiry window extends only when a customer earns some points.

What’s New:

  • You can now enable ROLLING_EXPIRY_INCLUDE_ZERO_POINTS to ensure that even when no points are awarded for a customer they are considered for extending the expiry.
  • This ensures that valid rolling events—even if they do not award points—still help extend the expiry date of existing points. To enable this feature, raise a ticket to the sustenance team.

To know more, refer to the Rolling Points Expiry When No Points Are Issued section in the Points rolling expiry documentation.


Event Notification On Creation Or Updation Of A Loyalty Promotion

You can now send an event notification when a new loyalty promotion is created or an existing loyalty promotion is updated.

What’s New:

  • Two new event notifications promotionCreated and promotionUpdated are added.
  • When a loyalty promotion is created or updated, an event notification is triggered, which notifies the user that the promotion has been created or updated.
  • These event notifications are triggered when a loyalty promotion is created or updated using the UI and the create and update loyalty promotion APIs.

To know more, refer to the Loyalty Promotion section in the Event Schema documentation.


New Event Identifier For Event Notifications

The event schema payload for various points-related event notifications now includes a new field: eventLogId – a unique identifier generated when an event is triggered.

The eventLogId lets you look up detailed points activity (like earning, spending, or adjustments) for a specific event using the Points Ledger Explode API. For example, you can track exactly how points were added or removed during a purchase or promotion.

To know more, refer to the Event Schema Payload documentation.


Adding Two New Fields In The Return Explode API

The Points Ledger Explode API has two new fields to help you identify bill returns.

What’s New:

  • When getting details of a bill return, two new fields have been added to the response:
    • billNumber: The identifier for the original transaction.
    • returnBillId: The identifier for the return transaction.

To know more, refer to the Points Ledger Explode API.