Shelfworks

Shelfworks › Guides

Why Shopify charges shipping twice when an order ships from two locations

Short answer: When no single location can fulfil the whole cart, Shopify works out a rate for each part and adds them together. With a flat rate in one location group, the customer pays that flat rate once. With weight-based, carrier-calculated or app rates, the parts are combined, which customers read as paying shipping twice.

What Shopify does, step by step

  1. Shopify tries to fulfil the order from one location, following your fulfilment priority.
  2. If one location can’t, the cart is split between locations.
  3. For a flat rate in the same location group, Shopify charges it once. Shopify’s example: a $5 flat rate and two locations needed, the customer pays $5.
  4. For weight-based, carrier-calculated and app rates, Shopify combines the rates for each part. Rates with the same name are added together; if names differ, only the cheapest options are added and shown as “Shipping”.

Fixes to try first (free)

When the free fixes don’t fit

If you need carrier or weight-based pricing and ship from several warehouses, the combined rate is how Shopify is designed to work. The alternative is a rate app that prices the whole cart once and returns one set of options.

Where Shelfworks fits: Mergerate

Mergerate is a rate app for exactly this case. It connects to your store as a carrier service, prices your own rates on the whole cart, charges them on one shipment and returns the same options at $0 on the others, with a label you choose.

Mergerate's rate request log: one shipment charged, the other shown at $0

Status: Not on the Shopify App Store yet. Want to know when it’s available? Email support@shelfworks.app with the subject “Mergerate”.

Related guides

Sources (checked 25 September 2026):