<?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="https://ws.esortcode.com" 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="https://ws.esortcode.com" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This webservice contains bank sortcode, bank account, branch details and Credit Card Number Validation lookup functions. Before using the eSortcode WebService please visit http://www.eSortcode.com and follow the instructions for signing up with a new account.</wsdl:documentation>
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="https://ws.esortcode.com">
      <s:element name="ServiceTest">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="AccountName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="LicenceID" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="MachineID" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ServiceTestResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ServiceTestResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ValidateAccount">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sSortcode" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sAccountNumber" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sUserName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sGUID" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sIPAddress" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ValidateAccountResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidateAccountResult" type="tns:Validation" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="Validation">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ValidationMessage" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="IsError" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="ErrorMessage" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="ValidateCreditCard">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sCreditCardNumber" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sUserName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sGUID" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sIPAddress" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ValidateCreditCardResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidateCreditCardResult" type="tns:ValidationCC" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ValidationCC">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ValidationMessage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CardType" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="IsError" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="ErrorMessage" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="ValidateAccountGetBranchDetails">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sSortcode" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sAccountNumber" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sUserName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sGUID" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sIPAddress" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ValidateAccountGetBranchDetailsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidateAccountGetBranchDetailsResult" type="tns:BranchDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="BranchDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ValidationMessage" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="IsError" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="ErrorMessage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALSortingCode" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALBIC1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALBIC2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALSubBranchSuffix" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALShortBranchTitle" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALShortNameOwningBank" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALFullNameOwningBankLine1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALFullNameOwningBankLine2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALBankCodeOwningBank" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALNationalCentralBankCountryCode" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALSupervisoryBody" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALDeletedDate" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALDateofLastChange" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GENERALPrintIndicator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSStatus" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSDateofLastChange" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSDateClosedInBACSClearing" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSRedirectionFromFlag" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSRedirectToSortcode" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSSettlementBank" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSSettlementSection" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSSettlementSubSection" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSHandlingBank" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSHandlingBankStream" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSAccountsNumberedFlag" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSDDIVoucherFlag" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedDR" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedCR" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedCU" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedPR" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedBS" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedDV" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedAU" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedSpare1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedSpare2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSTransactionsDisallowedSpare3" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BACSSpare1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSSTERLINGReturnIndicator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSSTERLINGStatus" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSSTERLINGEffectiveDateOfLastChange" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSSTERLINGDateClosed" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSSTERLINGSettlementMember" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSSTERLINGRoutingBICField1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSSTERLINGRoutingBICField2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEUROStatus" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEUROEffectiveDateOfLastChange" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEURODateClosed" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEURORoutingBICField1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEURORoutingBICField2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEUROSettlementMember" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEUROReturnIndicator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEUROSwiftData" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CHAPSEUROSpare1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CCCCStatus" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CCCCeffectiveDateofLastChange" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CCCCDateClosed" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CCCCSettlementBank" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CCCCDebitAgencySortingCode" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CCCCReturnIndicator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CCCCGBNIIndicator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTBranchTypeIndicator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTSortcodeOfMainBranch" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTMajorLocationName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTMinorLocationName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTBranchNameOrPlace" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTSecondEntryIndicator" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTBranchNameForSecondEntry" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTFullBranchTitlePart1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTFullBranchTitlePart2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTFullBranchTitlePart3" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTAddressLine1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTAddressLine2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTAddressLine3" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTAddressLine4" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTTown" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTCounty" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTPostcodeField1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTPostcodeField2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTTelephoneArea" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTTelephoneNumber" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTTelephone2Area" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PRINTTelephone2Number" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="StandardiseAccount">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sSortcode" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sAccountNumber" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sUserName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sGUID" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sIPAddress" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="StandardiseAccountResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="StandardiseAccountResult" type="tns:Standardise" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="Standardise">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ValidationMessage" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="IsError" type="s:boolean" />
          <s:element minOccurs="0" maxOccurs="1" name="ErrorMessage" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="StandardisedSortcode" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="StandardisedAccountNumber" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="BranchDetails">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sSortcode" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sUserName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sGUID" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="sIPAddress" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="BranchDetailsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="BranchDetailsResult" type="tns:BranchDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="string" nillable="true" type="s:string" />
      <s:element name="Validation" nillable="true" type="tns:Validation" />
      <s:element name="ValidationCC" nillable="true" type="tns:ValidationCC" />
      <s:element name="BranchDetail" nillable="true" type="tns:BranchDetail" />
      <s:element name="Standardise" nillable="true" type="tns:Standardise" />
    </s:schema>
  </wsdl:types>
  <wsdl:message name="ServiceTestSoapIn">
    <wsdl:part name="parameters" element="tns:ServiceTest" />
  </wsdl:message>
  <wsdl:message name="ServiceTestSoapOut">
    <wsdl:part name="parameters" element="tns:ServiceTestResponse" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountSoapIn">
    <wsdl:part name="parameters" element="tns:ValidateAccount" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountSoapOut">
    <wsdl:part name="parameters" element="tns:ValidateAccountResponse" />
  </wsdl:message>
  <wsdl:message name="ValidateCreditCardSoapIn">
    <wsdl:part name="parameters" element="tns:ValidateCreditCard" />
  </wsdl:message>
  <wsdl:message name="ValidateCreditCardSoapOut">
    <wsdl:part name="parameters" element="tns:ValidateCreditCardResponse" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountGetBranchDetailsSoapIn">
    <wsdl:part name="parameters" element="tns:ValidateAccountGetBranchDetails" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountGetBranchDetailsSoapOut">
    <wsdl:part name="parameters" element="tns:ValidateAccountGetBranchDetailsResponse" />
  </wsdl:message>
  <wsdl:message name="StandardiseAccountSoapIn">
    <wsdl:part name="parameters" element="tns:StandardiseAccount" />
  </wsdl:message>
  <wsdl:message name="StandardiseAccountSoapOut">
    <wsdl:part name="parameters" element="tns:StandardiseAccountResponse" />
  </wsdl:message>
  <wsdl:message name="BranchDetailsSoapIn">
    <wsdl:part name="parameters" element="tns:BranchDetails" />
  </wsdl:message>
  <wsdl:message name="BranchDetailsSoapOut">
    <wsdl:part name="parameters" element="tns:BranchDetailsResponse" />
  </wsdl:message>
  <wsdl:message name="ServiceTestHttpGetIn">
    <wsdl:part name="AccountName" type="s:string" />
    <wsdl:part name="LicenceID" type="s:string" />
    <wsdl:part name="MachineID" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ServiceTestHttpGetOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountHttpGetIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sAccountNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountHttpGetOut">
    <wsdl:part name="Body" element="tns:Validation" />
  </wsdl:message>
  <wsdl:message name="ValidateCreditCardHttpGetIn">
    <wsdl:part name="sCreditCardNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ValidateCreditCardHttpGetOut">
    <wsdl:part name="Body" element="tns:ValidationCC" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountGetBranchDetailsHttpGetIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sAccountNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountGetBranchDetailsHttpGetOut">
    <wsdl:part name="Body" element="tns:BranchDetail" />
  </wsdl:message>
  <wsdl:message name="StandardiseAccountHttpGetIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sAccountNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="StandardiseAccountHttpGetOut">
    <wsdl:part name="Body" element="tns:Standardise" />
  </wsdl:message>
  <wsdl:message name="BranchDetailsHttpGetIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="BranchDetailsHttpGetOut">
    <wsdl:part name="Body" element="tns:BranchDetail" />
  </wsdl:message>
  <wsdl:message name="ServiceTestHttpPostIn">
    <wsdl:part name="AccountName" type="s:string" />
    <wsdl:part name="LicenceID" type="s:string" />
    <wsdl:part name="MachineID" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ServiceTestHttpPostOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountHttpPostIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sAccountNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountHttpPostOut">
    <wsdl:part name="Body" element="tns:Validation" />
  </wsdl:message>
  <wsdl:message name="ValidateCreditCardHttpPostIn">
    <wsdl:part name="sCreditCardNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ValidateCreditCardHttpPostOut">
    <wsdl:part name="Body" element="tns:ValidationCC" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountGetBranchDetailsHttpPostIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sAccountNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="ValidateAccountGetBranchDetailsHttpPostOut">
    <wsdl:part name="Body" element="tns:BranchDetail" />
  </wsdl:message>
  <wsdl:message name="StandardiseAccountHttpPostIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sAccountNumber" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="StandardiseAccountHttpPostOut">
    <wsdl:part name="Body" element="tns:Standardise" />
  </wsdl:message>
  <wsdl:message name="BranchDetailsHttpPostIn">
    <wsdl:part name="sSortcode" type="s:string" />
    <wsdl:part name="sUserName" type="s:string" />
    <wsdl:part name="sGUID" type="s:string" />
    <wsdl:part name="sIPAddress" type="s:string" />
  </wsdl:message>
  <wsdl:message name="BranchDetailsHttpPostOut">
    <wsdl:part name="Body" element="tns:BranchDetail" />
  </wsdl:message>
  <wsdl:portType name="BankDetailsSoap">
    <wsdl:operation name="ServiceTest">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to test the service and returns the number of Credits Available for the Account.</wsdl:documentation>
      <wsdl:input message="tns:ServiceTestSoapIn" />
      <wsdl:output message="tns:ServiceTestSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateAccount">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to Validate a UK Bank Sortcode and Account Number.</wsdl:documentation>
      <wsdl:input message="tns:ValidateAccountSoapIn" />
      <wsdl:output message="tns:ValidateAccountSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateCreditCard">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to Validate a Credit Card Number.</wsdl:documentation>
      <wsdl:input message="tns:ValidateCreditCardSoapIn" />
      <wsdl:output message="tns:ValidateCreditCardSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateAccountGetBranchDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function incorporates the StandardiseAccount, ValidateAccount and BranchDetails web services into one web service.</wsdl:documentation>
      <wsdl:input message="tns:ValidateAccountGetBranchDetailsSoapIn" />
      <wsdl:output message="tns:ValidateAccountGetBranchDetailsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="StandardiseAccount">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to transpose Non-standard (i.e. 6, 7, 9 &amp; 10 digit) Account Numbers into Standard (i.e. 8 digit) Account Numbers.</wsdl:documentation>
      <wsdl:input message="tns:StandardiseAccountSoapIn" />
      <wsdl:output message="tns:StandardiseAccountSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="BranchDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to return the Branch Details for a Sort Code.</wsdl:documentation>
      <wsdl:input message="tns:BranchDetailsSoapIn" />
      <wsdl:output message="tns:BranchDetailsSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="BankDetailsHttpGet">
    <wsdl:operation name="ServiceTest">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to test the service and returns the number of Credits Available for the Account.</wsdl:documentation>
      <wsdl:input message="tns:ServiceTestHttpGetIn" />
      <wsdl:output message="tns:ServiceTestHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateAccount">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to Validate a UK Bank Sortcode and Account Number.</wsdl:documentation>
      <wsdl:input message="tns:ValidateAccountHttpGetIn" />
      <wsdl:output message="tns:ValidateAccountHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateCreditCard">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to Validate a Credit Card Number.</wsdl:documentation>
      <wsdl:input message="tns:ValidateCreditCardHttpGetIn" />
      <wsdl:output message="tns:ValidateCreditCardHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateAccountGetBranchDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function incorporates the StandardiseAccount, ValidateAccount and BranchDetails web services into one web service.</wsdl:documentation>
      <wsdl:input message="tns:ValidateAccountGetBranchDetailsHttpGetIn" />
      <wsdl:output message="tns:ValidateAccountGetBranchDetailsHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="StandardiseAccount">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to transpose Non-standard (i.e. 6, 7, 9 &amp; 10 digit) Account Numbers into Standard (i.e. 8 digit) Account Numbers.</wsdl:documentation>
      <wsdl:input message="tns:StandardiseAccountHttpGetIn" />
      <wsdl:output message="tns:StandardiseAccountHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="BranchDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to return the Branch Details for a Sort Code.</wsdl:documentation>
      <wsdl:input message="tns:BranchDetailsHttpGetIn" />
      <wsdl:output message="tns:BranchDetailsHttpGetOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="BankDetailsHttpPost">
    <wsdl:operation name="ServiceTest">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to test the service and returns the number of Credits Available for the Account.</wsdl:documentation>
      <wsdl:input message="tns:ServiceTestHttpPostIn" />
      <wsdl:output message="tns:ServiceTestHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateAccount">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to Validate a UK Bank Sortcode and Account Number.</wsdl:documentation>
      <wsdl:input message="tns:ValidateAccountHttpPostIn" />
      <wsdl:output message="tns:ValidateAccountHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateCreditCard">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to Validate a Credit Card Number.</wsdl:documentation>
      <wsdl:input message="tns:ValidateCreditCardHttpPostIn" />
      <wsdl:output message="tns:ValidateCreditCardHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateAccountGetBranchDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function incorporates the StandardiseAccount, ValidateAccount and BranchDetails web services into one web service.</wsdl:documentation>
      <wsdl:input message="tns:ValidateAccountGetBranchDetailsHttpPostIn" />
      <wsdl:output message="tns:ValidateAccountGetBranchDetailsHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="StandardiseAccount">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to transpose Non-standard (i.e. 6, 7, 9 &amp; 10 digit) Account Numbers into Standard (i.e. 8 digit) Account Numbers.</wsdl:documentation>
      <wsdl:input message="tns:StandardiseAccountHttpPostIn" />
      <wsdl:output message="tns:StandardiseAccountHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="BranchDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This function is used to return the Branch Details for a Sort Code.</wsdl:documentation>
      <wsdl:input message="tns:BranchDetailsHttpPostIn" />
      <wsdl:output message="tns:BranchDetailsHttpPostOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="BankDetailsSoap" type="tns:BankDetailsSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="ServiceTest">
      <soap:operation soapAction="https://ws.esortcode.com/ServiceTest" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccount">
      <soap:operation soapAction="https://ws.esortcode.com/ValidateAccount" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateCreditCard">
      <soap:operation soapAction="https://ws.esortcode.com/ValidateCreditCard" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccountGetBranchDetails">
      <soap:operation soapAction="https://ws.esortcode.com/ValidateAccountGetBranchDetails" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="StandardiseAccount">
      <soap:operation soapAction="https://ws.esortcode.com/StandardiseAccount" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="BranchDetails">
      <soap:operation soapAction="https://ws.esortcode.com/BranchDetails" 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="BankDetailsSoap12" type="tns:BankDetailsSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="ServiceTest">
      <soap12:operation soapAction="https://ws.esortcode.com/ServiceTest" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccount">
      <soap12:operation soapAction="https://ws.esortcode.com/ValidateAccount" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateCreditCard">
      <soap12:operation soapAction="https://ws.esortcode.com/ValidateCreditCard" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccountGetBranchDetails">
      <soap12:operation soapAction="https://ws.esortcode.com/ValidateAccountGetBranchDetails" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="StandardiseAccount">
      <soap12:operation soapAction="https://ws.esortcode.com/StandardiseAccount" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="BranchDetails">
      <soap12:operation soapAction="https://ws.esortcode.com/BranchDetails" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="BankDetailsHttpGet" type="tns:BankDetailsHttpGet">
    <http:binding verb="GET" />
    <wsdl:operation name="ServiceTest">
      <http:operation location="/ServiceTest" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccount">
      <http:operation location="/ValidateAccount" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateCreditCard">
      <http:operation location="/ValidateCreditCard" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccountGetBranchDetails">
      <http:operation location="/ValidateAccountGetBranchDetails" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="StandardiseAccount">
      <http:operation location="/StandardiseAccount" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="BranchDetails">
      <http:operation location="/BranchDetails" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="BankDetailsHttpPost" type="tns:BankDetailsHttpPost">
    <http:binding verb="POST" />
    <wsdl:operation name="ServiceTest">
      <http:operation location="/ServiceTest" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccount">
      <http:operation location="/ValidateAccount" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateCreditCard">
      <http:operation location="/ValidateCreditCard" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateAccountGetBranchDetails">
      <http:operation location="/ValidateAccountGetBranchDetails" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="StandardiseAccount">
      <http:operation location="/StandardiseAccount" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="BranchDetails">
      <http:operation location="/BranchDetails" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="BankDetails">
    <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">This webservice contains bank sortcode, bank account, branch details and Credit Card Number Validation lookup functions. Before using the eSortcode WebService please visit http://www.eSortcode.com and follow the instructions for signing up with a new account.</wsdl:documentation>
    <wsdl:port name="BankDetailsSoap" binding="tns:BankDetailsSoap">
      <soap:address location="http://ws.esortcode.com/bankdetails.asmx" />
    </wsdl:port>
    <wsdl:port name="BankDetailsSoap12" binding="tns:BankDetailsSoap12">
      <soap12:address location="http://ws.esortcode.com/bankdetails.asmx" />
    </wsdl:port>
    <wsdl:port name="BankDetailsHttpGet" binding="tns:BankDetailsHttpGet">
      <http:address location="http://ws.esortcode.com/bankdetails.asmx" />
    </wsdl:port>
    <wsdl:port name="BankDetailsHttpPost" binding="tns:BankDetailsHttpPost">
      <http:address location="http://ws.esortcode.com/bankdetails.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>