Sharing Customer Points Across Multiple Stores (Multi-store)

      Sharing Customer Points Across Multiple Stores (Multi-store)

        Article summary


        Supported plans

        Premium, Enterprise

        eCommerce Platform

        Shopify, Shopify Plus, BigCommerce, Salesforce Commerce Cloud, Adobe Commerce (Magento), Custom

        If you are a merchant with multiple stores, you can set your loyalty program to share your customers’ points across all of them. This means your customers can use the points they earned in all of your stores combined, and redeem them for rewards in any one of your stores. 

        A customer who usually shops and earns points in one of your stores, is more likely to go to another one of your stores rather than somewhere else, because they can redeem their points there.

        Improve customer experience by using this functionality to support multi-geo stores, as well as help expose your customers to new stores under the same organization and increase cross-brand purchases.

        Merging stores into a group

        To give customers access to a shared points balance across your stores, you will need to merge your stores into a group. A group is defined as two or more stores under the same organization that share some of the same loyalty program customer attributes.

        Please note:
        • Stores that have been merged will not have the capability to use Yotpo's Lists & Segments.
        • To merge your Yotpo stores into one group, all of your stores must be under the same Yotpo account.
        • To learn more about merging your stores, contact your Yotpo representative.

        The following customer attributes are shared across your stores on a group level:

        • Email address - the unique identifier used by our system to allow one customer to earn and spend a shared points balance across the group.
        • Current points balance - the combined sum of all points customers currently have available to use across the group.
        • Total points earned - the combined sum of all points earned over time across the group.
        • Birthday - customers’ date of birth is collected one time in one of the stores in the group, and can be used by all birthday campaigns.
        • Last seen - a date that changes based on the last action a customer took in any one of the stores in the group. 
        • Exclude from reports - excludes customers from being included in reports and dashboards from all stores across the group.


        • Points expiration based on 'date earned' logic is not supported for Multi-store
        • All other aspects of your loyalty program including campaigns, rewards, VIP tiers, referrals, reports, etc. are store-specific, and cannot be shared across stores in the group
        • If you are connecting the same ESP account for all of the stores in the group, store-specific customer attributes (e.g. referred_by) will be overwritten by any of the other stores
        • Analytics and reporting don't include multi-store information, meaning that each dashboard or report will only show data that is relevant to the store that it's presented on. The only exclusion is the Points Overview dashboard.
        You can have more than one group of stores. This option can be used to build one group for test stores and another group for production stores. If you would like to do this, contact your Yotpo representative. 

        Viewing your customers’ shared history

        The points balance for customers can be shared across all of your stores, and viewed together in the Yotpo Loyalty & Referrals admin.

        Merchant’s customer history view

        When you view a customer’s profile in the Loyalty & Referrals admin of any of your stores, you can see the combined history from all stores in the group. 

        To view your customers’ shared history, do the following:

        1. Using the menu on the left, go to the Customers page, then click on a customer’s profile. 
        2. For each row in a customer’s history, you can see which store an event occurred in under the Store column. 
        3. You can filter these sections by store or view them all by choosing from the drop-down menu on the top next to Show data of.
        Please note
        To perform any actions on the different line items, such as switching the Visible toggle between Yes/No under the Earning History for example, you must be logged into the loyalty admin of the specific store where the earning event occurred.

        Shopper’s reward history view

        Shoppers can view their actions and rewards history from all of your stores combined whenever they log into any one of your stores’ rewards page on-site module. The Store column in their Rewards History displays which store a specific action or reward is associated with.

        Points Overview dashboard

        The data that appears in your Points Overview dashboard is aggregated at the group level and is presented the same across all of your stores in that group.

        Please note:
        • Data in the Points Overview dashboard cannot be filtered by store. 
        • All other dashboards and reports display data related only to the specific store admin you are on.

        Combined points expiration

        When using the loyalty points expiration feature, the settings that you apply to one store will apply to all the other stores in the group. The points expiration will be determined by the shared Last seen date.

        For example, if you set customers’ points to expire 3 months after the last date of activity in store A, and a customer recently performed an action in store B, that customer’s points will be reset to expire 3 months following the action performed in store B.

        Collecting one birthday across all stores

        Customers only need to provide their birthday one time in one store. It will then appear as completed in all other stores in the group. This will help create a more seamless experience for your customers.

        To enable the collection of one birthday across a group of stores, do the following:

        1. In your Earning Points Module click Create, then select Collect Birthday under Multistore Campaigns to add it to your module.
        2. Repeat step 1 for each of the stores in the group.
        3. Customers will be asked to enter their date of birth one time in one store. After this, the Collect Birthday tile in their rewards page will automatically appear as completed in all of your stores.

        What customers get on their birthday

        You can decide if on a customer’s birthday, they will receive one combined reward from all of the stores in your group, or separate rewards from each store. 

        Best practices

        When merging stores into a group, there are some best practices to keep in mind.

        Loyalty Opt-in

        To ensure a consistent experience for your customers across the different stores in a group, customers will need to use the same email address every time they opt-in to your loyalty program in a different store. This is how our system will know to recognize them as the same customer across all stores and associate their activity with a shared points balance.


        We highly recommended setting up a unified customer management system, so that when a customer creates an account in one store using one email address, it is automatically created for them in all of the other stores in the group.

        If this is not possible, you can alternatively set up a flow to automatically opt-in customers to all your stores via API.

        Please note:
        If a customer opts out from one store, they will remain opted into the rest of the stores within the group. To opt-out from the entire group, they will need to do so from each store individually.

        Adjusting non purchase-based campaigns

        If you allow customers to share points across your stores, we recommend that you adjust some of your non purchase-based campaigns, such as Create an Account, Facebook Share, Page visit, etc. This will prevent customers from earning a large number of points across your stores and redeeming them for discounts, without making a purchase. 


        Consider setting the points value across all stores for any of your non purchase-based campaigns so that when combined they add up to a number that is less than your lowest costing reward.

        For example, if your cheapest available reward option costs 500 points to redeem, set the value of your individual non purchase-based campaigns so that they add up to less than 500 points earned.

        VIP tiers

        Loyalty VIP tiers are store-specific, meaning that each store will have its own separate VIP tiers program that is not shared across groups. In this case, even though customers’ points balance is shared across the group, the Points Earned towards your customers’ VIP tier status are not. 

        • If you choose to merge your stores into a group, we recommend setting the VIP tier entry requirements based on Amount Spent only, rather than Points Earned. This will prevent confusion for customers who expect their shared points balance to directly impact their VIP tier status.
        • Once a customer's VIP tier changes, we will send a webhook/ESP event with that update (including the store name), so if you have any flow relying on this event, you should consider storing a few VIP tiers for the same shopper, with the respective store attribution.

        Was this article helpful?