Manage two different shipping logistic

Could someone help me find a solution to this problem?
I have two inventory locations, one in Italy and one managed by a 3PL in China, and I want to prevent customers from combining products from both locations in the same order since not all products are stocked in both locations.

Is there a way and how to handle?

Hey @RudyL

Shopify doesn’t prevent customers from mixing items across locations in one cart, the cart is location agnostic by design and Shopify decides fulfillment location at checkout based on its own logic. So out of the box, what you’re asking for isn’t supported.

Realistic ways to handle it is using Shopify Markets to set up China as a separate market with its own catalog, then geo redirect or geo gate customers to the right storefront based on their delivery region. If they’re in EU they only see Italy stocked products, if they’re in Asia they only see China stocked. Cleaner customer experience and avoids the mixed cart problem entirely.

Best,
Moeed

I understand, is there an alternative solution?
My intention is to restock all the products only in the China warehouse, but this takes time and money, so I wanted to find a shortcut to proceed little by little.

Could we create separate shipping profiles for China inventory and Italy inventory, so that once a product is added to one shipping profile, it can’t be added to the other?

try using this shopify app Zapiet - Pickup + Delivery

Hey @RudyL,

Shipping profiles won’t get you there. Shopify combines rates from different profiles at checkout but doesn’t actually block the mixed cart, so customers can still place the order.

For an incremental approach while you migrate stock to China:

  1. Tag every product with its current warehouse (e.g. wh-italy or wh-china).
  2. Install an app like CartLock (I have no affiliation with them) and add a rule that blocks checkout when the cart contains both tags.

No code, works today. As products move to China, just retag them.

The difficult part with setups like this is that customers usually don’t think in terms of warehouses, fulfillment origins, or inventory locations.

They just think

I placed one order.

Then support starts getting questions once only part of the order ships, tracking numbers split, delivery timing becomes inconsistent, or customs handling differs between items.

In my opinion, the ultimate solution is to split orders based on locations.It is more important for us to get more orders.

Hi @RudyL ,
Shopify doesn’t have a native setting that prevents customers from adding products from different inventory locations into the same cart.

Some possible approaches are:

• Separate storefronts or markets – If the products from Italy and China serve different regions, using separate stores or Shopify Markets can help keep inventory and orders separate.
• Third-party apps – Some shipping and inventory management apps can help split orders or apply rules based on fulfillment locations, although they typically don’t prevent mixed-location carts by default.

Hey @RudyL ,
Shipping from multiple regions and by different couriers definitely adds burden to your team. Manually updating tracking info and to Shopify, managing customer notification costs you time and customer experience. Once my team made a mistake, lots your customer got angry and request dispute/chargeback.
I used this automation app to automate that process. Hope it helps you too!

Blocking customers from mixing items from different inventory locations in the same cart needs to be handled at the theme or checkout level — there’s no plug-and-play solution for that. Shopify Markets won’t help here either, as it can restrict product visibility by region but has no concept of inventory locations. If you’re on Shopify Plus and comfortable on the dev side, Shopify Functions has a cart validation option that might be worth looking into.

Where apps do shine is on the fulfillment side after an order is placed:

  • Order Routing Plus can automatically route each item to the correct location and split a single order into multiple fulfillments
  • so your Italy and China stock get fulfilled from the right place without any manual work
  • and you don’t need Shopify Plus to use it — it works on any Shopify plan

If the goal is fulfillment accuracy, Order Routing Plus can handle that. If it’s strictly about blocking mixed-location carts at checkout, that’s a custom dev conversation.