Shopify Fulfillment in 2026: In-House, 3PL, and App Workflows Compared

Shopify Shut Down Its Own Fulfillment: Here Is What Actually Works Now
Shopify shut down its Fulfillment Network (SFN) in 2023 and sold its logistics operations to Flexport. If you are reading a "Shopify fulfillment" guide that still recommends SFN, close it, that information is two years out of date.
In 2026, Shopify handles the fulfillment workflow (marking orders as fulfilled, generating shipping labels, uploading tracking) but does not physically store, pick, pack, or ship your products. You need a fulfillment strategy that works with Shopify's tools, whether that means doing it yourself, using a 3PL, using Amazon Multi-Channel Fulfillment (MCF), or some combination.
This guide covers each option in operational detail: what Shopify handles natively, how to set up in-house fulfillment, how 3PL integrations actually work, when Amazon MCF makes sense, and how to handle multi-warehouse routing that Shopify's built-in tools cannot do on their own.
What Is Shopify Fulfillment?
Shopify fulfillment is the process of receiving, processing, picking, packing, and shipping orders placed through a Shopify store. Shopify provides native tools for managing fulfillment workflows, including fulfillment locations, shipping label generation through Shopify Shipping, and order status tracking. The actual physical fulfillment is handled by the merchant, their 3PL partner, or a service like Amazon MCF.
The distinction matters because many sellers assume "Shopify fulfillment" means Shopify fulfills their orders. It does not. Shopify is the software layer that coordinates the workflow. You (or your fulfillment partner) are the ones doing the physical work of getting products from a shelf into a customer's hands.
What Shopify Handles Natively (and What It Does Not)
Before choosing a fulfillment strategy, you need to understand the boundary between what Shopify does and does not do. This boundary determines which gaps your fulfillment setup needs to fill.
What Shopify Does
- Fulfillment locations: You can assign inventory to multiple locations and set a fulfillment priority order. Shopify uses this priority to determine which location fulfills an order when multiple locations have stock.
- Shopify Shipping: Discounted carrier rates through USPS, UPS, and DHL. You purchase and print labels directly from the Shopify admin. Discounts range from 40-80% off retail rates depending on your plan tier.
- Partial fulfillment: You can ship items from an order separately as they become available. Shopify tracks each fulfillment independently and sends the customer separate tracking notifications.
- Fulfillment holds: You can pause fulfillment on specific orders for review: fraud checks, address verification, or customer-requested delays. The order stays in an "on hold" state until you release it.
- Fulfillment services API: Third-party fulfillment providers can register through this API to receive orders automatically. When a customer places an order, Shopify sends the fulfillment request directly to the connected 3PL.
- Basic location-based routing: Shopify assigns orders to the fulfillment location that has stock, using a first-match approach based on your location priority list. This works but is not optimized for cost or speed.
What Shopify Does Not Do
- Intelligent order routing: Shopify cannot route orders based on shipping cost, delivery zone, or split-shipment logic. It picks the first location with stock, not the cheapest or fastest option.
- Warehouse management: No bin locations, no pick lists, no barcode scanning, no wave picking. If you need WMS functionality, you need a separate system.
- Multi-warehouse optimization: Shopify does not calculate the cheapest fulfillment path when multiple warehouses could fill an order. It uses location priority, not cost optimization.
- Carrier rate shopping: You get Shopify Shipping rates or you input your own carrier accounts. Shopify does not compare rates across multiple carrier accounts to find the cheapest option for each shipment.
- Automatic 3PL communication: Beyond the Fulfillment Service API, Shopify does not manage the back-and-forth with 3PLs. Inventory reconciliation, exception handling, and SLA monitoring all happen outside Shopify.
- Cross-channel fulfillment: Shopify fulfills Shopify orders. If you also sell on Amazon, eBay, or Walmart, Shopify does not manage fulfillment for those channels. You need an OMS or multi-channel tool to consolidate fulfillment across channels.
Fulfillment Option 1: In-House Fulfillment
In-house fulfillment means you handle every step yourself: receiving inventory, storing it, picking orders, packing them, and shipping. You control the process end to end.
When In-House Makes Sense
In-house fulfillment works well when you are processing under 200 orders per day, operating from a single warehouse location, and you want full control over packaging and branding. If your products require custom kitting, handwritten notes, or quality inspection before shipping, in-house gives you that without paying per-touch fees to a 3PL.
How to Set It Up with Shopify
Start by configuring your warehouse as a fulfillment location in Settings > Locations. This tells Shopify where your inventory lives and enables location-based inventory tracking. If you only have one warehouse, this is straightforward, all inventory is assigned to that location.
Enable Shopify Shipping to access discounted carrier rates. This is the single biggest cost advantage Shopify gives in-house fulfillment operators. Connect your USPS, UPS, and DHL accounts through Shopify to get rates that are significantly below retail pricing.
Build your pick/pack workflow around Shopify's native tools: print packing slips from the Orders page, pick items from your shelves, pack with your branded packaging, then buy and print shipping labels from the order detail screen. For faster processing, batch-print packing slips for multiple orders at once using Shopify's bulk actions.
Install the Shopify mobile app for on-the-go fulfillment management. You can view incoming orders, update fulfillment status, and even purchase shipping labels from your phone, useful for small operations where the same person handles customer service and warehouse tasks.
Cost Structure
Your costs break down into fixed and variable components. Fixed costs include warehouse rent, staff salaries, equipment (shelving, label printers, packing stations), and insurance. Variable costs scale with volume: packaging materials ($0.50-2.00 per order), shipping labels at Shopify's discounted rates, and any consumables like tape and dunnage.
The key advantage: no per-order software fees beyond your Shopify subscription. Every fulfillment app, 3PL, or outsourced service charges per order or per shipment. In-house, your marginal cost per order is just materials and the labor time to pick and pack it.
Limitations
Single-location fulfillment means longer delivery times for customers far from your warehouse. If your warehouse is in Dallas and a customer orders from Maine, that package is traveling across 4-5 shipping zones, adding cost and transit time compared to shipping from a Northeast facility.
You also lose the shipping rate economies of scale that 3PLs achieve. A 3PL shipping 50,000 packages a month negotiates carrier rates that a 200-order-per-day operation cannot match. The per-label savings compound significantly at higher volumes.
When to Move Beyond In-House
Consider transitioning when any of these conditions are true: you are consistently processing 200+ orders per day, customers are complaining about delivery speed, you need to expand to multiple warehouse locations to improve transit times, or shipping costs exceed 15% of your revenue. These are signals that the fixed-cost structure of in-house fulfillment is no longer working in your favor.
Fulfillment Option 2: Third-Party Logistics (3PL)
A 3PL handles the physical fulfillment for you: they receive your inventory at their warehouse, store it, and when orders come in from Shopify, they pick, pack, and ship on your behalf. You send them stock. They send your customers packages.
When a 3PL Makes Sense
The 3PL model typically becomes cost-effective at 200+ orders per day, when you need faster delivery speeds nationwide (multiple warehouse locations), or when you want to reallocate time from warehouse operations to marketing, product development, and growth.
How 3PLs Integrate with Shopify
There are four integration methods, ranked from cleanest to most complex:
1. Fulfillment Service API: the cleanest integration. The 3PL registers as a fulfillment service in Shopify. Orders automatically route to the 3PL when they come in. The 3PL fulfills and pushes tracking back to Shopify, which updates the customer. This is the native Shopify approach and requires the least ongoing maintenance. ShipBob, ShipMonk, and Deliverr (now part of Shopify's logistics arm) use this method.
2. App-based integration: the 3PL publishes a Shopify app that syncs orders between Shopify and their WMS. This is more flexible than the Fulfillment Service API and sometimes offers additional features like inventory dashboards and analytics within the Shopify admin. Red Stag and Fulfillment.com use this approach. Setup typically requires installing the app, connecting your Shopify store, mapping SKUs, and configuring shipping preferences.
3. Custom API integration: for larger 3PLs or custom setups where the standard approaches do not fit. Your development team (or the 3PL's) uses Shopify's REST or GraphQL API to pull orders and push fulfillment data. This gives maximum control but requires development resources to build and maintain.
4. EDI integration: enterprise-grade electronic data interchange. Common with larger 3PLs like Radial and Quiet Logistics. EDI is reliable and standardized but requires setup, mapping, and often a middleware layer to translate between Shopify's data format and EDI documents.
3PL Cost Structure
| Fee Type | Typical Range | Notes |
|---|---|---|
| Receiving | $25-50/pallet or $0.25-0.50/unit | Charged when you send inventory to the 3PL |
| Storage | $5-40/pallet/month | Varies by warehouse location and market |
| Pick and pack | $2.50-5.00/order + $0.50-1.00/item | Core fulfillment fee, the main cost driver |
| Shipping | Carrier rates (3PL-negotiated) | Usually 15-30% discount vs retail carrier rates |
| Returns processing | $3.00-5.00/return | Inspection, restock, or disposal |
| Account management | $0-500/month | Some 3PLs charge separately, others bundle it |
How to Choose a 3PL for Shopify
Start with integration quality. Verify the 3PL has a native Shopify integration. Fulfillment Service API is preferred because it is the most reliable and requires the least maintenance. App-based integrations are the next best option. Avoid 3PLs that require you to manually export orders as CSV files or rely solely on email-based order forwarding.
Check geographic coverage. How many warehouse locations does the 3PL operate? A single warehouse in one region means your delivery speeds are no better than in-house for customers in other parts of the country. Two or three strategically placed warehouses (East Coast, West Coast, and Central US) can reach 95% of US addresses within 2-3 day ground shipping.
Understand their SLA. What percentage of orders ship same-day when received before the cutoff time? The industry standard is 99%+ same-day fulfillment for orders received by 2:00 PM local time. Ask for actual performance data, not just the contractual commitment.
Ask about technology. Does the 3PL provide real-time inventory visibility back into Shopify? Can you see current stock levels, inbound shipment status, and lot/expiration data from their dashboard? The best 3PLs push inventory updates to Shopify within minutes of any change: receiving, shipping, adjustments, or returns.
Fulfillment Option 3: Amazon Multi-Channel Fulfillment (MCF)
Amazon MCF lets you use Amazon's FBA infrastructure to fulfill orders from your Shopify store and other non-Amazon channels. You store inventory in Amazon's warehouses using the same FBA inbound process, and when a Shopify order comes in, Amazon picks, packs, and ships it using their logistics network.
How MCF Works with Shopify
The setup requires a Shopify app that bridges your store to Amazon's MCF API. Amazon MCF by ByteStand is the most widely used option. Once installed, the app automatically forwards eligible Shopify orders to Amazon for fulfillment. Amazon ships the order, and tracking information is pushed back to Shopify so the customer receives standard shipping notifications.
You choose a delivery speed for each order: Standard (3-5 business days), Expedited (2 business days), or Priority (1 business day). Faster speeds cost more, but Amazon's logistics network can hit these targets reliably across the continental US.
MCF Pricing
MCF fees are approximately the same as FBA fulfillment fees plus a small premium for non-Amazon channel orders. Standard delivery typically adds $0.50-1.00 per unit above regular FBA fees. The exact pricing depends on product size, weight, and delivery speed selected. For a standard small item (under 1 lb), expect to pay $4-6 per unit for Standard delivery and $6-9 per unit for Priority delivery.
The Tradeoffs
What works in your favor: You get access to Amazon's logistics network, the same infrastructure that delivers to 150+ million Prime members. If you already sell on Amazon and maintain FBA inventory, MCF lets you fulfill Shopify orders from that same stock without sending separate inventory to a different warehouse. One inventory pool serving two (or more) channels.
The packaging problem: Amazon ships MCF orders in Amazon-branded boxes. Your Shopify customer, who bought from your branded store, receives a package that says "Amazon" on it. This creates confusion ("Did I order this from Amazon?") and undermines your brand identity. Amazon now offers unbranded packaging as an MCF option, which removes the Amazon logo, but you still cannot ship in your own branded boxes with custom inserts. For brands where the unboxing experience is part of the value proposition, this is a dealbreaker.
The returns problem: MCF returns go back to Amazon's fulfillment centers, not to your Shopify return workflow. If a customer initiates a return through your Shopify store, you need to coordinate with Amazon separately to process the physical return. This creates a split returns process that is difficult to manage at scale and causes gaps in your return-to-restock cycle.
The cost question: MCF is not cheap. For many products, a dedicated 3PL is more cost-effective unless you are already paying for FBA storage and want to avoid maintaining inventory at two fulfillment networks. Run the numbers with your actual product dimensions and order volume before committing. The math works best for sellers whose primary channel is Amazon and who treat Shopify as a secondary DTC channel.
Multi-Warehouse Fulfillment with Shopify
Once you outgrow a single fulfillment location, whether in-house or through a single 3PL, you face the multi-warehouse routing challenge. Shopify supports multiple fulfillment locations, but its routing logic has significant limitations.
How Shopify's Native Routing Works
Shopify assigns fulfillment to the first location in your priority list that has all items in stock. If no single location has everything in the order, Shopify splits the order and assigns partial fulfillment to multiple locations. This works but produces suboptimal outcomes.
Shopify does not optimize for shipping cost. An order from a customer in Miami might route to your Los Angeles warehouse (priority #1) even though your Atlanta warehouse (priority #3) is four shipping zones closer and would cost $4 less to ship. Shopify picks LA because it is higher on the priority list and has stock, regardless of the cost or transit time implications.
Shopify also does not minimize split shipments. If an order contains three items and your LA warehouse has two of them while your Atlanta warehouse has all three, Shopify may still split the order across both locations rather than shipping everything from Atlanta, because LA is higher priority and has partial stock. Each split shipment doubles your shipping cost for that order.
Where an OMS Fills the Gap
For smarter routing across multiple fulfillment locations, you need an order management system that applies rules Shopify's native tools do not support:
- Zone-based routing: Automatically route orders to the warehouse closest to the customer's zip code, cutting transit time and shipping cost simultaneously.
- Cost-optimized routing: Factor in carrier rates from each location and choose the cheapest fulfillment path for every order. A 5-zone shipment from warehouse A versus a 2-zone shipment from warehouse B, the OMS picks the cheaper option automatically.
- Split shipment minimization: Prioritize fulfilling the entire order from one location to avoid paying for two separate shipments. Only split when no single location can fill the complete order.
- Channel-agnostic routing: Route orders from Shopify, Amazon, eBay, and Walmart through the same routing logic, pulling from the same inventory pool.
This is where an order management system like Nventory adds value. Nventory sits between your sales channels and your fulfillment locations, applying routing rules that Shopify's native tools do not support. For sellers fulfilling from 2+ warehouses or selling on 2+ channels, the routing intelligence pays for itself in reduced shipping costs.
Building Your Shopify Fulfillment Stack
Your fulfillment setup should match your current scale and leave room to grow without a complete rebuild. Here is how the stack evolves at each stage.
| Stage | Orders/Day | Fulfillment Setup | Tools Needed |
|---|---|---|---|
| Starter | 1-50 | In-house, single location | Shopify Shipping + thermal label printer |
| Growing | 50-200 | In-house or single 3PL | Shopify Shipping + basic OMS for order routing |
| Scaling | 200-1,000 | 3PL + potentially Amazon MCF | OMS with intelligent routing + 3PL integration |
| Enterprise | 1,000+ | Multi-3PL + own warehouse | Full OMS + WMS integration + carrier rate shopping |
Starter Stage: 1-50 Orders Per Day
Keep it simple. Fulfill from a single location using Shopify Shipping for discounted labels. Your only required equipment is a thermal label printer and packing supplies. Do not invest in a 3PL or OMS at this stage, the per-order fees will eat into margins that are better spent on growth. Focus on building a repeatable pick/pack process that you can eventually hand off to a team member or 3PL.
Growing Stage: 50-200 Orders Per Day
This is the transition zone. In-house fulfillment still works if you have the space and staff, but you should be evaluating 3PLs and getting quotes. If you are spending more than 30% of your working hours on fulfillment operations, you have crossed the point where outsourcing creates more value than it costs. A basic OMS becomes useful here for routing orders and managing inventory across Shopify and any other sales channels you have added.
Scaling Stage: 200-1,000 Orders Per Day
At this volume, most sellers are either using a 3PL or running a dedicated warehouse team. The operational complexity demands systems: an OMS for order routing and inventory management, a 3PL integration for automated fulfillment, and potentially Amazon MCF as a supplementary fulfillment path for sellers who also sell on Amazon. Multi-warehouse routing becomes critical: the difference between optimized and unoptimized routing at 500 orders per day can be $2,000-5,000 per month in avoidable shipping costs.
Enterprise Stage: 1,000+ Orders Per Day
At enterprise volume, you are likely running a hybrid model: your own warehouse for high-touch items or custom kitting, one or two 3PLs for standard fulfillment across different regions, and potentially Amazon MCF for Amazon-overlap inventory. A full OMS with WMS integration, carrier rate shopping, and real-time inventory synchronization across all nodes is not optional, it is the cost of operating at scale without hemorrhaging money on inefficient routing and split shipments.
Related Resources
For a detailed comparison of in-house vs 3PL fulfillment economics, see our guide: 3PL vs In-House Fulfillment for Multichannel Sellers.
For Shopify-specific inventory management best practices, read Shopify Inventory Sync Best Practices.
Choosing the Right Fulfillment Path
The fulfillment decision is not permanent. Most successful Shopify sellers start in-house, move to a 3PL as they scale, and eventually run a hybrid model that combines their own operations with outsourced fulfillment across multiple locations. The transition points are driven by order volume, shipping cost efficiency, and how much operational bandwidth you can afford to dedicate to fulfillment versus growth.
What matters is matching your current setup to the tools and partnerships that minimize cost and delivery time at your specific scale. A startup with 30 orders a day does not need a multi-3PL routing engine. A brand shipping 800 orders a day from a single warehouse is leaving money on the table by not using zone-based routing across distributed fulfillment locations.
Start with what works today, plan for the next transition, and build your stack so the upgrade path does not require ripping everything out and starting over.
Frequently Asked Questions
Not directly. Shopify shut down its Fulfillment Network (SFN) in 2023 and sold the logistics operations to Flexport. In 2026, Shopify provides fulfillment tools (label printing, location management, carrier rate discounts through Shopify Shipping) but does not physically store or ship products. You need to fulfill in-house, use a 3PL, or use Amazon MCF.
Shopify launched SFN in 2019 as its own fulfillment service, then shut it down in May 2023. Shopify sold its logistics operations (including the 6 River Systems acquisition and Deliverr) to Flexport. Shopify took a minority equity stake in Flexport as part of the deal. Flexport now offers fulfillment services that integrate with Shopify, but it is a separate company.
The best integration method is through Shopify's Fulfillment Service API, which allows 3PLs to register as a fulfillment location in your Shopify admin. Orders are automatically routed to the 3PL, and fulfillment status and tracking are pushed back to Shopify. Most major 3PLs (ShipBob, ShipMonk, Red Stag) also offer Shopify apps for easier setup.
Yes, through Amazon Multi-Channel Fulfillment (MCF). You store inventory in Amazon's FBA warehouses and use a Shopify app to send non-Amazon orders to Amazon for fulfillment. The main drawback is that Amazon ships in Amazon-branded packaging, which can confuse customers who ordered from your Shopify store.
Shopify Shipping provides discounted carrier rates through USPS, UPS, and DHL. Discounts range from 40-80% off retail rates depending on your Shopify plan tier. Advanced and Shopify Plus plans get the deepest discounts. You pay per label based on package weight, dimensions, and destination, there is no monthly fee beyond your Shopify subscription.
For sellers also selling on Amazon, eBay, or other marketplaces, centralized fulfillment through an OMS is the most efficient approach. An OMS like Nventory pools inventory across all channels and routes each order to the optimal fulfillment location based on cost, speed, and stock availability. This prevents overselling across channels and reduces shipping costs through intelligent routing.