> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nudj.cx/llms.txt
> Use this file to discover all available pages before exploring further.

# Shopify Customer Accounts

> Customer account linking, the Members page with gamification stats, and the CSP allowlist for Shopify domains.

Shopify's new customer account system hosts the logged-in experience for shoppers. Nudj plugs into that surface so a merchant's gamification stats appear inside the Shopify-hosted account UI — the shopper sees points, tier, achievements, and the Ways to Earn catalog without leaving Shopify.

## Account linking

PR #1407 implemented **Shopify customer account linking** — mapping a Shopify customer id to a Nudj user id. Once linked:

* Shopify events for the customer resolve to the Nudj user.
* Rewards, points, and achievements attributed to the Shopify customer land on the matching Nudj user profile.
* Customer Data Hydration (PR #2184) can write back to the Shopify customer's metafields.

PR #1414 shipped the **auth link flow** — the concrete UX that walks a Shopify customer through linking to their Nudj account on first interaction.

## Customer Account extensions

Shopify customer accounts allow apps to ship extensions (`apps/shopify/extensions/customer-account-*`). Nudj ships:

* `customer-account-loyalty-hub` — a customer-account-scoped loyalty hub view.
* `customer-account-profile-block` — a profile block that renders on the customer account home.

Both are configured through the Shopify admin's Customer Accounts settings.

## Members page

PR #1689 shipped a **Members page** inside the Shopify embedded admin — a merchant-facing view of customers with their gamification stats (points, tier, recent achievements). Merchants use it to triage power users, check a specific customer's state, or export a segment.

<Frame caption="Members page showing linked Shopify customers with gamification stats (Summit Rush dev community).">
  <img src="https://g0cvqggimgcfezpr.public.blob.vercel-storage.com/pr-screenshots/NUDJ-0000-docs-audit-enterprise-1776495079502/members-page.png" alt="Admin members page with linked Shopify customers" />
</Frame>

## CSP allowlist for Shopify domains

The Nudj user app's CSP `frame-ancestors` directive was tightened in earlier work; PR #1638 added Shopify storefront domains (including customer-account origins) to the allowlist so the customer-facing surfaces render inside Shopify without being blocked. PR #2333 later opened CSP further for the universal embed widget.

## Mobile optimisation

PR #1905 optimised the entire Shopify embedded admin (including the Members page) for 390px viewports. Merchants using Shopify's mobile merchant app can manage the programme from a phone.

## Client-side data fetching

PR #2128 migrated the embedded admin (Members page included) to client-side data fetching so navigation between pages is instant. PR #2141 was a wider consistency pass that aligned the page header and empty-state shapes across all admin pages.

## Next steps

<CardGroup cols={2}>
  <Card title="Storefront widgets" icon="puzzle-piece" href="/enterprise/shopify/storefront-widgets">
    Customer-facing widget blocks including the loyalty account widget.
  </Card>

  <Card title="Customer Data Shopify sync" icon="database" href="/enterprise/customer-data-shopify">
    Push question-action answers into Shopify customer metafields for segmentation.
  </Card>
</CardGroup>

> Last reviewed: 2026-04 · Related PRs: #1407, #1414, #1638, #1689, #1905, #2128, #2141, #2333
