<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx" xmlns:s1="http://microsoft.com/wsdl/types/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx">
      <s:import namespace="http://microsoft.com/wsdl/types/" />
      <s:element name="RedeemCoupon">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="couponRedemptionRequest" type="tns:CouponRedemptionRequest" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="CouponRedemptionRequest">
        <s:complexContent mixed="false">
          <s:extension base="tns:BusinessEntityBaseOfCouponRedemptionRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="AccountId" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="CouponId" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="CSRID" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="CSRLocation" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="CSRRole" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="CSRFirstName" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="CSRLastName" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="CSROverrideFlag" type="s1:char" />
              <s:element minOccurs="0" maxOccurs="1" name="CSROverrideReason" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="ChannelType" type="tns:ChannelType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="BusinessEntityBaseOfCouponRedemptionRequest" abstract="true" />
      <s:simpleType name="ChannelType">
        <s:restriction base="s:string">
          <s:enumeration value="CSR" />
          <s:enumeration value="CharterDotCom" />
        </s:restriction>
      </s:simpleType>
      <s:element name="RedeemCouponResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="RedeemCouponResult" type="tns:CouponRedemptionResponse" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="CouponRedemptionResponse">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Result" type="tns:Result" />
          <s:element minOccurs="0" maxOccurs="1" name="CouponRedemptionResult" type="tns:CouponRedemptionResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Result">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ReturnCode" type="tns:ResultReturnCode" />
          <s:element minOccurs="0" maxOccurs="1" name="ReferenceCode" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Type" type="tns:ResultType" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="DateTime" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="Source" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Server" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ExceptionInfo" type="tns:ResultExceptionInfo" />
          <s:element minOccurs="0" maxOccurs="unbounded" name="StatusMessages" type="tns:CsgStatusMessage" />
        </s:sequence>
      </s:complexType>
      <s:simpleType name="ResultReturnCode">
        <s:restriction base="s:string">
          <s:enumeration value="Success" />
          <s:enumeration value="NoDataFound" />
          <s:enumeration value="InvalidXml" />
          <s:enumeration value="BusinessRuleNotMet" />
          <s:enumeration value="Exception" />
          <s:enumeration value="DatabaseError" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="ResultType">
        <s:restriction base="s:string">
          <s:enumeration value="Informational" />
          <s:enumeration value="Error" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="ResultExceptionInfo">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Type" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="StackTrace" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Code" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="CsgStatusMessage">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Code" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="CouponRedemptionResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="AccountId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CouponId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CouponDescription" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRID" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="RedemptionStatus" type="s1:char" />
          <s:element minOccurs="1" maxOccurs="1" name="AdjustmentAmount" type="s:decimal" />
          <s:element minOccurs="1" maxOccurs="1" name="RedemptionDate" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="ConfirmationNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ConfirmationMessage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ValidationFailureMessage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRLocation" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRRole" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRFirstName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRLastName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RedeemedEvents" type="tns:ArrayOfRedeemedEvent" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfRedeemedEvent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="RedeemedEvent" nillable="true" type="tns:RedeemedEvent" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RedeemedEvent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="EventCode" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="EventTitle" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="IsRedeemed" type="s1:char" />
          <s:element minOccurs="1" maxOccurs="1" name="TransactionDate" type="s:dateTime" />
        </s:sequence>
      </s:complexType>
      <s:element name="GiftCardLookup">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="couponRedemptionRequest" type="tns:CouponRedemptionRequest" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GiftCardLookupResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GiftCardLookupResult" type="tns:GiftCardLookupResponse" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GiftCardLookupResponse">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Result" type="tns:Result" />
          <s:element minOccurs="0" maxOccurs="1" name="GiftcardLookupResult" type="tns:GiftCardLookupResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="GiftCardLookupResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="AccountId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CouponId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CouponOrGiftCard" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="RedeemGiftCard">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="giftcardRedemptionrequest" type="tns:GiftCardRedemptionRequest" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GiftCardRedemptionRequest">
        <s:complexContent mixed="false">
          <s:extension base="tns:CouponRedemptionRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="AddressLine1" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="AddressLine2" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="State" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Zipcode" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="RedeemGiftCardResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="RedeemGiftCardResult" type="tns:GiftCardRedemptionResponse" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GiftCardRedemptionResponse">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Result" type="tns:Result" />
          <s:element minOccurs="0" maxOccurs="1" name="GiftcardRedemptionResult" type="tns:GiftCardRedemptionResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="GiftCardRedemptionResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="AccountId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CouponId" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CouponDescription" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRID" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="RedemptionStatus" type="s1:char" />
          <s:element minOccurs="1" maxOccurs="1" name="AdjustmentAmount" type="s:decimal" />
          <s:element minOccurs="1" maxOccurs="1" name="RedemptionDate" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="ConfirmationNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ConfirmationMessage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ValidationFailureMessage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRLocation" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRRole" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRFirstName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CSRLastName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RedeemedEvents" type="tns:ArrayOfRedeemedEvent" />
          <s:element minOccurs="0" maxOccurs="1" name="Address1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Address2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="State" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Zipcode" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetCustomerAddress">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="customerAddressRequest" type="tns:CustomerAddressRequest" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="CustomerAddressRequest">
        <s:complexContent mixed="false">
          <s:extension base="tns:BusinessEntityBaseOfCustomerAddressRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="AccountNumber" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="BusinessEntityBaseOfCustomerAddressRequest" abstract="true" />
      <s:element name="GetCustomerAddressResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetCustomerAddressResult" type="tns:CustomerAddressResponse" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="CustomerAddressResponse">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Result" type="tns:Result" />
          <s:element minOccurs="0" maxOccurs="1" name="CustomerAddressResult" type="tns:CustomerAddressResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="CustomerAddressResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="CustomerAddresses" type="tns:AccountAddresses" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="AccountAddresses">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="AccountNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceAddressLine1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceAddressLine2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceCity" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceState" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ServiceZip" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BillingAddressLine1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BillingAddressLine2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BillingCity" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BillingState" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BillingZip" type="s:string" />
        </s:sequence>
      </s:complexType>
    </s:schema>
    <s:schema elementFormDefault="qualified" targetNamespace="http://microsoft.com/wsdl/types/">
      <s:simpleType name="char">
        <s:restriction base="s:unsignedShort" />
      </s:simpleType>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="RedeemCouponSoapIn">
    <wsdl:part name="parameters" element="tns:RedeemCoupon" />
  </wsdl:message>
  <wsdl:message name="RedeemCouponSoapOut">
    <wsdl:part name="parameters" element="tns:RedeemCouponResponse" />
  </wsdl:message>
  <wsdl:message name="GiftCardLookupSoapIn">
    <wsdl:part name="parameters" element="tns:GiftCardLookup" />
  </wsdl:message>
  <wsdl:message name="GiftCardLookupSoapOut">
    <wsdl:part name="parameters" element="tns:GiftCardLookupResponse" />
  </wsdl:message>
  <wsdl:message name="RedeemGiftCardSoapIn">
    <wsdl:part name="parameters" element="tns:RedeemGiftCard" />
  </wsdl:message>
  <wsdl:message name="RedeemGiftCardSoapOut">
    <wsdl:part name="parameters" element="tns:RedeemGiftCardResponse" />
  </wsdl:message>
  <wsdl:message name="GetCustomerAddressSoapIn">
    <wsdl:part name="parameters" element="tns:GetCustomerAddress" />
  </wsdl:message>
  <wsdl:message name="GetCustomerAddressSoapOut">
    <wsdl:part name="parameters" element="tns:GetCustomerAddressResponse" />
  </wsdl:message>
  <wsdl:portType name="RedemptionServiceSoap">
    <wsdl:operation name="RedeemCoupon">
      <wsdl:input message="tns:RedeemCouponSoapIn" />
      <wsdl:output message="tns:RedeemCouponSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GiftCardLookup">
      <wsdl:input message="tns:GiftCardLookupSoapIn" />
      <wsdl:output message="tns:GiftCardLookupSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="RedeemGiftCard">
      <wsdl:input message="tns:RedeemGiftCardSoapIn" />
      <wsdl:output message="tns:RedeemGiftCardSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetCustomerAddress">
      <wsdl:input message="tns:GetCustomerAddressSoapIn" />
      <wsdl:output message="tns:GetCustomerAddressSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="RedemptionServiceSoap" type="tns:RedemptionServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="RedeemCoupon">
      <soap:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/RedeemCoupon" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GiftCardLookup">
      <soap:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/GiftCardLookup" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="RedeemGiftCard">
      <soap:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/RedeemGiftCard" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetCustomerAddress">
      <soap:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/GetCustomerAddress" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="RedemptionServiceSoap12" type="tns:RedemptionServiceSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="RedeemCoupon">
      <soap12:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/RedeemCoupon" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GiftCardLookup">
      <soap12:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/GiftCardLookup" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="RedeemGiftCard">
      <soap12:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/RedeemGiftCard" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetCustomerAddress">
      <soap12:operation soapAction="http://kstlmcrad01/CouponRedemptionService/RedemptionService.asmx/GetCustomerAddress" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="RedemptionService">
    <wsdl:port name="RedemptionServiceSoap" binding="tns:RedemptionServiceSoap">
      <soap:address location="http://kstlmebs05/Enterprise%20Business%20Services/couponmanagementsystem/RedemptionService.asmx" />
    </wsdl:port>
    <wsdl:port name="RedemptionServiceSoap12" binding="tns:RedemptionServiceSoap12">
      <soap12:address location="http://kstlmebs05/Enterprise%20Business%20Services/couponmanagementsystem/RedemptionService.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>