Skip to main content

Understanding the Shop Now bonus calculation (Returns V2)

The Shop Now bonus gives customers a discount when they choose to exchange items immediately. Learn how the bonus is calculated, how it appears in Shopify, and what happens when return or exchange items are added or removed.

G
Written by Guido Kaspers

The Shop Now bonus offers customers a discount when they exchange items immediately, rather than opting for a refund or gift card. This article explains how the bonus works, how it is applied as a discount to exchange items, what happens when return or exchange items are added or removed, and how the discount appears in Shopify.

💡 The Shop Now Bonus is a discount, not store credit. When a customer activates Shop Now, the bonus is applied as a discount that reduces the price they pay for their exchange item. It is not added to a credit balance or issued as a gift card.

⚠️ Because of the bonus incentive, customers can potentially keep exchanging items for higher value items through Shop Now. To manage this, consider using Advanced Rules.


What is the Shop Now bonus

When a customer selects Shop Now, a custom bonus rate (e.g. 10%) is applied to their return value. This bonus manifests as a discount on the exchange — it reduces the price the customer pays for their selected items, rather than providing a spendable credit balance.


Key terms

  • Base Credit: The original value of returned items (before any bonus discount).

  • Bonus: A discount applied to the exchange item price when the customer chooses Shop Now. This is not store credit.

  • Total Value: The sum of Base Credit + Bonus discount.

  • Bonus Rate: The percentage discount applied to the Base Credit (e.g. 10%).


How Shopify Represents the Shop Now Discount

The Shop Now bonus is a Shopify-native discount. It is not applied through a third-party app or stored as credit. How it appears in Shopify depends on your exchange setup.

Zero-Value Exchanges (without Shopify's Exchange API)

If you are not using Shopify's native Exchange API, Swap creates exchange orders as separate orders in Shopify and adjusts the exchange item price directly. The item is added at the discounted price — that is, the original price minus the Shop Now bonus.

Because the item price in Shopify is the discounted amount, any refund issued when the item is returned reflects the correct (discounted) value automatically.

Exchange API

If you are using Shopify's native Exchange API, Swap adds a discount line item to the exchange order in Shopify. The item retains its original price, and the Shop Now discount appears as a separate line on the order.

When the exchange item is returned, Shopify calculates the refund against the discounted amount, ensuring the correct refund is issued.

💡 In both setups, the discount is visible directly in Shopify on the exchange order. This is a native Shopify discount — customers and merchants can see it on the order, and it is not issued as store credit or a gift card.


How the Single Pool system works

Swap uses a Single Pool system, where the Total Value is calculated and stored the moment Shop Now is selected. Any additions or removals of return or exchange items update this Total Value, ensuring all bonus calculations remain consistent.

Formula

Total Value = (Return Items - Exchange Items) × (1 + Bonus Rate)


Real-time display for customers

Before reaching the exchange page, customers can already see:

  • A line-through of the base credit amount

  • The discounted price that includes the bonus

  • The remaining discount available to use

This ensures transparency and helps customers make informed decisions before choosing items.


Adjusting the discount with exchanges

When a customer selects an exchange item after activating Shop Now:

  1. The value of the exchange item is subtracted directly from the Total Value.

  2. Swap recalculates the Base Credit and Bonus using:

Base Credit = Total Value / (1 + Bonus Rate) Bonus = Total Value – Base Credit


New vs. previous Shop Now flow

Feature

Previous Shop Now

New Shop Now

Bonus timing

After selecting EFSE items

Applied immediately when clicking Shop Now Before choosing EFSE items

Bonus based on

Difference between return and exchange

Initial return value when Shop Now is clicked (bonus is adjusted with return changes, not exchanges)

Flexibility

Limited

Fully dynamic

Remaining value options

Gift card only

Shop more, Shop Later, or Refund


Examples

Example 1: Shop Now bonus

  • Return value: £100

  • Bonus rate: 10%

What happens:

Total Value = 100 × 1.1 = 110 (Base Credit = £100, Bonus discount = £10)

The customer clicks Shop Now and a £10 discount is applied, giving them £110 in total value to use towards their exchange.

Example 2: Shop Now with exchange and refund

In the Single Pool system, the system separates base value (cash equivalent) from bonus (discount incentive).

  1. The customer returns €100

    → A 10% Shop Now bonus discount is applied

    Total Value = €110 (Base €100 + Bonus €10)

  2. The customer selects an exchange item worth €80

    → This is deducted from the Total Value

    Remaining Total Value = €30

  3. When the customer opts for a refund:

    → Only the base credit is refundable

    → The bonus portion is non-refundable (it is a discount incentive, not cash value)

  4. Therefore, we extract the base value from the remaining total:

    30 ÷ 1.10 = 27.27

Outcome

  • Refund issued: €27.27

  • Remaining €2.73 is the bonus discount and is not refundable

Example 3: Shop Now with exchange item

  • Return value: £160

  • Bonus rate: 10%

  • Exchange item selected: £50

What happens:

Total Value = (160 − 0) × 1.1 = £176

After choosing an exchange item and returning to the screen:

New Total Value = 176 − 50 = £126

Base Credit = 126 ÷ 1.1 = £114.55

Bonus = 126 − 114.55 = £11.45

Example 4: Adding a return item after Shop Now

Continuing from Example 2 (Total Value = £126):

  • Return item added: £80

What happens:

New Total Value = 80 × 1.1 + 126 = 88 + 126 = £214

Base Credit = 214 ÷ 1.1 = £194.55

Bonus = 214 − 194.55 = £19.45

Did this answer your question?