Skip to main content

Build your own loyalty storefront

Most merchants show loyalty on their shop with the ready-made theme blocks that ship with the app — no code, no developer. This section is for the other case: you have a developer and you want your own design.

Everything the theme blocks do, they do through the Storefront API described here. You get the same capabilities and the same data.

What you can build​

You wantEndpoint
Show the points balance and the coupons the customer holdsGET /member
Show the reward catalogue and the earning rulesGET /config
Show the points historyGET /activities
A "Join the programme" buttonPOST /register
A "Redeem" button on a rewardPOST /redeem
A birthday fieldPOST /birthday
A "Leave the programme" linkPOST /leave

Start here​

  1. Authentication — how a request proves which customer it is for. Read this first; everything else depends on it.
  2. Quickstart — a working points balance, reward list and redeem button you can paste into a theme.
  3. API reference — every endpoint, field and status code, generated from the API itself.
  4. Versioning — what we promise not to break, and how we announce changes.

Running the storefront on your own domain rather than the shop domain? Read Authentication first — the constraint there decides your architecture.

One thing to avoid​

The app also writes loyalty data into Shopify as customer metafields and shop metaobjects. You can see them in the Shopify admin, and it is tempting to read them directly in Liquid.

Don't. They exist for the app's own theme blocks, they are not part of this contract, and they can change in any release without notice. Build against the API — that is the surface we keep stable.