Shopify Plus: shipping and in-store pickup in one order
Shopify Plus introduces the ability to combine home delivery and in-store pickup within a single order. Integrations that assume one delivery method per order need to be updated right away.
What changes with Ship and Pickup in One Order
Until now, Shopify Plus customers who wanted to receive some items at home and pick up others in-store had to complete two separate checkouts and generate two distinct orders. With the feature preview Ship and Pickup in One Order, this limitation is removed.
The impact on user experience is immediate: one cart, one checkout, one order. For backend integrations, however, the implications run deeper and call for a prompt technical audit.
What changes at the API level
This update doesn't introduce new API fields or break the existing schema. However, fields that already existed can now return data in combinations that weren't previously possible.
The key point is the structure of the fulfillment order within a single order:
- An order can now contain multiple fulfillment orders with different delivery methods:
SHIPPINGandPICK_UPcan coexist within the same order object. - Checkout can expose multiple
deliveryGroups, one for each delivery method the customer selects.
This combination was technically impossible before the feature preview. Any integration written under the assumption that each order has a single delivery method will now produce silent errors or incorrect routing.
The real risk for ERP and OMS systems
The most critical scenario involves ERP and OMS systems that receive orders from Shopify via webhook or API polling.
If the system doesn't read the delivery_method field on each fulfillment order, but instead relies on the method from the first one or infers it from the parent order, the result can be:
- Incorrect warehouse routing: all items get sent for shipping, including those intended for in-store pickup.
- Missed store notifications: the store never receives instructions to prepare items for pickup.
- Double picking: in some configurations, items already reserved for pickup also get processed for shipping.
These errors are especially tricky because they don't trigger obvious exceptions: the flow appears to work, but the data is routed incorrectly.
How to structure the technical audit
1. Enable the feature preview
Create a Shopify Plus dev store and enable the "Ship and pickup" feature preview from the developer settings. Without this activation, the mixed-delivery behavior cannot be replicated in a test environment.
2. Generate a mixed test order
Complete an order containing at least one item for home delivery and at least one for in-store pickup. Check the JSON structure returned by the Orders API and by webhooks.
3. Verify that delivery_method is read correctly
Make sure every component of the integration — Shopify app, ERP connector, OMS logic — reads delivery_method on every fulfillment order, not just the first one or the parent order.
4. Audit logic built around deliveryGroups
Any code that assumes order.deliveryGroups.length === 1 needs to be reviewed. With mixed orders, the number of delivery groups can be greater than one.
5. Communicate behavior changes to merchants
If the integration exposes features to merchants — order dashboards, notifications, reports — verify that the interface correctly handles the display of multiple delivery methods, and proactively communicate any changes.
Why act now, not after the rollout
The feature is currently in preview, meaning the testing window is open before this behavior becomes the default for all Plus merchants. Waiting for the full rollout means discovering problems in production, with real orders and real customers already affected.
Integrations that manage checkout, OMS, or fulfillment on Shopify Plus should treat this audit as a priority, not something to postpone.
For details on plans and development services available for this kind of work, check out the Shopify developer plans and pricing page.
Summary of immediate actions
- Open a Plus dev store with the feature preview enabled
- Test an order combining shipping and pickup items
- Verify that
delivery_methodis read on every fulfillment order - Remove any assumption of a single
deliveryGroupper order - Update internal documentation and notify affected merchants
FAQ