Skip to main content
Nudj supports four rewards patterns backed by a linked Shopify store. All four are configurable from the Nudj admin panel and the Shopify embedded admin.

Shopify reward type

PR #1447 introduced the Shopify reward type in the admin panel’s reward picker. A Shopify reward is backed by a specific product, discount, or redemption link in the merchant’s Shopify store — not a Nudj-internal asset. PR #1378 added Shopify to the platform third-party config table that gates which reward types are available per community. PR #1461 fixed config checks that ran during reward upsert so partially-configured Shopify rewards can’t be saved.

Reward backends

Discount codes

Backed by a Shopify discount code created server-side when the reward is earned. Redeemable at checkout.

Checkout links

PR #1492 — Nudj generates a Shopify checkout link (/cart/...) with the discount pre-applied. The user taps the link from their reward, lands in Shopify checkout already discounted.

Free product via discount function

PR #2160 — a Shopify discount function the merchant installs (apps/shopify/extensions/nudj-free-product). When the user reaches checkout with the reward claimed, the function grants the configured SKU for free.

Synced Shopify products

PR #1459 — Nudj syncs the merchant’s product catalog. Admins pick products from the synced catalog to back a reward without leaving the Nudj admin. PR #1493 simplified the sync modal UX.

Backend creation flow

PR #1467 formalised the server-side reward creation flow. When a merchant saves a Shopify reward, Nudj:
  1. Validates the linked Shopify config (discount id, product id, or redemption path).
  2. Calls Shopify to create or reserve the backing object.
  3. Persists the reward against the community.

Unlinking rewards

PR #1992 added an individual unlink option for discount-backed rewards — merchants can detach the Shopify object from a single reward without removing the entire Shopify integration.

Reward authoring UX

Two UX PRs shape how rewards are edited from the Shopify embedded admin:
  • PR #1974 — consolidated rewards into a single unified card (replacing the previous split UI).
  • PR #1981 — inline reward form modal for giveaway and exclusive rewards, so merchants stay in context instead of opening a new screen.

Configuration precedence

A reward can reference a product, a discount, or a checkout link. When multiple are configured, the runtime resolves in this order: checkout link → discount function (free product) → discount code → synced product metadata. Picking a single backing is the recommended path; multi-backing is an advanced pattern surfaced only when your merchandising team explicitly requires it.

Next steps

Promotions & multipliers

Points multipliers, streak rewards, and achievement templates.

Reward integration overview

Higher-level integration patterns including webhook-driven delivery.
Last reviewed: 2026-04 · Related PRs: #1378, #1447, #1459, #1461, #1467, #1492, #1493, #1974, #1981, #1992, #2160