Skip to main content

Documentation Index

Fetch the complete documentation index at: https://partner-integrations.voyado.com/llms.txt

Use this file to discover all available pages before exploring further.

Shopify is deprecating Legacy customer accounts and replacing them with New customer accounts. With this change, Shopify will no longer expose via the API whether a customer has an account. This means:
  • The hasShopifyAccount flag is no longer reliable or available
  • It is not possible to distinguish account holders from guests in Voyado Engage
  • You can no longer use account status to control contact types or segmentation
This change is due to a platform limitation on Shopify’s side, as account login is now handled via one-time codes and is not exposed externally.
To ensure consistency and maintain loyalty functionality, Voyado recommends the following setup:
1

Create all customers as Member

Configure the app to create all customers as type “Member”:Voyado Engage app → Settings → Customer Contact Type → “Create everyone as Member”This ensures all customers can be included in loyalty programs and avoids incorrect contact type classification.
2

Use a consent to define loyalty membership

Since Shopify no longer provides account status, loyalty membership needs to be defined explicitly. Voyado recommends using a consent field in Engage to mark when a customer joins your loyalty program. This provides several key benefits:
  • Traceability - Track when a customer joined the loyalty program, including date and time
  • Automation - Trigger welcome flows, onboarding journeys, and personalized communication
  • Structured data - Store membership status in a consistent and reliable way

Collecting loyalty membership

Since loyalty membership is defined using a consent in Engage, the next step is to decide how customers sign up. Here are the recommended options for collecting loyalty membership.
Create a dedicated loyalty registration flow outside of Shopify’s native account system.How it works:
  • Create a custom sign-up form for loyalty membership
  • Collect required fields (e.g. name, email, marketing preferences)
  • Include a consent field to define loyalty membership
  • Send the data directly to Engage
Benefits:
  • Full control over the registration experience
  • Clean and reliable data collection
  • Works independently of Shopify limitations
If you are using the Engage Onsite Messaging add-on, you can capture loyalty members directly on-site.How it works:
  • Create pop-ups or embed minimized forms in Shopify
  • Trigger them based on behavior (e.g. time on site, login to My account page)
  • Collect:
    • Membership data
    • Consent for loyalty membership
  • Automatically mark users as loyalty members in Engage
Benefits:
  • No dependency on Shopify account system
  • No coding required
  • Contextual and dynamic targeting
If you do not need to distinguish between different customer types, the integration can be used as is. This applies if:
  • You treat all customers equally, regardless of whether they have actively signed up for a loyalty program
  • You define loyalty based on other factors, such as newsletter subscription or purchase behavior (number of orders, spend)
  • Other engagement data available in Engage
In these cases, there is no need to introduce a separate loyalty identifier, as segmentation can be handled using existing data in Engage.

Showing loyalty data

Due to Shopify limitations, the Engage theme app block used to display loyalty data such as point balance, member level, promotions, and vouchers is not supported on the New customer account page. This is consistent with the current Shopify app documentation, which notes that the theme app block is not applicable for new customer accounts. The block can still be used on other supported storefront pages outside of checkout and the customer account page. The Checkout extension for promotions and vouchers is not affected by this change.

Customer account UI extensions

If you want to display loyalty data within Shopify’s new customer account experience, one possible direction is to build a Customer Account UI extension in Shopify. Shopify supports extensions on customer account pages such as Order index, Order status, and Profile pages, which makes this a relevant path for merchants who want a more tailored account experience. At a high level, this means:
  • Creating a customer account extension in Shopify
  • Connecting that extension to Engage APIs
  • Fetching enriched customer and loyalty data
  • Presenting that data in a way that fits your brand and account experience
A key benefit of this approach is flexibility. It gives merchants more control over the design, content, and overall look and feel, while still allowing loyalty data to be surfaced in the account experience. Shopify’s customer account extensions are designed for custom functionality in the account area, and Engage’s “Get enriched profile” endpoint is specifically described as suitable for populating an e-commerce “My Pages” or other landing page with full customer profile data.

Learn about customer account UI extensions

Which data can be shown

Using Engage’s enriched profile API, merchants can retrieve a customer’s profile data in a single request. For real-time updates of specific entities like promotions or reward points, merchants may need to use the corresponding entity endpoints directly.
https://mintcdn.com/voyado-partners/0IxEIB2Y6a--gNYY/icons/developer-link.png?fit=max&auto=format&n=0IxEIB2Y6a--gNYY&q=85&s=36f1df27b0269657d842f3301d440083

Learn about the enriched profile endpoint

+-----------------------------+
|     Shopify Storefront      |
|  (Customer Account Pages)   |
+-------------+---------------+
              |
              | Customer Account UI Extension
              v
+-----------------------------+
|   Custom Account Extension  |
|  (UI + Logic controlled by  |
|         merchant)           |
+-------------+---------------+
              |
              | API request (customer identifier)
              v
+-----------------------------+
|     Voyado Engage API       |
|   (Enriched Profile API)    |
+-------------+---------------+
              |
              | Loyalty + profile data
              v
+-----------------------------+
|   Custom Account Extension  |
|  (renders loyalty data:     |
|   points, vouchers, etc.)   |
+-------------+---------------+
              |
              v
+-----------------------------+
|   Customer Account UI       |
| (Branded loyalty experience)|
+-----------------------------+
Here, loyalty data is fetched from Engage via API and rendered through a custom Shopify Customer Account UI extension, giving full control over the account experience.