Parcel RulesParcel Rules
Back to home

Help and setup guide

Parcel Rules has three features, each powered by Shopify Functions so they run natively at checkout on any plan. Set up only the ones you need. Each section below covers what the feature does, how to set it up, a reference table of every setting, and what to check if something is not working.

1. Free shipping by collection

Offer free shipping (or a set discount percentage) once a customer spends enough on a chosen collection, counted separately from the rest of the cart.

Before you start, set up separate shipping profiles. This feature works by making one delivery rate free, so the products it applies to need their own shipping profile with its own delivery rate. Create that in Settings, Shipping and delivery first. Keeping those products in a separate profile is what lets free shipping apply to them only, while the rest of the cart keeps its normal rates.

Set it up

  1. In Parcel Rules, click Set up free shipping threshold (or go to Shopify admin, Discounts, Create discount, and choose the Parcel Rules free-shipping discount).
  2. On the discount page, set the qualifying threshold, the eligible collection(s) or products, the delivery rate to discount, and the discount percentage (default 100, which means free).
  3. Save the discount and make sure its status is Active.

Settings reference

SettingWhat it doesDefault
Included collections / productsThe products whose spend counts toward the threshold. Choose collections, specific products, or both.Every product counts
Excluded collections / productsProducts that never count, even if they sit in an included collection (for example, gift cards).Nothing excluded
Delivery rate(s) to make freeThe checkout shipping rate(s) the discount applies to, matched by name. Pick from your active rates or type a name.The rate the customer selects
Minimum spend to unlock free shippingThe spend on counting products needed before the discount applies, per rule.Required
Shipping discount (%)How much to take off the rate. 100 makes it free; lower it for a partial discount (for example, 50 for half-price shipping).100
Countries this rule applies toLimit the rule to shipping addresses in these countries.Any country
States/provinces this rule applies toNarrow the rule further within the selected countries, where state/province data is available.All in those countries
Discount label shown at checkoutThe text shown next to the discounted rate at checkout.Free shipping

You can add several rules. The first rule whose region matches the shipping address sets the threshold.

How it works

A Shopify Function adds up the value of the eligible collection's lines and discounts the chosen delivery rate once that subtotal reaches your threshold. Because it runs inside Shopify's checkout, it works on Basic, Shopify, Advanced, and Plus, not just Plus.

Test it on your storefront

  1. Add products from the eligible collection until the cart reaches your threshold, plus a product from a different shipping profile (like a bulky item).
  2. Go to checkout and enter a shipping address. The eligible products' delivery rate should be free (or discounted by your percentage), while the other product's rate is unchanged.
  3. Remove eligible items to drop below the threshold, and the rate returns to its normal price.

Good to know: the function matches the delivery option by its name, so use a flat delivery rate whose name matches the rate you configured. Products outside the eligible collection do not count toward the threshold.

2. Delivery zones by postcode

Restrict flagged products to the postcodes you actually deliver to. Shoppers outside the zone are blocked at checkout with a clear message you write.

Set it up

  1. In Parcel Rules, click Set up delivery zones (or go to Shopify admin, Settings, Checkout, and add the Parcel Rules checkout rule).
  2. Configure the flagged products (collections or specific products), the allowed postcodes, the country, and the customer message shown when a delivery is blocked.
  3. Save the rule.

Settings reference

SettingWhat it doesDefault
Restricted collections / productsWhich products are delivery-restricted. A product is restricted if it is in a chosen collection or is a chosen product.At least one required
Checkout error messageA blocking error shown at the top of checkout when an order can't be delivered. Use {zip} for the shopper's postcode and {product} for the restricted product name(s).Inline message only
Countries this zone applies toLimit the zone to these shipping countries.Any country
Deliverable postcodesThe postcodes this zone can ship to. Separate them with commas, spaces, or new lines.Required
Validation messageThe inline message beneath the postcode field when this zone blocks the order. Supports {zip} and {product}.Optional

You can add several zones. An order is allowed if its address matches any zone that covers a restricted product.

How it works

A Cart and Checkout Validation function checks the delivery address at checkout. If a flagged product cannot be delivered to that postcode, checkout is blocked with your message. Addresses inside the zone proceed normally.

Test it on your storefront

  1. Add a flagged product to the cart and go to checkout.
  2. Enter a delivery address with a postcode outside your allowed list. Checkout is blocked and your message is shown.
  3. Change to an in-zone postcode, and checkout proceeds normally.
  4. A cart with no flagged products is never blocked, whatever the postcode.

Good to know: the block only applies when a flagged product is in the cart. Enter postcodes in the same format shoppers use at checkout so they match exactly.

3. Free gift with purchase

Automatically add a chosen product to the cart once it qualifies, and make it free at checkout. It is removed automatically if the cart drops below the threshold, and it is never charged.

Set it up

  1. In Parcel Rules, click Set up free gift (or go to Shopify admin, Discounts, Create discount, and choose the Parcel Rules free-gift discount).
  2. Configure the gift product or variant, the qualifying threshold, the eligible collections or products, an optional country, and the cart message. Save, and make sure the discount is Active.
  3. Turn on the storefront widget: in the free-gift card click Open theme editor, enable the Gift with purchase app embed, and Save the theme.

Settings reference: the discount

Set these on the free-gift discount in Shopify admin, Discounts.

SettingWhat it doesDefault
Gift product & variantThe product, and specific variant, given for free. Keep it in stock, as its inventory is still tracked.Required
Minimum spend to unlock the giftThe spend on counting products needed before the gift is added.0 (any purchase)
Products that count toward the spendLimit which products count, by collection, specific product, or specific variant.Every product counts
Countries this offer applies toLimit the offer to these shipping countries.Any country
Message shown on the free gift lineThe text shown next to the gift line in the cart and at checkout.Free gift added

How it works

The theme app embed watches the cart and adds or removes the gift as the cart qualifies. A discount function makes the gift line free and is the authority on pricing at checkout, so the gift is always free when it is present. This feature needs an Online Store 2.0 theme.

Test it on your storefront

  1. Add eligible products until the cart reaches the threshold. The gift is added automatically and shows at $0.
  2. Go to checkout and confirm the gift line is free and not in the order total.
  3. Remove items to drop below the threshold, and the gift is removed automatically.

Settings reference: the app embed

Set these in the theme editor, under the Gift with purchase app embed. The confirmation is optional: off by default, the gift is added silently. Turn it on to give shoppers clear feedback, even on themes whose cart drawer does not pop open. It shows the gift's image and name alongside your message, echoes the cart's free-gift cues (usual price struck through, plus a tag), and inherits your theme's font.

SettingWhat it doesDefault
Don't re-add the gift if the shopper removes itIf a shopper removes the gift, it stays gone for the rest of their session instead of being added back.On
Show a confirmation when the gift is addedShows a popup confirming the gift was added. The settings below apply only when this is on.Off
Display styleToast (a small popup near a screen edge) or Modal (a centred card over a dimmed background).Toast
HeadingThe confirmation's main line.Free gift added!
SubtextAn optional second line under the heading.Blank
Show the gift's imageShow the gift's image in the confirmation.On
Show the gift's nameShow the gift's name in the confirmation.On
Show the valueShow the gift's usual price struck through next to a “Free” label.On
“Free” labelThe wording next to the struck-through price. Leave blank to hide it.Free
Tag labelThe small tag chip, like the cart's discount tag. Leave blank to hide it.Free gift
Toast positionWhere the toast appears: top or bottom, and left, centre, or right. Toast style only; the modal is always centred.Bottom right
AnimationHow the confirmation appears: slide in or fade in. Reduced motion is respected automatically.Slide in
Auto-dismiss afterHow long the confirmation stays on screen (2 to 15 seconds). Shoppers can also close it; the modal also closes on background click or Escape.5s
Background colourThe confirmation's background colour.#ffffff
Text colourThe confirmation's text colour.#1a1a1a

If the gift is not appearing

  • Check the free-gift discount exists and is set to Active.
  • Check the Gift with purchase app embed is enabled and the theme is saved.
  • Check the cart actually qualifies: the threshold is met by eligible products, and the buyer's country matches any country setting.
  • If your theme's cart doesn't update to show the gift straight away, don't worry: the gift is still added and is free at checkout.
  • The widget runs on Online Store 2.0 themes only. It does not run in POS, headless storefronts, or during checkout edits, but the discount function still keeps the gift free wherever it appears.

The gift is never charged. If the discount is ever not making the gift free (for example if it is paused), the widget removes the gift from the cart rather than let a shopper be charged for it.

Still need help?

Send us a message and we will help you get set up. We usually reply within one business day.