A step-by-step guide to adding the Discount block to your UniLink page so you can run a sale, track affiliate traffic, or auto-apply a promo code to your Shop products — without requiring visitors to copy and paste anything.
- The Discount block automatically applies a discount to eligible products in your UniLink Shop when a visitor lands on your page — no manual code entry required — and can show a confirmation banner so visitors know the discount is active.
- The key difference from the Coupon block: the Coupon block displays a code visitors copy and use elsewhere; the Discount block actually applies the reduction to your UniLink Shop products at the point of purchase.
- Stripe must be connected and in live mode before the Discount block can process discounted purchases — a block that looks active in the Dashboard but has no live payment processor will silently fail at checkout.
- Always set an expiry date and scope the discount to the right products; an uncapped, all-products discount with no expiry date will keep running long after your sale is supposed to be over.
The friction of discount codes is almost always underestimated. A visitor arrives at a product, sees "SAVE20" printed on an ad, navigates to checkout, realizes they have to go back and copy the code, pastes it into a promo field that may or may not accept it, and either succeeds or abandons the cart out of frustration. The Discount block in UniLink eliminates that sequence entirely. When the block is active on your page, the discount is already applied before the visitor clicks anything — it triggers on page load, and if you have the confirmation banner enabled, a note at the top of the page tells them their discount is active. The experience goes from "find the code, copy it, paste it, hope it works" to "you already have 10% off, go ahead and shop."
What the Discount block does
The Discount block applies a percentage or fixed-amount discount to products in your UniLink Shop. The discount can be scoped to all products, a specific category of products, or a hand-selected list of individual products. Activation happens either automatically when the page loads — meaning any visitor who arrives on the page gets the discount applied — or manually when the visitor clicks an "Activate" button you configure on the block. The auto-activation method is the default for most use cases: affiliate links, ad landing pages, and influencer campaigns where the discount is the reason the link exists.
When the discount is active, a confirmation banner appears at the top of the page (if enabled) showing the visitor that their discount is already applied. This matters more than it sounds — visitors who do not see confirmation often spend time hunting for a promo field, doubting whether the discount is real, or abandoning the page without purchasing. The banner removes that doubt. It functions as a conversion asset, not just a visual flourish.
The Discount block is fundamentally different from the Coupon block, and the distinction is worth being precise about. The Coupon block is a display element — it shows a code, lets visitors copy it, and sends them elsewhere to use it (typically a third-party checkout like Shopify, WooCommerce, or Gumroad). The Discount block is a transactional element — it applies directly to your UniLink Shop products and processes through your connected Stripe account at checkout. If your store is not on UniLink's Shop system, the Discount block does nothing to your products. The Coupon block is what you need in that case.
Before you start
- Confirm Stripe is connected in live mode: Go to Dashboard → Settings → Payments and verify that your Stripe account is connected and in live mode — not test mode. The Discount block applies reductions to real purchase flows processed through Stripe. A Stripe account in test mode will appear connected in the Dashboard but will not process real transactions. If your account is still in Stripe's restricted mode awaiting identity or business verification, complete that before activating any discount.
- Know which products the discount should apply to: Decide in advance whether the discount applies to everything in your shop, a specific category (e.g., "Digital Downloads" or "Online Courses"), or individual products. Applying a discount to all products when it should only cover a seasonal sale category is one of the most common mistakes — visitors end up getting a discount on products that were never meant to be included, which costs you margin you did not intend to give away.
- Set your expiry date before you publish: Decide when the discount ends and note it down. You will enter this in the block settings. A discount with no expiry date runs until you manually deactivate it — which means a holiday sale promotion you launched in December can still be running in March if you forget to turn it off. Set the expiry date at configuration time, not as something you will "handle later."
- Plan your activation method: Auto-activation on page load is the right choice for dedicated promotional pages — an affiliate link, an influencer partnership URL, an ad landing page where the discount is the hook. Manual activation (visitor clicks "Activate discount") is better when the page serves multiple purposes and not every visitor should automatically receive the promotion. Most discount-focused use cases work better with auto-activation.
How to add the Discount block to your page
- Open your page in the Dashboard: Log in to UniLink, go to My Pages, and click Edit on the page where you want the discount to be active.
- Add a new block: Click + Add Block. In the block picker, find the Commerce section and select Discount.
- Set the discount type and value: Choose either Percentage (e.g., 20% off) or Fixed amount (e.g., $10 off). Enter the discount value. For percentage discounts, enter the number without the percent sign — the block appends it. For fixed discounts, enter the amount in your currency.
- Scope the applicable products: In the Applicable products field, select All products, a specific product category, or individual products. If you choose individual products, you will see a product picker with your current Shop inventory — select only the items the discount should apply to.
- Set activation method: Choose Auto on page load or Visitor clicks Activate. For promotional landing pages and affiliate URLs, auto-activation is almost always the right choice.
- Enter the expiry date: Enable the expiry date field and set the date and time when the discount should stop applying. After the expiry time passes, the discount becomes inactive even if the block is still published on the page — the banner will not appear and products will revert to full price at checkout.
- Set the discount code string: The block generates a discount code string that is applied behind the scenes when the discount activates. You can use the auto-generated code or enter a custom one (e.g., "AFFILIATE-JOHN" for a specific affiliate partner, or "SUMMER25" for a campaign). Custom codes are useful when you want to track which block or which partner's link generated the purchase.
- Enable the confirmation banner: Toggle on Show confirmation banner. The banner appears at the top of the page when the discount is active, showing a message like "10% off applied to your order." This step is easy to skip and frequently causes conversion problems when skipped — always enable it.
- Save and test: Save the block, open your live page in a new browser tab (or an incognito window), and verify the confirmation banner appears and the discount is reflected in the checkout flow for an applicable product. Do not test in the Dashboard preview — test on the live published page where the actual payment flow runs.
Key settings explained
| Setting | What it controls | Best practice |
|---|---|---|
| Discount type (Percentage / Fixed) | Whether the discount deducts a percentage of the product price or a flat amount | Percentage for sitewide or category sales; fixed amount for specific product promotions where you know the exact dollar reduction ("$10 off this course") — fixed amounts can be misleading on low-priced items where $10 off a $12 product raises margin concerns |
| Applicable products | The scope of which products the discount reduces — all, by category, or individual selection | Always scope as narrowly as the campaign intent requires; all-products is a convenience setting that costs more margin than usually intended; category or individual product scoping gives you precise control |
| Activation method | Whether the discount activates automatically when the page loads or requires the visitor to click an Activate button | Auto-activation for dedicated promotional pages (affiliate links, ad landing pages); manual activation when the page has multiple purposes and the discount is optional rather than the core message of the visit |
| Expiry date | The date and time after which the discount stops applying, even if the block remains published | Always set — a discount with no expiry runs indefinitely until manually deactivated; set the expiry to the end of your sale window at configuration time, not after the sale starts |
| Discount code string | The underlying code applied to the transaction when the discount activates — auto-generated or custom | Use custom codes when tracking multiple affiliates or campaigns from the same page — each partner gets a unique code so purchases are attributable to a specific link or partnership |
| Confirmation banner | A banner shown at the top of the page when the discount is active, confirming to the visitor that their discount has been applied | Always enable — visitors who do not see confirmation will hunt for a promo field, doubt whether the discount is real, or abandon the page; the banner directly improves conversion on discounted pages |
Using the Discount block for affiliate tracking and campaigns
The most effective use case for the Discount block is not a generic sitewide sale — it is affiliate tracking. When an influencer or affiliate partner shares your UniLink page URL, every visitor who arrives via that link sees the discount applied automatically and the confirmation banner confirming it. The purchase records that discount code in your transaction history. At the end of the month, you filter your orders by discount code to see exactly how many sales each partner generated, what the total revenue was, and what commission is owed. The Discount block does the attribution work that most affiliate programs need a separate software subscription to handle.
For seasonal sales and promotional campaigns, the workflow is equally straightforward. You configure the block with the sale parameters — 25% off all digital products, active from now until the end of the month — publish the page, and share the link. Visitors who arrive see the discount already applied. When the expiry date passes, the discount deactivates automatically. You do not have to remember to turn it off, change prices back, or update the page. The block handles the time-boxing for you as long as you set the expiry date when you configure it.
Brand deals work similarly. When a brand sponsors content and wants to offer their audience a discount on your products, you create a dedicated page with the Discount block set to their agreed-upon discount percentage and a custom code that includes the brand name. The brand shares that URL in their content. You can see in your Dashboard how many purchases came through that page, what discount code was applied, and what the total revenue from the campaign was — which is exactly the kind of campaign performance data brands increasingly expect to see in post-campaign reports.
Troubleshooting
| Problem | Likely cause | Fix |
|---|---|---|
| Discount is not applying at checkout even though the banner shows | Stripe is in test mode or restricted mode; the discount code is not recognized in the live payment flow | Go to Dashboard → Settings → Payments and confirm Stripe is in live mode; complete any pending Stripe verification steps; then retest on the live published page in an incognito browser window |
| Confirmation banner is not appearing on the live page | Banner toggle was not enabled when the block was saved, or the discount's expiry date has already passed | Edit the block and confirm the Show confirmation banner toggle is on; also confirm the expiry date is in the future — a discount past its expiry shows no banner and applies no reduction |
| Discount is applying to products it should not apply to | Applicable products was set to "All products" when it should be scoped to a category or individual selection | Edit the block, change the Applicable products setting from All to the correct category or individual product selection, and save |
| Discount ran past the intended sale end date | No expiry date was set, so the discount continued running indefinitely after the sale period ended | Edit the block and set an expiry date immediately; check your orders for the period after the intended sale end to determine whether any unintended discount purchases occurred |
| Can't tell which affiliate partner generated which purchases | All affiliates are using the same discount code rather than unique per-partner codes | Create a separate page per affiliate, each with a unique discount code string, and share each page URL only with the corresponding partner — purchases will then be attributable by discount code in your orders dashboard |
Best fit for
- UniLink Shop users running time-limited sales where the discount should apply automatically without requiring visitors to find and paste a code
- Affiliate programs where each partner's link should auto-apply a unique discount code so purchases are attributable without third-party tracking software
- Influencer and brand deal campaigns where a sponsored URL delivers a specific discount to the audience that clicks through from the content
- Seasonal promotions with defined start and end dates, where the expiry setting handles the deactivation automatically without requiring manual intervention
Not the right tool if
- Your store runs on Shopify, WooCommerce, Gumroad, or another external platform — use the Coupon block instead to display a code visitors can copy and paste at that platform's checkout
- You want to give visitors a code they can share with others — the Discount block applies automatically and is not a shareable code in the traditional sense; use the Coupon block for shareable promo codes
- You have not connected Stripe in live mode — the block cannot process discounted purchases without a live payment processor, and it will appear active while silently failing at checkout
Frequently asked questions
What is the difference between the Discount block and the Coupon block?
The Coupon block is a display element — it shows a promo code visitors can copy and use at an external checkout (Shopify, WooCommerce, etc.). It does not apply anything automatically. The Discount block is a transactional element — it automatically applies a reduction to products in your UniLink Shop at checkout, without any code entry from the visitor. If your products live on UniLink, use the Discount block. If your products live on a third-party platform, use the Coupon block to display the code visitors need to enter there.
Can I stack two Discount blocks on the same page?
Adding two Discount blocks to the same page is technically possible, but the behavior depends on how your Stripe account handles stacked discount codes — typically only one discount applies per transaction. If you need to offer discounts on different product scopes simultaneously (e.g., 20% off digital products and 10% off physical products), configure a single Discount block with the broader scope and adjust the value, or create separate pages for each promotion with their own dedicated Discount blocks and distinct URLs.
Does the discount apply to products in my Shop that are already on sale?
The Discount block applies on top of the product's listed price at the time of purchase. If a product already has a reduced price set in your Shop product settings, the Discount block's reduction applies to that already-reduced price. Stacking two reductions can result in a deeper discount than intended, so review your product pricing in Shop settings before activating a Discount block to confirm the combined effect is within your intended margin range.
How do I track how many purchases came through a specific Discount block?
Go to Dashboard → Orders and filter by discount code. Each order that was processed while the Discount block was active will show the discount code applied to that transaction. If you use unique custom codes per page or per affiliate, filtering by code gives you a precise count of purchases, total revenue, and discount amount attributed to each campaign or partner. Export the filtered view as a CSV for reporting to brand partners or for your own affiliate commission calculations.
- Confirm Stripe is connected and in live mode before activating the Discount block — a block that appears active in the Dashboard with a test-mode Stripe account will silently fail at checkout without showing any error to you or the visitor.
- Always enable the confirmation banner — visitors who see no confirmation that their discount is active will hunt for a promo code field, lose trust in the promotion, and convert at a lower rate than visitors who see immediate confirmation.
- Set an expiry date at configuration time, not later — an unset expiry means the discount runs indefinitely until you manually deactivate it, which is how a holiday sale ends up still active in spring.
- Use unique custom discount code strings per affiliate or campaign to get purchase attribution directly from your Orders dashboard without needing third-party affiliate tracking software.
Ready to run your first promotion? Create your free UniLink page and add the Discount block to auto-apply sale prices, track affiliate sales, and run time-limited promotions — without requiring visitors to copy a single code.
