Understanding inventory management for multiple locations and apps

You can stock products in multiple store locations and fulfillment apps simultaneously, including retail stores, warehouses, dropshipping apps, and custom fulfillment services. When you assign a product to multiple locations, inventory is tracked separately for each location. You can stock different quantities at each location, and orders are fulfilled based on your order routing or shipping profiles configuration. Each location's inventory is independent and can't be shared or pooled with other locations.

You might stock a product at multiple locations in the following scenarios:

  • You have multiple retail stores or warehouses.
  • You stock some products locally and dropship others.
  • You need to fulfill orders from different geographic regions.
  • You use third-party fulfillment services alongside your own warehouse.

Inventory for each location is displayed on the Inventory page in your Shopify admin, in the inventory bulk editor, inventory CSV files, and on each product's details page.

Before you can manage inventory across multiple locations, you need to set up your locations in Shopify. Learn more about setting up and managing your locations.

Assigning inventory to locations

When you have inventory at multiple locations, you decide which locations have which products and how much inventory each location holds. This decision can depend on factors such as customer proximity, fulfillment speed, shipping costs, and inventory capacity at each location.

When you create a product, it's automatically assigned to all your locations with a starting quantity of 0. You can then choose which locations should fulfill orders for the product, and set inventory levels for each location. For a product to be sellable, it must be active at a minimum of 1 location.

Inventory quantities can be tracked and adjusted at any location, regardless of whether the product is active for fulfillment at that location. A product is only sellable and fulfillable from locations where it's active. You can activate or deactivate a product at a location at any time without affecting its inventory quantities.

This gives you flexibility for the following:

  • Stock popular products at all locations for faster fulfillment
  • Keep specialty items at specific locations
  • Distribute inventory based on regional demand
  • Reserve stock at locations for in-store sales only

You can't unstock a product from a location that has unfulfilled orders or active inventory transfers for that product.

To assign or update inventory for multiple products in bulk, you can use the bulk editor to update up to 50 products at a time, or use a CSV file to import inventory for large catalogs with more than 100 products. Learn more about adjusting inventory quantities.

Example: Distributing inventory across locations

Your store has two locations: a US warehouse in Los Angeles and a Canada store in Toronto. You stock 100 bars of lavender soap in the US warehouse and 50 bars in your Canada store. When customers place orders, Shopify uses your order routing configuration to determine which location fulfills each order. US customers receive inventory from Los Angeles, and Canadian customers from Toronto. You can view and adjust quantities for each location separately.

Using fulfillment apps alongside your locations

All fulfillment apps and services support managing inventory for the same product at both your store locations and the fulfillment app simultaneously. This means you can stock some of a product's inventory at your own locations and the fulfillment app manages the remainder.

For example, you might stock 50 units of a T-shirt at your warehouse and a print-on-demand app manages additional inventory. When orders come in, they can be fulfilled from either your warehouse or the fulfillment app.

This capability works with all types of fulfillment services:

  • Dropshipping apps
  • Third-party logistics (3PL) services
  • Custom fulfillment services
  • Print-on-demand services

When you stock inventory at both your own locations and a fulfillment service:

  • Each location maintains its own inventory count
  • Orders are automatically assigned to locations based on your order routing configuration
  • You can transfer inventory between locations when needed
  • All inventory is displayed on your product details pages

Example of managing inventory from multiple locations and fulfillment apps

Your store uses a print-on-demand fulfillment service for custom T-shirts, but you also keep blank T-shirts in your own warehouse for local events.

Setup:

  • Print-on-demand service location: Manages printed T-shirt designs
  • Your warehouse location: 100 blank T-shirts

Result:

  • Online orders for printed designs are automatically sent to the print-on-demand service
  • You can fulfill rush orders or local event orders from your warehouse inventory

This flexibility lets you maintain control and leverage fulfillment services where they make sense for your business.

Common scenarios of managing inventory with multiple locations and apps

Review the following scenarios to learn how to manage inventory for multiple locations and fulfillment services. Each scenario includes the situation, the expected result, and step-by-step instructions.

Scenario 1: Keep backup inventory at multiple locations

  • Scenario: You want to keep some inventory at your warehouse and some at your fulfillment service for the same product.
  • Result: You can stock 100 units at your warehouse and your fulfillment service manages 500 units. You have backup inventory for urgent orders and your fulfillment service stays stocked for regular orders.

Steps:

  1. From your Shopify admin, go to Products.

  2. Click the product that you want to manage.

  3. In the Inventory section, click Edit locations.

  4. Select both your warehouse location and your fulfillment service location.

  5. Set the quantity that you want to stock at each location.

  6. Click Done, and then click Save.

Scenario 2: Fulfill urgent orders from your own inventory

  • Scenario: A customer needs their order urgently, but your fulfillment service has a 2 to 3 days processing time. You have the product in stock at your retail location.
  • Result: You can change the order location to your retail location and fulfill it yourself. The fulfillment service never receives a fulfillment request for this order.

Learn more about manually fulfilling orders assigned to fulfillment services.

Scenario 3: Handle inventory sync issues

  • Scenario: Your fulfillment service didn't sync an order properly and you need to mark it as fulfilled manually.
  • Result: You prevent duplicate shipments, keep your inventory accurate, and maintain complete order history in your Shopify admin.

Steps:

  1. Contact your fulfillment service to confirm they've shipped the order.
  2. From your Shopify admin, go to Orders, and then click the order that you want to manage.
  3. Click > Change location.
  4. Select a location that you control.
  5. Mark the order as fulfilled from that location.
  6. Contact your fulfillment service about the sync issue.

Scenario 4: Reassign products from fulfillment service to your own locations

  • Scenario: You created products that were automatically assigned to a fulfillment service location, but you want to fulfill them yourself.
  • Result: You change which locations stock the product. Your products are stocked at your own locations instead of the fulfillment service.

Steps:

  1. From your Shopify admin, go to Products.

  2. Click the product that you want to manage.

  3. In the Inventory section, click Edit locations.

  4. Deselect the fulfillment service location.

  5. Select your own location or locations.

  6. Click Done, and then click Save.