public CreateShipmentResponse CreateInboundShipment(CreateShipmentRequest createShipmentRequest)
        {
            Address shipsFromAddress = AddressUtility.GetShipFromAddress();

            CreateShipmentResponse createShipmentResponse = null;

            List <InboundShipmentPlanRequestItem> shipmentPlanRequestItems = createShipmentRequest
                                                                             .ShipmentItems
                                                                             .Select(s =>
                                                                                     new InboundShipmentPlanRequestItem
            {
                ASIN           = s.Asin,
                SellerSKU      = s.Sku,
                Quantity       = s.Quantity,
                Condition      = ItemCondition.NewItem.ToString(),
                QuantityInCase = s.QuantityInCase ?? 0
            })
                                                                             .ToList();

            InboundShipmentPlanRequestItemList inboundShipmentPlanRequestItemList = new InboundShipmentPlanRequestItemList
            {
                member = shipmentPlanRequestItems
            };

            CreateInboundShipmentPlanRequest createInboundShipmentPlanRequest = new CreateInboundShipmentPlanRequest
            {
                InboundShipmentPlanRequestItems = inboundShipmentPlanRequestItemList,
                Marketplace     = m_marketPlaceId,
                SellerId        = m_sellerId,
                ShipFromAddress = shipsFromAddress
            };

            CreateInboundShipmentPlanResponse createInboundShipmentPlanResponse = m_fbaInboundServiceMwsClient.CreateInboundShipmentPlan(createInboundShipmentPlanRequest);

            CreateInboundShipmentPlanResult createInboundShipmentPlanResult = createInboundShipmentPlanResponse.CreateInboundShipmentPlanResult;

            if (createInboundShipmentPlanResult.InboundShipmentPlans.member.Any())
            {
                List <InboundShipmentPlan> inboundShipmentPlans = createInboundShipmentPlanResult
                                                                  .InboundShipmentPlans
                                                                  .member
                                                                  .ToList();

                Dictionary <string, ShipmentItem> itemsToBeAddedToShipment = createShipmentRequest
                                                                             .ShipmentItems.ToDictionary(k => k.Sku, v => v);

                DateTime today = DateTime.UtcNow.Date;

                List <CreatedShipment> createdShipments = inboundShipmentPlans
                                                          .Select(inboundShipmentPlan => CreateShipment(inboundShipmentPlan, itemsToBeAddedToShipment, shipsFromAddress, createShipmentRequest.ShipmentName, createShipmentRequest.AreCasesRequired, today))
                                                          .ToList();

                createShipmentResponse = new CreateShipmentResponse(createdShipments);
            }

            return(createShipmentResponse);
        }