By default, all products in an order ship to the same address - whichever address is currently set as the default shipping address on the customer's account. Store owners can change this however, to allow customers to ship to multiple addresses. This is especially popular around the holidays, for gift shopping.
Enabling Multiship
To enable this feature, simply set the AllowMultipleShippingAddressPerOrderSetting to Yes, and set the MultiShipMaxItemsAllowedSetting to the highest number of addresses you want to allow customers to ship to.
Each address represents another call to the shipping carrier API if you are using realtime shipping. Page load times can become very slow for customers with large orders. Also, please note that if you are using a free shipping threshold, the threshold is calculated per address on multiship orders.
Using Multiship
If Multiship orders are enabled, customers will see the following text on Step 2 of checkout:
This will only appear if customers have more than one item in their cart.
When a shopper clicks the click here link, they will be sent to this page. For each product in the cart they can choose from existing addresses on record in the dropdown menu, or click Add New Address to create a new address for each item if necessary.
After choosing the shipping address, shoppers will click Continue Checkout and arrive at the page pictured below. Each package will display the shipping methods and rates that apply to it based on the package size, weight, and destination. Shoppers can choose different methods for each package, then click Continue Checkout again to go to step 3 (Payment) of checkout. The prices for shipping for all of their packages will be combined into one line item on the payment page.