<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="https://www3.westerncarriers.com/Webservices" xmlns:s1="http://www.westerncarriers.com/ups" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="https://www3.westerncarriers.com/Webservices" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">A web service that provides real time access to inventory data for Western Carriers customers. Read &lt;a href="docs/wcservice-api.html"&gt;Documentation here.&lt;/a&gt;</wsdl:documentation>
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="https://www3.westerncarriers.com/Webservices">
      <s:import namespace="http://www.westerncarriers.com/ups" />
      <s:element name="checkOrderStatus">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrders" type="tns:ArrayOfOrder" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfOrder">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Order" nillable="true" type="tns:Order" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Order">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ActualShipDate" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Carrier" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Destination" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="EnteredDate" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RequestedShipDate" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="OrderNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="State" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Status" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="TotalBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="TotalCases" type="s:int" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="OrderHeader">
        <s:complexContent mixed="false">
          <s:extension base="tns:Order">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Comments1" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Comments2" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="EnteredBy" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Name2" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="PONumber" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="PrepaidCollect" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Street" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="To" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Zip" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="checkOrderStatusResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="checkOrderStatusResult" type="tns:ArrayOfOrder" />
            <s:element minOccurs="0" maxOccurs="1" name="pOrders" type="tns:ArrayOfOrder" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SecurityHeader" type="tns:SecurityHeader" />
      <s:complexType name="SecurityHeader">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="AuthenticationKey" type="s:string" />
        </s:sequence>
        <s:anyAttribute />
      </s:complexType>
      <s:element name="getInventory">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="asOfDate" type="s:dateTime" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getInventoryResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getInventoryResult" type="tns:ArrayOfInventoryItem" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfInventoryItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="InventoryItem" nillable="true" type="tns:InventoryItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="InventoryItem">
        <s:complexContent mixed="false">
          <s:extension base="tns:Product">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Bottles" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Cases" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Weight" type="s:int" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Product">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="BottlesPerCase" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="CodeNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="IsChill" type="s:boolean" />
          <s:element minOccurs="1" maxOccurs="1" name="IsPOS" type="s:boolean" />
          <s:element minOccurs="1" maxOccurs="1" name="IsSuspended" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="Size" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Vintage" type="s:long" />
          <s:element minOccurs="1" maxOccurs="1" name="IsLot" type="s:boolean" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Product2">
        <s:complexContent mixed="false">
          <s:extension base="tns:Product">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Cases" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Bottles" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="Brand" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="BottleSizeInt" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="CustomerNumber" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="WeightPerCase" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="DateAdd" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Block" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Tier" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="BottleLabeling" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="ProductSource" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="CasesPerTier" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="CasesPerPallet" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="CaseHeightIn" type="s:decimal" />
              <s:element minOccurs="1" maxOccurs="1" name="TiersPerPallet" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="ProductType" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="ProductTypeWW" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="BottleNote" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="UserAdd" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="ProductCategory" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="LabelType" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Lot" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="TaxCode" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Batch" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="BatchNumber" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="SSCC" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="ScanBatch" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="SCCCode" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="PONumber" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="ShelfLifeInDays" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="UPCCase" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="UPCBottle" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="UPCOther" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="LayerPick" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="BaseItem" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="GroupCode" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="HighValue" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="AlcoholPercentage" type="s:decimal" />
              <s:element minOccurs="1" maxOccurs="1" name="CansStackableCategory" type="s:int" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="OrderItem">
        <s:complexContent mixed="false">
          <s:extension base="tns:Product">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Bottles" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="Cases" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="TaxStatus" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Lot" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="TransactionType" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="Weight" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="Comment" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="StateCode" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="OrderItem2_0">
        <s:complexContent mixed="false">
          <s:extension base="tns:OrderItem">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="BottlePrice" nillable="true" type="s:decimal" />
              <s:element minOccurs="1" maxOccurs="1" name="CasePrice" nillable="true" type="s:decimal" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="getOpenOrders">
        <s:complexType />
      </s:element>
      <s:element name="getOpenOrdersResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getOpenOrdersResult" type="tns:ArrayOfOrder" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getOrder">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrderNumber" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getOrderResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getOrderResult" type="tns:OrderDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="OrderDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Items" type="tns:ArrayOfOrderItem" />
          <s:element minOccurs="0" maxOccurs="1" name="OrderHeader" type="tns:OrderHeader" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfOrderItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="OrderItem" nillable="true" type="tns:OrderItem" />
        </s:sequence>
      </s:complexType>
      <s:element name="getOrder2_0">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrderNumber" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getOrder2_0Response">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getOrder2_0Result" type="tns:OrderDetail2_0" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="OrderDetail2_0">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Comments" type="tns:BOLComments" />
          <s:element minOccurs="0" maxOccurs="1" name="DeliveryStatusInfo" type="tns:RtsDeliveryInfo" />
          <s:element minOccurs="0" maxOccurs="1" name="Items" type="tns:ArrayOfOrderItem" />
          <s:element minOccurs="0" maxOccurs="1" name="MiscCharges" type="tns:ArrayOfInvoiceMiscCharge" />
          <s:element minOccurs="0" maxOccurs="1" name="OrderHeader" type="tns:OrderInfo2_0" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="BOLComments">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="BOLNum" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="EndComments" type="tns:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="HeadComments" type="tns:ArrayOfString" />
          <s:element minOccurs="0" maxOccurs="1" name="lines" type="tns:ArrayOfBolcomdet" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfString">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfBolcomdet">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="bolcomdet" nillable="true" type="tns:bolcomdet" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="bolcomdet">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="line" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="data" type="tns:ArrayOfAnyType" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfAnyType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="anyType" nillable="true" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RtsDeliveryInfo">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ActualArrivalDateAndTime" nillable="true" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="ActualDepartureDateAndTime" nillable="true" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="MinutesDelayed" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="OrderIsDelivered" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="DeliveryStatusText" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RouteId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="_upsItems" type="tns:ArrayOfUPSItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfUPSItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="UPSItem" nillable="true" type="s1:UPSItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfInvoiceMiscCharge">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="InvoiceMiscCharge" nillable="true" type="tns:InvoiceMiscCharge" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="InvoiceMiscCharge">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ChargeAmount" type="s:decimal" />
          <s:element minOccurs="0" maxOccurs="1" name="ChargeDescription" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="OrderInfo2_0">
        <s:complexContent mixed="false">
          <s:extension base="tns:Order2_0">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Date_entered" type="s:dateTime" />
              <s:element minOccurs="1" maxOccurs="1" name="Date_shipped" nillable="true" type="s:dateTime" />
              <s:element minOccurs="0" maxOccurs="1" name="OrderStatus" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="PlannedArrivalTime" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="ActualArrivalTime" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="Order2_0">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Bol_num" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Carrier" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Cod" type="s:boolean" />
          <s:element minOccurs="1" maxOccurs="1" name="Create_invoice" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="Customer_po" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Date_invoice_due" nillable="true" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="Date_ship_requested" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="External_license" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Invoice_form_num" nillable="true" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Payment_terms" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Prepaid_shipping" type="s:boolean" />
          <s:element minOccurs="1" maxOccurs="1" name="Save_order_only" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="Shipto_address1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Shipto_address2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Shipto_address3" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Shipto_city" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Shipto_state" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Shipto_zip" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Soldto_address1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Soldto_address2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Soldto_address3" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Soldto_city" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Soldto_state" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Soldto_zip" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Special_instructions" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Special_instructions2" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Total_invoice_amount" nillable="true" type="s:decimal" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ShippingContainer">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="mLineItems" type="tns:ArrayOfProduct2" />
          <s:element minOccurs="0" maxOccurs="1" name="ContainerNumber" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="ArrivalDate" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="ReceivingWH" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ReceivingWHdesc" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PONumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Status" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="OceanBOL" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BrokersRef" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BrokersName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Vessel" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="TaxStatus" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BondNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RMA" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CustomerDefined" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="AdviceNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Carrier" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Comment1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Comment2" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="CustomerNumber" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="DateReceived" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="From" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="LineItems" type="tns:ArrayOfProduct2" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfProduct2">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Product2" nillable="true" type="tns:Product2" />
        </s:sequence>
      </s:complexType>
      <s:element name="getOrder3_0">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrderNumber" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getOrder3_0Response">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getOrder3_0Result" type="tns:OrderDetail2_0" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getOrderComments">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrderNumber" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getOrderCommentsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getOrderCommentsResult" type="tns:BOLComments" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getProductDetail">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pProductCode" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getProductDetailResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getProductDetailResult" type="tns:ProductDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ProductDetail">
        <s:complexContent mixed="false">
          <s:extension base="tns:Product">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="DPBottlesFree" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="DPBottlesInContainer" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="DPCasesFree" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="DPCasesInContainer" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="InBondBottlesFree" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="InBondBottlesInContainer" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="InBondCasesFree" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="InBondCasesInContainer" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="AllocatedBottles" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="AllocatedCases" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="DutyPaidBottles" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="DutyPaidCases" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="InBondBottles" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="InBondCases" type="s:int" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="getProduct2Detail">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pProductCode" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getProduct2DetailResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getProduct2DetailResult" type="tns:Product2Detail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="Product2Detail">
        <s:complexContent mixed="false">
          <s:extension base="tns:Product2">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="brand" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="getShippedOrders">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="pFrom" type="s:dateTime" />
            <s:element minOccurs="1" maxOccurs="1" name="pTo" type="s:dateTime" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getShippedOrdersResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getShippedOrdersResult" type="tns:ArrayOfOrder" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="placeOrder">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrder" type="tns:OrderDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="placeOrderResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="placeOrderResult" type="s:boolean" />
            <s:element minOccurs="0" maxOccurs="1" name="pOrder" type="tns:OrderDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="placeOrder2_0">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrder" type="tns:Order2_0" />
            <s:element minOccurs="0" maxOccurs="1" name="pItems" type="tns:ArrayOfOrderItem2_0" />
            <s:element minOccurs="0" maxOccurs="1" name="pMiscCharges" type="tns:ArrayOfInvoiceMiscCharge" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfOrderItem2_0">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="OrderItem2_0" nillable="true" type="tns:OrderItem2_0" />
        </s:sequence>
      </s:complexType>
      <s:element name="placeOrder2_0Response">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrder" type="tns:Order2_0" />
            <s:element minOccurs="0" maxOccurs="1" name="pItems" type="tns:ArrayOfOrderItem2_0" />
            <s:element minOccurs="0" maxOccurs="1" name="pMiscCharges" type="tns:ArrayOfInvoiceMiscCharge" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetProduct2">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pProductCode" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetProduct2Response">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetProduct2Result" type="tns:Product2" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getBOLDocument">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pOrderNumber" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="BOLDocument">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="FileName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Document" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="MimeType" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="getBOLDocumentResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getBOLDocumentResult" type="tns:BOLDocument" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="addInbound">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pContainer" type="tns:ShippingContainer" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="addInboundResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="addInboundResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getInbound">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="pContainerNumber" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getInboundResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getInboundResult" type="tns:ShippingContainer" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getOpenInbounds">
        <s:complexType />
      </s:element>
      <s:complexType name="ArrayOfShippingContainer">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="ShippingContainer" nillable="true" type="tns:ShippingContainer" />
        </s:sequence>
      </s:complexType>
      <s:element name="getOpenInboundsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getOpenInboundsResult" type="tns:ArrayOfShippingContainer" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetReceivedInbounds">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="pFromDate" type="s:dateTime" />
            <s:element minOccurs="1" maxOccurs="1" name="pToDate" type="s:dateTime" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetReceivedInboundsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetReceivedInboundsResult" type="tns:ArrayOfShippingContainer" />
          </s:sequence>
        </s:complexType>
      </s:element>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://www.westerncarriers.com/ups">
      <s:complexType name="UPSItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="PlannedCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PlannedOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PlannedBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ActualCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ActualOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ActualBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PlannedPickupCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PlannedPickupOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PlannedPickupBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ActualPickupCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ActualPickupOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ActualPickupBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="OverCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="OverOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="OverBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ShortCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ShortOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ShortBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="RefusedCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="RefusedOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="RefusedBottles" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="DamagedCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="DamagedOpenCases" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="DamagedBottles" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="DeliveryReason" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="OverReason" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ShortReason" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="DamagedReason" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PickupReason" type="s:string" />
        </s:sequence>
      </s:complexType>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="checkOrderStatusSoapIn">
    <wsdl:part name="parameters" element="tns:checkOrderStatus" />
  </wsdl:message>
  <wsdl:message name="checkOrderStatusSoapOut">
    <wsdl:part name="parameters" element="tns:checkOrderStatusResponse" />
  </wsdl:message>
  <wsdl:message name="checkOrderStatusSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getInventorySoapIn">
    <wsdl:part name="parameters" element="tns:getInventory" />
  </wsdl:message>
  <wsdl:message name="getInventorySoapOut">
    <wsdl:part name="parameters" element="tns:getInventoryResponse" />
  </wsdl:message>
  <wsdl:message name="getInventorySecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getOpenOrdersSoapIn">
    <wsdl:part name="parameters" element="tns:getOpenOrders" />
  </wsdl:message>
  <wsdl:message name="getOpenOrdersSoapOut">
    <wsdl:part name="parameters" element="tns:getOpenOrdersResponse" />
  </wsdl:message>
  <wsdl:message name="getOpenOrdersSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getOrderSoapIn">
    <wsdl:part name="parameters" element="tns:getOrder" />
  </wsdl:message>
  <wsdl:message name="getOrderSoapOut">
    <wsdl:part name="parameters" element="tns:getOrderResponse" />
  </wsdl:message>
  <wsdl:message name="getOrderSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getOrder2_0SoapIn">
    <wsdl:part name="parameters" element="tns:getOrder2_0" />
  </wsdl:message>
  <wsdl:message name="getOrder2_0SoapOut">
    <wsdl:part name="parameters" element="tns:getOrder2_0Response" />
  </wsdl:message>
  <wsdl:message name="getOrder2_0SecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getOrder3_0SoapIn">
    <wsdl:part name="parameters" element="tns:getOrder3_0" />
  </wsdl:message>
  <wsdl:message name="getOrder3_0SoapOut">
    <wsdl:part name="parameters" element="tns:getOrder3_0Response" />
  </wsdl:message>
  <wsdl:message name="getOrder3_0SecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getOrderCommentsSoapIn">
    <wsdl:part name="parameters" element="tns:getOrderComments" />
  </wsdl:message>
  <wsdl:message name="getOrderCommentsSoapOut">
    <wsdl:part name="parameters" element="tns:getOrderCommentsResponse" />
  </wsdl:message>
  <wsdl:message name="getOrderCommentsSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getProductDetailSoapIn">
    <wsdl:part name="parameters" element="tns:getProductDetail" />
  </wsdl:message>
  <wsdl:message name="getProductDetailSoapOut">
    <wsdl:part name="parameters" element="tns:getProductDetailResponse" />
  </wsdl:message>
  <wsdl:message name="getProductDetailSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getProduct2DetailSoapIn">
    <wsdl:part name="parameters" element="tns:getProduct2Detail" />
  </wsdl:message>
  <wsdl:message name="getProduct2DetailSoapOut">
    <wsdl:part name="parameters" element="tns:getProduct2DetailResponse" />
  </wsdl:message>
  <wsdl:message name="getProduct2DetailSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getShippedOrdersSoapIn">
    <wsdl:part name="parameters" element="tns:getShippedOrders" />
  </wsdl:message>
  <wsdl:message name="getShippedOrdersSoapOut">
    <wsdl:part name="parameters" element="tns:getShippedOrdersResponse" />
  </wsdl:message>
  <wsdl:message name="getShippedOrdersSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="placeOrderSoapIn">
    <wsdl:part name="parameters" element="tns:placeOrder" />
  </wsdl:message>
  <wsdl:message name="placeOrderSoapOut">
    <wsdl:part name="parameters" element="tns:placeOrderResponse" />
  </wsdl:message>
  <wsdl:message name="placeOrderSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="placeOrder2_0SoapIn">
    <wsdl:part name="parameters" element="tns:placeOrder2_0" />
  </wsdl:message>
  <wsdl:message name="placeOrder2_0SoapOut">
    <wsdl:part name="parameters" element="tns:placeOrder2_0Response" />
  </wsdl:message>
  <wsdl:message name="placeOrder2_0SecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="GetProduct2SoapIn">
    <wsdl:part name="parameters" element="tns:GetProduct2" />
  </wsdl:message>
  <wsdl:message name="GetProduct2SoapOut">
    <wsdl:part name="parameters" element="tns:GetProduct2Response" />
  </wsdl:message>
  <wsdl:message name="GetProduct2SecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getBOLDocumentSoapIn">
    <wsdl:part name="parameters" element="tns:getBOLDocument" />
  </wsdl:message>
  <wsdl:message name="getBOLDocumentSoapOut">
    <wsdl:part name="parameters" element="tns:getBOLDocumentResponse" />
  </wsdl:message>
  <wsdl:message name="getBOLDocumentSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="addInboundSoapIn">
    <wsdl:part name="parameters" element="tns:addInbound" />
  </wsdl:message>
  <wsdl:message name="addInboundSoapOut">
    <wsdl:part name="parameters" element="tns:addInboundResponse" />
  </wsdl:message>
  <wsdl:message name="addInboundSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getInboundSoapIn">
    <wsdl:part name="parameters" element="tns:getInbound" />
  </wsdl:message>
  <wsdl:message name="getInboundSoapOut">
    <wsdl:part name="parameters" element="tns:getInboundResponse" />
  </wsdl:message>
  <wsdl:message name="getInboundSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="getOpenInboundsSoapIn">
    <wsdl:part name="parameters" element="tns:getOpenInbounds" />
  </wsdl:message>
  <wsdl:message name="getOpenInboundsSoapOut">
    <wsdl:part name="parameters" element="tns:getOpenInboundsResponse" />
  </wsdl:message>
  <wsdl:message name="getOpenInboundsSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:message name="GetReceivedInboundsSoapIn">
    <wsdl:part name="parameters" element="tns:GetReceivedInbounds" />
  </wsdl:message>
  <wsdl:message name="GetReceivedInboundsSoapOut">
    <wsdl:part name="parameters" element="tns:GetReceivedInboundsResponse" />
  </wsdl:message>
  <wsdl:message name="GetReceivedInboundsSecurityHeader">
    <wsdl:part name="SecurityHeader" element="tns:SecurityHeader" />
  </wsdl:message>
  <wsdl:portType name="WCServiceSoap">
    <wsdl:operation name="checkOrderStatus">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns the status (OPEN,SHIPPED,ON_HOLD) of a list of orders
&lt;br /&gt;Error Codes Returned: BO018, AM002</wsdl:documentation>
      <wsdl:input message="tns:checkOrderStatusSoapIn" />
      <wsdl:output message="tns:checkOrderStatusSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getInventory">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns a list of products with the available number of cases and bottles.
&lt;br /&gt;The list does NOT include products with zero quantity of cases and bottles, therefore, if a product is not in the list, you should assume that you don't have that item in stock.
&lt;br /&gt;Error Codes Returned: G0001, AM002.</wsdl:documentation>
      <wsdl:input message="tns:getInventorySoapIn" />
      <wsdl:output message="tns:getInventorySoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getOpenOrders">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns the list of open orders.
        &lt;br /&gt;Error Codes Returned: G0001, AM001, AM002, AM003</wsdl:documentation>
      <wsdl:input message="tns:getOpenOrdersSoapIn" />
      <wsdl:output message="tns:getOpenOrdersSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getOrder">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns the order details for the provided order number. Version 1 does not include invoice information or BOL comments.
&lt;br /&gt;Error Codes Returned: G0001, AM002</wsdl:documentation>
      <wsdl:input message="tns:getOrderSoapIn" />
      <wsdl:output message="tns:getOrderSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getOrder2_0">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns the order details for the provided order number. Version 2 includes invoice information and BOL comments when applicable.
&lt;br /&gt;Error Codes Returned: G0001, BO018</wsdl:documentation>
      <wsdl:input message="tns:getOrder2_0SoapIn" />
      <wsdl:output message="tns:getOrder2_0SoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getOrder3_0">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns the order details for the provided order number. Version 2 includes invoice information and BOL comments when applicable.
&lt;br /&gt;Error Codes Returned: G0001, BO018</wsdl:documentation>
      <wsdl:input message="tns:getOrder3_0SoapIn" />
      <wsdl:output message="tns:getOrder3_0SoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getOrderComments">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Get the comments for an order to be printed on the BOL.</wsdl:documentation>
      <wsdl:input message="tns:getOrderCommentsSoapIn" />
      <wsdl:output message="tns:getOrderCommentsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getProductDetail">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns information for a product, such as # of duty paid cases and bottles, # of inbond cases and bottles, description, size, etc.</wsdl:documentation>
      <wsdl:input message="tns:getProductDetailSoapIn" />
      <wsdl:output message="tns:getProductDetailSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getProduct2Detail">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns information for a product, such as description, size, etc.</wsdl:documentation>
      <wsdl:input message="tns:getProduct2DetailSoapIn" />
      <wsdl:output message="tns:getProduct2DetailSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getShippedOrders">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns the list of shipped orders for up to a 31 day span in a date range up to a maximum of 6 months in the past. Date is expected in the MM/dd/yy format. &lt;br /&gt;Error Codes Returned: G0001, AM002, BO001</wsdl:documentation>
      <wsdl:input message="tns:getShippedOrdersSoapIn" />
      <wsdl:output message="tns:getShippedOrdersSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="placeOrder">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Places an order provided all the fields in the OrderDetail object are passed properly.&lt;/br&gt;If any of the following conditions is not met, the method will reject the order and throw an exception:&lt;/br&gt;&lt;ul&gt;&lt;li&gt;Comments1 and Comments2 shall not exceed 50 characters each.&lt;/li&gt;&lt;li&gt;Order Number, Carrier, Prepaid or Collect, Ship Date, Ship To and Address line 1 are all &lt;strong&gt;required fields&lt;/strong&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;/br&gt;If any of these fields is missing, the order will be rejected and an exception will be thrown.
&lt;br /&gt;Error Codes Returned: G0001, AM002</wsdl:documentation>
      <wsdl:input message="tns:placeOrderSoapIn" />
      <wsdl:output message="tns:placeOrderSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="placeOrder2_0">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Places an order (BOL or invoiced). This is our version 2 method recommended for any new development projects.
Note: 'Soldto' addresses are an additional field for invoices and will be ignored for non-invoiced orders.</wsdl:documentation>
      <wsdl:input message="tns:placeOrder2_0SoapIn" />
      <wsdl:output message="tns:placeOrder2_0SoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetProduct2">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Gets a Product2_0, with AuthenticationKey, for ContainerLineItem and ShippingContainer workflow.</wsdl:documentation>
      <wsdl:input message="tns:GetProduct2SoapIn" />
      <wsdl:output message="tns:GetProduct2SoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getBOLDocument">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns the BOL document for the given order number.</wsdl:documentation>
      <wsdl:input message="tns:getBOLDocumentSoapIn" />
      <wsdl:output message="tns:getBOLDocumentSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="addInbound">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Adds a new Inbound, with AuthenticationKey, for the ShippingContainer workflow.</wsdl:documentation>
      <wsdl:input message="tns:addInboundSoapIn" />
      <wsdl:output message="tns:addInboundSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getInbound">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Gets a Container using the container number, with AuthenticationKey, for the ShippingContainer workflow.</wsdl:documentation>
      <wsdl:input message="tns:getInboundSoapIn" />
      <wsdl:output message="tns:getInboundSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getOpenInbounds">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Gets a list of all open inbounds using with AuthenticationKey for the customer.</wsdl:documentation>
      <wsdl:input message="tns:getOpenInboundsSoapIn" />
      <wsdl:output message="tns:getOpenInboundsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getReceivedInbounds">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Gets a list of all received inbounds between 2 dates, using with AuthenticationKey for the customer.</wsdl:documentation>
      <wsdl:input name="GetReceivedInbounds" message="tns:GetReceivedInboundsSoapIn" />
      <wsdl:output name="GetReceivedInbounds" message="tns:GetReceivedInboundsSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="WCServiceSoap" type="tns:WCServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="checkOrderStatus">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/checkOrderStatus" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:checkOrderStatusSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getInventory">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getInventory" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getInventorySecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOpenOrders">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getOpenOrders" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getOpenOrdersSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrder">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrder" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getOrderSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrder2_0">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrder2_0" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getOrder2_0SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrder3_0">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrder3_0" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getOrder3_0SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrderComments">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrderComments" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getOrderCommentsSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getProductDetail">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getProductDetail" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getProductDetailSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getProduct2Detail">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getProduct2Detail" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getProduct2DetailSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getShippedOrders">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getShippedOrders" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getShippedOrdersSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="placeOrder">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/placeOrder" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:placeOrderSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="placeOrder2_0">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/placeOrder2_0" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:placeOrder2_0SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetProduct2">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/GetProduct2" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetProduct2SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getBOLDocument">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getBOLDocument" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getBOLDocumentSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="addInbound">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/addInbound" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:addInboundSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getInbound">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getInbound" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getInboundSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOpenInbounds">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/getOpenInbounds" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getOpenInboundsSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getReceivedInbounds">
      <soap:operation soapAction="https://www3.westerncarriers.com/Webservices/GetReceivedInbounds" style="document" />
      <wsdl:input name="GetReceivedInbounds">
        <soap:body use="literal" />
        <soap:header message="tns:GetReceivedInboundsSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output name="GetReceivedInbounds">
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="WCServiceSoap12" type="tns:WCServiceSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="checkOrderStatus">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/checkOrderStatus" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:checkOrderStatusSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getInventory">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getInventory" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getInventorySecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOpenOrders">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getOpenOrders" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getOpenOrdersSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrder">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrder" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getOrderSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrder2_0">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrder2_0" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getOrder2_0SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrder3_0">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrder3_0" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getOrder3_0SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOrderComments">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getOrderComments" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getOrderCommentsSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getProductDetail">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getProductDetail" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getProductDetailSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getProduct2Detail">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getProduct2Detail" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getProduct2DetailSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getShippedOrders">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getShippedOrders" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getShippedOrdersSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="placeOrder">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/placeOrder" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:placeOrderSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="placeOrder2_0">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/placeOrder2_0" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:placeOrder2_0SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetProduct2">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/GetProduct2" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetProduct2SecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getBOLDocument">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getBOLDocument" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getBOLDocumentSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="addInbound">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/addInbound" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:addInboundSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getInbound">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getInbound" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getInboundSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getOpenInbounds">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/getOpenInbounds" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getOpenInboundsSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getReceivedInbounds">
      <soap12:operation soapAction="https://www3.westerncarriers.com/Webservices/GetReceivedInbounds" style="document" />
      <wsdl:input name="GetReceivedInbounds">
        <soap12:body use="literal" />
        <soap12:header message="tns:GetReceivedInboundsSecurityHeader" part="SecurityHeader" use="literal" />
      </wsdl:input>
      <wsdl:output name="GetReceivedInbounds">
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="WCService">
    <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">A web service that provides real time access to inventory data for Western Carriers customers. Read &lt;a href="docs/wcservice-api.html"&gt;Documentation here.&lt;/a&gt;</wsdl:documentation>
    <wsdl:port name="WCServiceSoap" binding="tns:WCServiceSoap">
      <soap:address location="http://webservice.westerncarriers.com/WCService.asmx" />
    </wsdl:port>
    <wsdl:port name="WCServiceSoap12" binding="tns:WCServiceSoap12">
      <soap12:address location="http://webservice.westerncarriers.com/WCService.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>