{"title":"Split an order into several deliveries","slug":"multi-shipping","url":"https://support.storeconnect.com/articles/multi-shipping","url_markdown":"https://support.storeconnect.com/articles/multi-shipping.md","subtitle":null,"summary":"Turn on multi-shipping so a website cart holding items that cannot travel together splits into separate deliveries, each with a separate method. Use it to enable the feature, check whether your store can use it, and explain how items are grouped, what customers see at checkout and in wallets, and where each shipment is recorded.","type":"Help_Documentation","video_url":"","keywords":"multi-shipping, multi shipping, delivery groups, split order, several deliveries, shipping.multi_shipping_enabled, mixed cart, pickup and delivery, click and collect, order fulfillments, deliveries, wallet checkout, apple pay shipping","last_modified":"2026-11-03T23:26:47+0000","body_markdown":"A customer's cart can contain some items for shipping and some items for pickup. To support this situation StoreConnect's multi-shipping feature splits that cart into separate deliveries. The customer chooses a method for each one, pays a single shipping charge covering them all, and the order is created with one shipment per delivery.\n\nThis feature applies to online shopping, and displays a delivery method selector to customers at checkout. The point of sale (POS) handles mixed fulfillment through cart fulfillments.\n\n## Do not use this feature if you sell bundles or subscriptions\n\nIf your store sells bundles or subscriptions, do not turn this on. A bundle or subscription is treated as component items when the order is created, and those components match no delivery, so no shipment can be created for them.\n\n## Turn on multi-shipping\n\nYou need admin access to create store variables.\n\n1.  Open the **Store Variables** list for your store.\n2.  Select **New** and create this variable (`s_c__Store_Variable__c`):\n\n    | Field | Value |\n    |---|---|\n    | **Key** | `shipping.multi_shipping_enabled` |\n    | **Value** | `true` |\n\n3.  Select **Save**.\n\nA cart holding a pickup-only product and a shippable product now shows a method selector for each delivery at the shipping step. A cart whose items all share a delivery option still checks out as a single delivery. To turn multi-shipping off, set the **Value** to `false` or delete the variable.\n\n## How items are grouped\n\nGrouping is automatic and uses the **Shipping Methods** value on each product. Items whose products offer the same set of methods travel together, and each distinct set becomes a separate delivery.\n\nOnly the methods your store can quote at website checkout count toward that set:\n\n- a method served by an active shipping provider, including a custom provider code\n- a method you have set up as a shipping rate\n- pickup.\n\nStoreConnect ignores every other value in a product's **Shipping Methods** picklist when it works out the deliveries. Ignored values include a method that no provider or rate serves, and a method you offer only at the point of sale. Two products that differ only by an ignored method stay in the same delivery.\n\n:::note\nUnused **Shipping Methods** values do not split deliveries. If your catalog has collected old picklist values over time, a leftover method on one product does not put that product in a separate delivery. Customers are not asked to choose shipping twice for the same kind of delivery.\n:::\n\nStoreConnect works out the deliveries before the customer enters an address. A method counts if the store can quote it for any address, so a method set up for one zone counts everywhere. As a result, two products can land in separate deliveries because of a method that has no rate at the customer's address. The worst case is an extra delivery, never a missing choice.\n\nThere is nothing to configure per group and no way to group items by hand in Salesforce. A developer can assign deliveries from the theme instead, as described in the [DeliveryGroup Liquid object reference](delivery-group-liquid-object-reference).\n\n## What the customer sees\n\nAt the shipping step, the customer sees a separate method selector for each delivery. The customer must choose a method for every delivery before continuing.\n\nStoreConnect checks pickup availability for each delivery separately. A delivery of pickup items still offers pickup when other items in the same cart cannot be picked up.\n\nThe cart carries one shipping charge, the sum of every delivery. Promotions, tax and payment work the same way as for a single delivery.\n\nIf the customer changes the cart after choosing, for example by adding an item, editing a quantity or changing the address, the checkout asks them to choose again, because the quoted prices no longer match the cart.\n\n## Apple Pay and Google Pay\n\nA wallet payment sheet can only show a flat list of rates, so a split cart behaves differently there:\n\n- A cart that is not split shows the usual rate list.\n- A split cart where every delivery can be priced automatically shows one combined rate, named `Shipping (N deliveries)` and totaling the cheapest rate for each. When the customer completes the payment, the combined rate is split back into the individual deliveries.\n- A split cart that needs a decision per delivery, such as one with a pickup-only group, is declined in the wallet with a message asking the customer to use the standard checkout.\n\n## After the order is placed\n\nThe order is created with one shipment per delivery, listed in the **Deliveries** section of the order and on the customer's account. Each shipment shows the method for that delivery, for example `Click and Collect: \u003ccollection point\u003e` or `\u003cprovider\u003e: \u003cservice\u003e`, along with tracking and the number of items it covers.\n\nPosted shipments also split by stock location, as they do for any order.\n\n### Where each shipment is going\n\nAn order has one shipping address. When an order is split between pickup and delivery, that one address cannot cover every item. Instead, StoreConnect records the destination of each shipment in the shipping address fields on the shipment (`s_c__Shipment__c`):\n\n- A Click and Collect shipment gets the collection location's address.\n- A delivered shipment gets the shipping address the customer entered at checkout.\n\nEvery shipment also records the **Ship To Contact**, **Ship To Account** and **Shipping Recipient Name** from checkout. Without a named ship-to contact, the recipient is the customer on the order.\n\nTo show the shipment address and recipient on the order confirmation or account pages, use the [fulfillment object](fulfillment-liquid-object-reference) in your theme. For example, `fulfillment.shipping_street` and `fulfillment.shipping_recipient_name`.\n\nStoreConnect fills in **Shipping State Code** and **Shipping Country Code** on the shipment by matching your store's **State** and **Country** records, by code or name. If no record matches, the field stays blank.\n\nWhen order tax is recalculated in Salesforce, each item is taxed at the address of the shipment that contains it, not at the order address. The tax calculation matches on the state code first.\n\nStoreConnect records the same shipping address and recipient details on the single shipment of an order that is not split, whether or not multi-shipping is on. Shipping labels use the address on the order, not the shipment.\n\n## Limits\n\n- **Bundles and subscriptions are not supported.** Do not turn on multi-shipping on a store that sells them. See [Do not use this feature if you sell bundles or subscriptions](#do-not-use-this-feature-if-you-sell-bundles-or-subscriptions).\n- **Free shipping promotions apply to the combined charge**, not to one delivery. A promotion that makes shipping free makes all of it free.\n- **Grouping is by shipping method only.** Items are not grouped by warehouse, supplier or delivery date."}