Editing the delivery method
The Edit delivery method page has three tabs, one for each delivery method,
along with the details. if AllowCashAndCarryLines is not set to true, only two
options are available, namely Pick up and Ship.
The getItemAvailabilityForStore API is called to retrieve the product
availability for all three delivery methods. If the product is not available for a delivery method a
message is displayed in that specific delivery method tab and the OK button
is disabled.
If the getItemAvailabilityForStore API fails to retrieve the availability
details, an appropriate message is displayed without the tabs, and a retry link is displayed. The
delivery method that was initially set on the order line is the active tab that is displayed.
Selecting the delivery method
- In store or Carry
The
getItemAvailabilityForStoreAPI is called to retrieve the product availability in the current store. If the product is not available, an appropriate message is displayed. The available stock number is not displayed. - Ship
The
getItemAvailabilityForStoreAPI is called to retrieve the product availability across all stores with the earliest shipping date.You can change the delivery method by clicking Edit delivery method from the View cart page. You can enter an address in the Ship tab and on saving, the address is saved for the order.
You have the option to select another shipping address if
BillToIdis available for the order. ThegetCompleteCustomerDetailsmashup call is made to get the customer address. You can also add a new address in the address selection page. If you select the option to add a new address, the address capture form is displayed.If the delivery method is Ship, you must enter a shipping address if a shipping address is not associated with the order. When the delivery method is Ship, the current region is not considered for product availability.
- Pick upIf a product is not available in the current store, a store associate can select a nearby store or a store of the customer's choice from where the products can be picked up. From the Product details page, the store associate can view alternate stores if the pick up fulfillment method is available for the product. The logic that is applied is as follows:
- If the IsPickupAllowed attribute is Y for a product and the output of the getAlternateStoreAvailability API shows Available to Pickup, then the store associate can choose to view the alternate stores. The Pickup at other stores window has two tabs, Nearby stores and Search stores.
- In the Nearby stores tab, stores within a given radius are displayed. The radius can be adjusted by the store associate as required.
- In the Search stores tab, the store associate enters the state, city, or postal code, and then selects the radius to refine the search for stores with the given parameters.
- In the Pickup at other stores window, the stores are listed based on two
rules:
Distance radius to consider when searching for storesStandard search fulfillment type - The maximum radius that can be set by using the slider is based on the value set for the Maximum distance radius to consider when searching for stores rule.
- The Distance UOM To Consider When Searching For Stores rule is used to get the UOM for the distance or the radius considered to fetch alternate stores.
- The getSurroundingNodeList API is called to retrieve a set of stores. The output of the API is passed to the getAlternateStoreAvailability API to get the availability information for the product at each store.
- If the store associate searches for nearby stores, the address of the current store is passed as the ShipToAddress attribute in the getSurroundingNodeList API.
- After the store associate selects the store for pickup, the information is updated on the Product details page.
Note: Region-based availability search is not supported.
Confirming the delivery method
- In store or Carry
The
modifyFulfillmentOptionsAPI is called to change theDeliveryMethodattribute toCARRYandShipNodeattribute to the current store. - Ship
If the order does not have a shipping address, the
modifyFulfillmentOptionsAPI is called to add the shipping address to the order and theCarrierServiceCodeattribute is changed based on the selected carrier service option, if applicable. - Pick up
The
modifyFulfillmentOptionsAPI is called to change theDeliveryMethodattribute toPICKandShipNodeattribute to the selected store.
Changing the delivery method
When you change the delivery method of serialized product with serial number information, the
serial number is passed as empty in the modifyFulfillmentOptions API input to
remove the serial.
When you change the delivery method from Pick to Ship, the ShipNode is passed as
empty to remove it.