Find the answer to your question
I've been using the ShippingServiceSelected.ShippingServiceCost returned in GetOrder to determine an order's Shipping cost.
This has been working fine but one of my customers is reporting a number of orders where the ShippingServiceSelected is being not returned .
When the ShippingService specified in each individual item of the Order is different as below, the Seller provided ShippingService value for the order will not be returned/displayed in the buyer's Payment page.
ItemId ShippingService (specified in the AddItem call )
At the time the buyer entered Payment page to do combined payment for the items purchased from the same seller, the buyer will see:
1. None of the shipping cost and shipping service that the seller defined for the individual item is displayed in the Payment page.
2. A text box is provided for the buyer to enter shipping cost.
3. The buyer click on Continue button.
An order is then created, the Shipping Cost the buyer entered is recorded in the ShippingServiceOptions.ShippingService.ShippingServiceCost property.
To determine an Order's Shipping Cost from the GetOder call, you should check :
1. If the value of the CreatingUserRole property equals to 'Buyer'
2. If the ShippingServiceSelected container is not returned, check if the values of the ShippingDetails.ShippingOption.ShippingService are the same for all the items in the Order. You can make GetItemTransaction to retrieve the data.
3. If the values of the ShippingDetails.ShippingOption.ShippingService are not the same, the shipping cost is the value returned in the ShippingServiceOptions.ShippingService.ShippingServiceCost property.