Getting started
What is ShipWith, and what can it do?
ShipWith is a Shopify shipping rules app inside Shopify admin. It lets you customize how existing shipping methods and delivery options appear at checkout. You can create rules that hide, rename, or sort those options for every checkout or only when selected conditions match.
Can ShipWith create shipping rates or offer shipping discounts?
No. ShipWith does not create or price custom Shopify shipping rates, and it does not offer Shopify shipping discounts.
Create your first shipping rule
Use ShipWith to create Shopify shipping rules that control how existing delivery options appear at checkout. A rule can hide, show, rename, move, reorder, or sort those options. It does not create shipping rates, change their prices, or offer shipping discounts.
Activate, pause, or delete a shipping rule
You can manage ShipWith shipping rules without deleting them. Set a rule's Status to Live when you want it to run at Shopify checkout, Test when you want to try it without affecting customers, or Off when you want to pause it.
Test your shipping rules at checkout
Test Shopify shipping rules in your store's checkout before relying on them for customer orders. For each ShipWith rule, use two checkout cases: one that matches the rule and one that does not.
Hide, rename, and sort shipping methods
Show only selected shipping methods
Use ShipWith to show only specific Shopify shipping methods at checkout. The Show only specific delivery method action keeps selected existing delivery options visible and hides the other eligible options. It does not create a delivery method that is missing from checkout.
Change the order of shipping methods
Use ShipWith to reorder Shopify shipping methods at checkout. ShipWith changes the order of existing delivery methods; it does not create delivery methods or change their prices.
Hide specific shipping methods at checkout
Use a ShipWith rule to hide a Shopify shipping method when it is available at checkout. You can target one or more selected delivery options supplied by Shopify. ShipWith does not create rates, change prices, or offer shipping discounts.
Rename shipping methods at checkout
Use a ShipWith rule to rename Shopify shipping methods by changing the title of existing delivery methods shown at checkout.
Show only the cheapest or most expensive shipping method
Use ShipWith to show the cheapest Shopify shipping rate or the highest-cost eligible method currently visible at checkout. ShipWith compares existing prices. It does not change any price, create a rate, or create or apply a shipping discount.
Conditions and rule behavior
Use “Ignore previous rules” to create an exception
Use Ignore previous rules to create ShipWith shipping rule exceptions. This action is useful when a broad rule should apply to most checkouts, but a specific checkout case needs to start again from Shopify's original delivery options.
Understand rule priority and action order
Shopify shipping rule priority in ShipWith controls the order of active rules within one Function input. That order matters when more than one rule or action changes the same delivery method.
Match shipping methods by name or handle
ShipWith actions can match a Shopify shipping method handle or name for delivery methods already available at checkout. The normal rule editor does not show a separate shipping-method matcher card. Instead, enter targets in the fields shown by the action that you select.
Choose the right Function input type for your rule
ShipWith Function input types control which Shopify checkout information a shipping rule can use in its conditions. Choose the input that provides the condition you need, not the one that sounds most general.
Choose when a shipping rule applies: conditions and groups
Use Shopify shipping rule conditions in When the rule runs to choose whether a ShipWith rule runs for every checkout or only when checkout details match.
Common shipping setups
Restrict shipping methods by country, province, or postal code
Use ShipWith to control Shopify shipping methods by postal code, country, or province. Destination conditions can hide shipping methods or show only selected methods for specific regions. ShipWith changes delivery options that Shopify already provides; it does not create rates, change prices, or offer shipping discounts.
Show different shipping methods based on cart value or weight
Use ShipWith to control Shopify shipping methods by cart total, subtotal, or weight. These conditions determine which existing delivery options appear at checkout. ShipWith does not create shipping rates, change their prices, or apply shipping discounts.
Hide express shipping for specific products or collections
Use ShipWith to hide a Shopify shipping method by product or collection. This rule hides an existing express delivery option when the cart contains selected products or products from selected collections. It does not remove the rate from Shopify or change its price, and it hides a matching option only when the rule's conditions apply.
Hide shipping methods for PO box addresses
Use ShipWith to manage Shopify PO box shipping by hiding delivery options when a delivery group's destination is an actual post-office box. The Address input rule's PO Box condition checks destination address lines 1 and 2. It does not classify private mailboxes or APO/FPO/DPO military addresses as PO boxes.
Customize shipping methods for tagged customers or B2B buyers
Use Shopify customer tags or B2B buyer details in ShipWith to customize shipping methods for signed-in customers. ShipWith can hide, show only, rename, or reorder methods that Shopify already provides. It does not create shipping rates, change prices, or apply shipping discounts.
Offer local pickup only for certain products
Shopify offers local pickup per location, not per product. If only some products can be collected in store, such as items stocked at the shop, use ShipWith to hide Local pickup whenever the cart contains a product that isn't eligible. Customers then see pickup only when every item in their cart can be picked up.
Hide shipping methods when a discount is applied
Some stores don't want discounted orders to use a premium delivery option, for example no express shipping on orders that already use a promo. ShipWith can hide selected delivery methods when the order has a discount applied.
Replace a Shopify Scripts shipping script with ShipWith
Shopify is retiring Shopify Scripts in favor of Shopify Functions. If your store used a shipping script to hide, rename, or reorder delivery methods, you can rebuild that behavior with ShipWith rules. ShipWith runs on Shopify's delivery customization Functions, so there's no Ruby to write or maintain.
Hide other shipping rates when free shipping is available
When an order qualifies for free shipping, many stores don't want customers to also see paid rates next to it. Shopify shows every eligible rate by default. ShipWith's Show only free methods action hides the paid rates whenever a free one is offered, and leaves checkout unchanged when nothing is free.
Troubleshooting and rule management
Why is a condition unavailable for my rule?
When a ShipWith condition is unavailable, check the rule's selected Function input. The conditions shown in the editor depend on that input. Each input uses a different Shopify Function query, so it can read only the checkout data included in that query.
Fix a rule that failed to sync with Shopify
If a ShipWith Shopify sync fails, your stored shipping rules are not deleted. Saving a rule stores it in ShipWith, then synchronizes the active rules for that Function input with Shopify.
Why are no shipping methods showing at checkout?
If no shipping methods are available in Shopify checkout, first determine whether Shopify supplied no methods or ShipWith hid the supplied methods.
Why isn’t my shipping rule working?
If a Shopify shipping rule is not working, check the ShipWith rule in the order below. After each change, select Save, wait for Shopify sync to show Synced, and test checkout again.
Export and import shipping rules
Export Shopify shipping rules from ShipWith to back them up or copy them to another store. Importing the ShipWith JSON file adds copies of the rules; it does not replace, update, or merge existing rules.

