4.8 Non-Clearing_Report_XML_Schema
Below is a copy of the latest
Copy
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified"
version="0.4">
<xs:complexType name="BasicAmount">
<xs:attribute name="value" type="xs:decimal" use="required"/>
<xs:attribute name="value2" type="xs:decimal" use="optional"/>
<xs:attribute name="currency" type="ISOCurrencyCode" use="required"/>
</xs:complexType>
<xs:complexType name="RateAmount">
<xs:complexContent>
<xs:extension base="BasicAmount">
<xs:attribute name="rate" type="Rate" use="required"/>
<xs:attribute name="clientfxrate" type="Rate" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ConversionRateAmount">
<xs:complexContent>
<xs:extension base="BasicAmount">
<xs:attribute name="rate" type="ConversionRate" use="required"/>
<xs:attribute name="clientfxrate" type="Rate" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DirectionAmount">
<xs:complexContent>
<xs:extension base="BasicAmount">
<xs:attribute name="direction" type="Direction" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PartialAmount">
<xs:complexContent>
<xs:extension base="BasicAmount">
<xs:attribute name="partial" type="YesNoString" use="optional"/>
<xs:attribute name="origItemId" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SettlementAmt">
<xs:attribute name="value" type="xs:decimal" use="required"/>
<xs:attribute name="currency" type="ISOCurrencyCode" use="required"/>
<xs:attribute name="rate" type="Rate" use="required"/>
<xs:attribute name="date" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
<xs:pattern
value="([2-9]\d{3}((0[1-9]|1[012])(0[1-9]|1\d|2[0-8])|(0[13456789]|1[012])(29|30)|(0[13578]|1[02])31)|(([2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))0229)"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="ConversionSettlementAmt">
<xs:attribute name="value" type="xs:decimal" use="required"/>
<xs:attribute name="currency" type="ISOCurrencyCode" use="required"/>
<xs:attribute name="rate" type="ConversionRate" use="required"/>
<xs:attribute name="date" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
<xs:pattern
value="([2-9]\d{3}((0[1-9]|1[012])(0[1-9]|1\d|2[0-8])|(0[13456789]|1[012])(29|30)|(0[13578]|1[02])31)|(([2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))0229)"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="CCAAmount">
<xs:complexContent>
<xs:extension base="BasicAmount">
<xs:attribute name="included" type="YesNoString" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="FeeClass">
<xs:attribute name="interchangeTransaction" type="YesNoString" use="required"/>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="code" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="1000"/>
<xs:enumeration value="1010"/>
<xs:enumeration value="1020"/>
<xs:enumeration value="1030"/>
<xs:enumeration value="1040"/>
<xs:enumeration value="1060"/>
<xs:enumeration value="1061"/>
<xs:enumeration value="1062"/>
<xs:enumeration value="1063"/>
<xs:enumeration value="1100"/>
<xs:enumeration value="2010"/>
<xs:enumeration value="2011"/>
<xs:enumeration value="2012"/>
<xs:enumeration value="2013"/>
<xs:enumeration value="2014"/>
<xs:enumeration value="2015"/>
<xs:enumeration value="2016"/>
<xs:enumeration value="2110"/>
<xs:enumeration value="2111"/>
<xs:enumeration value="2112"/>
<xs:enumeration value="2300"/>
<xs:enumeration value="2301"/>
<xs:enumeration value="2302"/>
<xs:enumeration value="2303"/>
<xs:enumeration value="2304"/>
<xs:enumeration value="2306"/>
<xs:enumeration value="2307"/>
<xs:enumeration value="2308"/>
<xs:enumeration value="2309"/>
<xs:enumeration value="2310"/>
<xs:enumeration value="2311"/>
<xs:enumeration value="2312"/>
<xs:enumeration value="2313"/>
<xs:enumeration value="2314"/>
<xs:enumeration value="2320"/>
<xs:enumeration value="2401"/>
<xs:enumeration value="2402"/>
<xs:enumeration value="2441"/>
<xs:enumeration value="2442"/>
<xs:enumeration value="2443"/>
<xs:enumeration value="6000"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="MasterCardFeeClass">
<xs:attribute name="interchangeTransaction" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="no"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="code" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="memberID" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="11"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="Response">
<xs:attribute name="approved" type="YesNoString" use="required"/>
<xs:attribute name="actioncode" type="xs:string" use="optional"/>
<xs:attribute name="responsecode" type="xs:string" use="optional"/>
<xs:attribute name="additionaldesc" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="Classification">
<xs:attribute name="MCC" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="MsgSource">
<xs:attribute name="value" use="required">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:enumeration value="12"/>
<xs:enumeration value="17"/>
<xs:enumeration value="54"/>
<xs:enumeration value="66"/>
<xs:enumeration value="67"/>
<xs:enumeration value="74"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="domesticMaestro" type="YesNoString" use="required"/>
</xs:complexType>
<xs:complexType name="MsgSourceCardAuthorisation">
<xs:attribute name="value" use="required">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:enumeration value="12"/>
<xs:enumeration value="17"/>
<xs:enumeration value="54"/>
<xs:enumeration value="62"/>
<xs:enumeration value="66"/>
<xs:enumeration value="67"/>
<xs:enumeration value="74"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="domesticMaestro" type="YesNoString" use="required"/>
</xs:complexType>
<xs:complexType name="Txn">
<xs:attribute name="cardholderpresent" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="9"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cardpresent" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="9"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cardinputmethod" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="C"/>
<xs:enumeration value="E"/>
<xs:enumeration value="F"/>
<xs:enumeration value="G"/>
<xs:enumeration value="M"/>
<xs:enumeration value="P"/>
<xs:enumeration value="Q"/>
<xs:enumeration value="V"/>
<xs:enumeration value="W"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cardauthmethod" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value=""/>
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="A"/>
<xs:enumeration value="B"/>
<xs:enumeration value="C"/>
<xs:enumeration value="D"/>
<xs:enumeration value="E"/>
<xs:enumeration value="S"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cardauthentity" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value=""/>
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="TVR" type="xs:unsignedLong" use="optional"/>
</xs:complexType>
<xs:complexType name="Term">
<xs:attribute name="code" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="location" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="128"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="street" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="64"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="city" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="64"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="country" type="ISOCountryCode" use="optional"/>
<xs:attribute name="inputcapability" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value=" "/>
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="10"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
<xs:enumeration value="13"/>
<xs:enumeration value="14"/>
<xs:enumeration value="15"/>
<xs:enumeration value="16"/>
<xs:enumeration value="17"/>
<xs:enumeration value="18"/>
<xs:enumeration value="19"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="authcapability" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value=""/>
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="10"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
<xs:enumeration value="13"/>
<xs:enumeration value="14"/>
<xs:enumeration value="15"/>
<xs:enumeration value="16"/>
<xs:enumeration value="17"/>
<xs:enumeration value="18"/>
<xs:enumeration value="19"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="Trace">
<xs:attribute name="auditno" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="origauditno" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Retrefno" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="TxnCode">
<xs:attribute name="direction" type="Direction" use="required"/>
<xs:attribute name="Type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6"/>
<xs:enumeration value="pos"/>
<xs:enumeration value="atm"/>
<xs:enumeration value="pos_cb"/>
<xs:enumeration value="pos_re"/>
<xs:enumeration value="fee"/>
<xs:enumeration value="tfr"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Group" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="pos"/>
<xs:enumeration value="atm"/>
<xs:enumeration value="fee"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ProcCode" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="6"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Partial" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="FeeWaivedOff" type="xs:decimal" use="optional"/>
</xs:complexType>
<xs:complexType name="Card">
<xs:attribute name="PAN" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="15"/>
<xs:maxLength value="19"/>
<xs:pattern value="\d+"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="product" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="programid" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="branchcode" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="productid" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="Account">
<xs:attribute name="no" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="28"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="00"/>
<xs:enumeration value="01"/>
<xs:enumeration value="02"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="AccountChrgBack">
<xs:attribute name="no" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="28"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="00"/>
<xs:enumeration value="01"/>
<xs:enumeration value="02"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="Rate">
<xs:restriction base="xs:decimal">
<xs:fractionDigits value="6"/>
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ConversionRate">
<xs:restriction base="xs:decimal">
<xs:fractionDigits value="9"/>
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MerchCode">
<xs:restriction base="xs:string">
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RecType">
<xs:restriction base="xs:string">
<xs:enumeration value="ADV"/>
<xs:enumeration value="REV"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ReversalReason">
<xs:restriction base="xs:string">
<xs:enumeration value=""/>
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Direction">
<xs:restriction base="xs:string">
<xs:enumeration value="debit"/>
<xs:enumeration value="credit"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LocalDate">
<xs:restriction base="xs:string">
<xs:pattern value=""/>
<xs:maxLength value="14"/>
<xs:pattern
value="([2-9]\d{3}((0[1-9]|1[012])(0[1-9]|1\d|2[0-8])|(0[13456789]|1[012])(29|30)|(0[13578]|1[02])31)|(([2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))0229)([0-1][0-9]|[2][0-3])([0-5][0-9])([0-5][0-9])"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LocalDateUTC">
<xs:restriction base="xs:string">
<xs:pattern value=""/>
<xs:maxLength value="10"/>
<xs:pattern value="[0-9]{10}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SettlementDate">
<xs:restriction base="xs:string">
<xs:pattern
value="\s*|([2-9]\d{3}((0[1-9]|1[012])(0[1-9]|1\d|2[0-8])|(0[13456789]|1[012])(29|30)|(0[13578]|1[02])31)|(([2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))0229)"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ApprCode">
<xs:restriction base="xs:string">
<xs:maxLength value="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Schema">
<xs:restriction base="xs:string">
<xs:minLength value="4"/>
<xs:maxLength value="4"/>
<xs:enumeration value="CIRR"/>
<xs:enumeration value="ECRD"/>
<xs:enumeration value="MAES"/>
<xs:enumeration value="CIMA"/>
<xs:enumeration value="MCRD"/>
<xs:enumeration value="VISA"/>
<xs:enumeration value="PLUS"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ARN">
<xs:restriction base="xs:string">
<xs:maxLength value="23"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="FIID">
<xs:restriction base="xs:string">
<xs:maxLength value="11"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RIID">
<xs:restriction base="xs:string">
<xs:maxLength value="11"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Desc">
<xs:restriction base="xs:string">
<xs:maxLength value="500"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AdjustType">
<xs:restriction base="xs:string">
<xs:enumeration value="Actual"/>
<xs:enumeration value="Block"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="LoadSource">
<xs:attribute name="Source">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3"/>
<!-- <xs:pattern value="([0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|6[0-9]|7[0-9]|8[0-9]|9[0-9]|100|102|209|210)"/> -->
<xs:pattern value="[0-9]{1,3}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="10"/>
<xs:enumeration value="11"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="FixedFee" type="xs:decimal" use="optional"/>
<xs:attribute name="Rate_Fee" type="xs:decimal" use="optional"/>
</xs:complexType>
<xs:simpleType name="ISOCurrencyCode">
<xs:restriction base="xs:unsignedShort">
<xs:enumeration value="008"/>
<xs:enumeration value="012"/>
<xs:enumeration value="032"/>
<xs:enumeration value="036"/>
<xs:enumeration value="044"/>
<xs:enumeration value="048"/>
<xs:enumeration value="050"/>
<xs:enumeration value="051"/>
<xs:enumeration value="052"/>
<xs:enumeration value="060"/>
<xs:enumeration value="064"/>
<xs:enumeration value="068"/>
<xs:enumeration value="072"/>
<xs:enumeration value="084"/>
<xs:enumeration value="090"/>
<xs:enumeration value="096"/>
<xs:enumeration value="104"/>
<xs:enumeration value="108"/>
<xs:enumeration value="116"/>
<xs:enumeration value="124"/>
<xs:enumeration value="132"/>
<xs:enumeration value="136"/>
<xs:enumeration value="144"/>
<xs:enumeration value="152"/>
<xs:enumeration value="156"/>
<xs:enumeration value="158"/>
<xs:enumeration value="170"/>
<xs:enumeration value="174"/>
<xs:enumeration value="188"/>
<xs:enumeration value="191"/>
<xs:enumeration value="192"/>
<xs:enumeration value="203"/>
<xs:enumeration value="208"/>
<xs:enumeration value="214"/>
<xs:enumeration value="222"/>
<xs:enumeration value="230"/>
<xs:enumeration value="232"/>
<xs:enumeration value="233"/>
<xs:enumeration value="238"/>
<xs:enumeration value="242"/>
<xs:enumeration value="262"/>
<xs:enumeration value="270"/>
<xs:enumeration value="292"/>
<xs:enumeration value="320"/>
<xs:enumeration value="324"/>
<xs:enumeration value="328"/>
<xs:enumeration value="332"/>
<xs:enumeration value="340"/>
<xs:enumeration value="344"/>
<xs:enumeration value="348"/>
<xs:enumeration value="352"/>
<xs:enumeration value="356"/>
<xs:enumeration value="360"/>
<xs:enumeration value="364"/>
<xs:enumeration value="368"/>
<xs:enumeration value="376"/>
<xs:enumeration value="388"/>
<xs:enumeration value="392"/>
<xs:enumeration value="398"/>
<xs:enumeration value="400"/>
<xs:enumeration value="404"/>
<xs:enumeration value="408"/>
<xs:enumeration value="410"/>
<xs:enumeration value="414"/>
<xs:enumeration value="417"/>
<xs:enumeration value="418"/>
<xs:enumeration value="422"/>
<xs:enumeration value="426"/>
<xs:enumeration value="428"/>
<xs:enumeration value="430"/>
<xs:enumeration value="434"/>
<xs:enumeration value="440"/>
<xs:enumeration value="446"/>
<xs:enumeration value="454"/>
<xs:enumeration value="458"/>
<xs:enumeration value="462"/>
<xs:enumeration value="478"/>
<xs:enumeration value="480"/>
<xs:enumeration value="484"/>
<xs:enumeration value="496"/>
<xs:enumeration value="498"/>
<xs:enumeration value="504"/>
<xs:enumeration value="512"/>
<xs:enumeration value="516"/>
<xs:enumeration value="524"/>
<xs:enumeration value="532"/>
<xs:enumeration value="533"/>
<xs:enumeration value="548"/>
<xs:enumeration value="554"/>
<xs:enumeration value="558"/>
<xs:enumeration value="566"/>
<xs:enumeration value="578"/>
<xs:enumeration value="586"/>
<xs:enumeration value="590"/>
<xs:enumeration value="598"/>
<xs:enumeration value="600"/>
<xs:enumeration value="604"/>
<xs:enumeration value="608"/>
<xs:enumeration value="634"/>
<xs:enumeration value="643"/>
<xs:enumeration value="646"/>
<xs:enumeration value="654"/>
<xs:enumeration value="678"/>
<xs:enumeration value="682"/>
<xs:enumeration value="690"/>
<xs:enumeration value="694"/>
<xs:enumeration value="702"/>
<xs:enumeration value="703"/>
<xs:enumeration value="704"/>
<xs:enumeration value="706"/>
<xs:enumeration value="710"/>
<xs:enumeration value="716"/>
<xs:enumeration value="728"/>
<xs:enumeration value="748"/>
<xs:enumeration value="752"/>
<xs:enumeration value="756"/>
<xs:enumeration value="760"/>
<xs:enumeration value="764"/>
<xs:enumeration value="776"/>
<xs:enumeration value="780"/>
<xs:enumeration value="784"/>
<xs:enumeration value="788"/>
<xs:enumeration value="792"/>
<xs:enumeration value="795"/>
<xs:enumeration value="800"/>
<xs:enumeration value="807"/>
<xs:enumeration value="810"/>
<xs:enumeration value="818"/>
<xs:enumeration value="826"/>
<xs:enumeration value="834"/>
<xs:enumeration value="840"/>
<xs:enumeration value="858"/>
<xs:enumeration value="860"/>
<xs:enumeration value="882"/>
<xs:enumeration value="886"/>
<xs:enumeration value="894"/>
<xs:enumeration value="901"/>
<xs:enumeration value="925"/>
<xs:enumeration value="928"/>
<xs:enumeration value="929"/>
<xs:enumeration value="930"/>
<xs:enumeration value="931"/>
<xs:enumeration value="932"/>
<xs:enumeration value="933"/>
<xs:enumeration value="934"/>
<xs:enumeration value="936"/>
<xs:enumeration value="937"/>
<xs:enumeration value="938"/>
<xs:enumeration value="940"/>
<xs:enumeration value="941"/>
<xs:enumeration value="943"/>
<xs:enumeration value="944"/>
<xs:enumeration value="946"/>
<xs:enumeration value="947"/>
<xs:enumeration value="948"/>
<xs:enumeration value="949"/>
<xs:enumeration value="950"/>
<xs:enumeration value="951"/>
<xs:enumeration value="952"/>
<xs:enumeration value="953"/>
<xs:enumeration value="955"/>
<xs:enumeration value="956"/>
<xs:enumeration value="957"/>
<xs:enumeration value="958"/>
<xs:enumeration value="959"/>
<xs:enumeration value="960"/>
<xs:enumeration value="961"/>
<xs:enumeration value="962"/>
<xs:enumeration value="963"/>
<xs:enumeration value="964"/>
<xs:enumeration value="965"/>
<xs:enumeration value="967"/>
<xs:enumeration value="968"/>
<xs:enumeration value="969"/>
<xs:enumeration value="970"/>
<xs:enumeration value="971"/>
<xs:enumeration value="972"/>
<xs:enumeration value="973"/>
<xs:enumeration value="974"/>
<xs:enumeration value="975"/>
<xs:enumeration value="976"/>
<xs:enumeration value="977"/>
<xs:enumeration value="978"/>
<xs:enumeration value="979"/>
<xs:enumeration value="980"/>
<xs:enumeration value="981"/>
<xs:enumeration value="984"/>
<xs:enumeration value="985"/>
<xs:enumeration value="986"/>
<xs:enumeration value="990"/>
<xs:enumeration value="994"/>
<xs:enumeration value="997"/>
<xs:enumeration value="998"/>
<xs:enumeration value="999"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ISOCountryCode">
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
<xs:enumeration value=" "/>
<xs:enumeration value="AD"/>
<xs:enumeration value="AE"/>
<xs:enumeration value="AF"/>
<xs:enumeration value="AG"/>
<xs:enumeration value="AI"/>
<xs:enumeration value="AL"/>
<xs:enumeration value="AM"/>
<xs:enumeration value="AN"/>
<xs:enumeration value="AO"/>
<xs:enumeration value="AQ"/>
<xs:enumeration value="AR"/>
<xs:enumeration value="AS"/>
<xs:enumeration value="AT"/>
<xs:enumeration value="AU"/>
<xs:enumeration value="AW"/>
<xs:enumeration value="AX"/>
<xs:enumeration value="AZ"/>
<xs:enumeration value="BA"/>
<xs:enumeration value="BB"/>
<xs:enumeration value="BD"/>
<xs:enumeration value="BE"/>
<xs:enumeration value="BF"/>
<xs:enumeration value="BG"/>
<xs:enumeration value="BH"/>
<xs:enumeration value="BI"/>
<xs:enumeration value="BJ"/>
<xs:enumeration value="BL"/>
<xs:enumeration value="BM"/>
<xs:enumeration value="BN"/>
<xs:enumeration value="BO"/>
<xs:enumeration value="BQ"/>
<xs:enumeration value="BR"/>
<xs:enumeration value="BS"/>
<xs:enumeration value="BT"/>
<xs:enumeration value="BV"/>
<xs:enumeration value="BW"/>
<xs:enumeration value="BY"/>
<xs:enumeration value="BZ"/>
<xs:enumeration value="CA"/>
<xs:enumeration value="CC"/>
<xs:enumeration value="CD"/>
<xs:enumeration value="CF"/>
<xs:enumeration value="CG"/>
<xs:enumeration value="CH"/>
<xs:enumeration value="CI"/>
<xs:enumeration value="CK"/>
<xs:enumeration value="CL"/>
<xs:enumeration value="CM"/>
<xs:enumeration value="CN"/>
<xs:enumeration value="CO"/>
<xs:enumeration value="CR"/>
<xs:enumeration value="CU"/>
<xs:enumeration value="CV"/>
<xs:enumeration value="CW"/>
<xs:enumeration value="CX"/>
<xs:enumeration value="CY"/>
<xs:enumeration value="CZ"/>
<xs:enumeration value="DD"/>
<xs:enumeration value="DE"/>
<xs:enumeration value="DJ"/>
<xs:enumeration value="DK"/>
<xs:enumeration value="DM"/>
<xs:enumeration value="DO"/>
<xs:enumeration value="DZ"/>
<xs:enumeration value="EC"/>
<xs:enumeration value="EE"/>
<xs:enumeration value="EG"/>
<xs:enumeration value="EH"/>
<xs:enumeration value="ER"/>
<xs:enumeration value="ES"/>
<xs:enumeration value="ET"/>
<xs:enumeration value="FI"/>
<xs:enumeration value="FJ"/>
<xs:enumeration value="FK"/>
<xs:enumeration value="FM"/>
<xs:enumeration value="FO"/>
<xs:enumeration value="FR"/>
<xs:enumeration value="GA"/>
<xs:enumeration value="GB"/>
<xs:enumeration value="GD"/>
<xs:enumeration value="GE"/>
<xs:enumeration value="GF"/>
<xs:enumeration value="GG"/>
<xs:enumeration value="GH"/>
<xs:enumeration value="GI"/>
<xs:enumeration value="GL"/>
<xs:enumeration value="GM"/>
<xs:enumeration value="GN"/>
<xs:enumeration value="GP"/>
<xs:enumeration value="GQ"/>
<xs:enumeration value="GR"/>
<xs:enumeration value="GS"/>
<xs:enumeration value="GT"/>
<xs:enumeration value="GU"/>
<xs:enumeration value="GW"/>
<xs:enumeration value="GY"/>
<xs:enumeration value="HK"/>
<xs:enumeration value="HM"/>
<xs:enumeration value="HN"/>
<xs:enumeration value="HR"/>
<xs:enumeration value="HT"/>
<xs:enumeration value="HU"/>
<xs:enumeration value="ID"/>
<xs:enumeration value="IE"/>
<xs:enumeration value="IL"/>
<xs:enumeration value="IM"/>
<xs:enumeration value="IN"/>
<xs:enumeration value="IO"/>
<xs:enumeration value="IQ"/>
<xs:enumeration value="IR"/>
<xs:enumeration value="IS"/>
<xs:enumeration value="IT"/>
<xs:enumeration value="JE"/>
<xs:enumeration value="JM"/>
<xs:enumeration value="JO"/>
<xs:enumeration value="JP"/>
<xs:enumeration value="JT"/>
<xs:enumeration value="KE"/>
<xs:enumeration value="KG"/>
<xs:enumeration value="KH"/>
<xs:enumeration value="KI"/>
<xs:enumeration value="KM"/>
<xs:enumeration value="KN"/>
<xs:enumeration value="KP"/>
<xs:enumeration value="KR"/>
<xs:enumeration value="KW"/>
<xs:enumeration value="KY"/>
<xs:enumeration value="KZ"/>
<xs:enumeration value="LA"/>
<xs:enumeration value="LB"/>
<xs:enumeration value="LC"/>
<xs:enumeration value="LI"/>
<xs:enumeration value="LK"/>
<xs:enumeration value="LR"/>
<xs:enumeration value="LS"/>
<xs:enumeration value="LT"/>
<xs:enumeration value="LU"/>
<xs:enumeration value="LV"/>
<xs:enumeration value="LY"/>
<xs:enumeration value="MA"/>
<xs:enumeration value="MC"/>
<xs:enumeration value="MD"/>
<xs:enumeration value="ME"/>
<xs:enumeration value="MF"/>
<xs:enumeration value="MG"/>
<xs:enumeration value="MH"/>
<xs:enumeration value="MI"/>
<xs:enumeration value="MK"/>
<xs:enumeration value="ML"/>
<xs:enumeration value="MM"/>
<xs:enumeration value="MN"/>
<xs:enumeration value="MO"/>
<xs:enumeration value="MP"/>
<xs:enumeration value="MQ"/>
<xs:enumeration value="MR"/>
<xs:enumeration value="MS"/>
<xs:enumeration value="MT"/>
<xs:enumeration value="MU"/>
<xs:enumeration value="MV"/>
<xs:enumeration value="MW"/>
<xs:enumeration value="MX"/>
<xs:enumeration value="MY"/>
<xs:enumeration value="MZ"/>
<xs:enumeration value="NA"/>
<xs:enumeration value="NC"/>
<xs:enumeration value="NE"/>
<xs:enumeration value="NF"/>
<xs:enumeration value="NG"/>
<xs:enumeration value="NI"/>
<xs:enumeration value="NL"/>
<xs:enumeration value="NO"/>
<xs:enumeration value="NP"/>
<xs:enumeration value="NR"/>
<xs:enumeration value="NU"/>
<xs:enumeration value="NZ"/>
<xs:enumeration value="OM"/>
<xs:enumeration value="PA"/>
<xs:enumeration value="PE"/>
<xs:enumeration value="PF"/>
<xs:enumeration value="PG"/>
<xs:enumeration value="PH"/>
<xs:enumeration value="PK"/>
<xs:enumeration value="PL"/>
<xs:enumeration value="PM"/>
<xs:enumeration value="PN"/>
<xs:enumeration value="PR"/>
<xs:enumeration value="PS"/>
<xs:enumeration value="PT"/>
<xs:enumeration value="PW"/>
<xs:enumeration value="PY"/>
<xs:enumeration value="QA"/>
<xs:enumeration value="QZ"/>
<xs:enumeration value="RE"/>
<xs:enumeration value="RO"/>
<xs:enumeration value="RS"/>
<xs:enumeration value="RU"/>
<xs:enumeration value="RW"/>
<xs:enumeration value="SA"/>
<xs:enumeration value="SB"/>
<xs:enumeration value="SC"/>
<xs:enumeration value="SD"/>
<xs:enumeration value="SE"/>
<xs:enumeration value="SG"/>
<xs:enumeration value="SH"/>
<xs:enumeration value="SI"/>
<xs:enumeration value="SJ"/>
<xs:enumeration value="SK"/>
<xs:enumeration value="SL"/>
<xs:enumeration value="SM"/>
<xs:enumeration value="SN"/>
<xs:enumeration value="SO"/>
<xs:enumeration value="SR"/>
<xs:enumeration value="ST"/>
<xs:enumeration value="SV"/>
<xs:enumeration value="SX"/>
<xs:enumeration value="SY"/>
<xs:enumeration value="SZ"/>
<xs:enumeration value="TC"/>
<xs:enumeration value="TD"/>
<xs:enumeration value="TF"/>
<xs:enumeration value="TG"/>
<xs:enumeration value="TH"/>
<xs:enumeration value="TJ"/>
<xs:enumeration value="TK"/>
<xs:enumeration value="TL"/>
<xs:enumeration value="TM"/>
<xs:enumeration value="TN"/>
<xs:enumeration value="TO"/>
<xs:enumeration value="TP"/>
<xs:enumeration value="TR"/>
<xs:enumeration value="TT"/>
<xs:enumeration value="TV"/>
<xs:enumeration value="TW"/>
<xs:enumeration value="TZ"/>
<xs:enumeration value="UA"/>
<xs:enumeration value="UG"/>
<xs:enumeration value="UM"/>
<xs:enumeration value="US"/>
<xs:enumeration value="UY"/>
<xs:enumeration value="UZ"/>
<xs:enumeration value="VA"/>
<xs:enumeration value="VC"/>
<xs:enumeration value="VE"/>
<xs:enumeration value="VG"/>
<xs:enumeration value="VI"/>
<xs:enumeration value="VN"/>
<xs:enumeration value="VU"/>
<xs:enumeration value="WF"/>
<xs:enumeration value="WK"/>
<xs:enumeration value="WS"/>
<xs:enumeration value="YE"/>
<xs:enumeration value="YT"/>
<xs:enumeration value="ZA"/>
<xs:enumeration value="ZM"/>
<xs:enumeration value="ZW"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="YesNoString">
<xs:restriction base="xs:string">
<xs:enumeration value="yes"/>
<xs:enumeration value="no"/>
<xs:enumeration value="YES"/>
<xs:enumeration value="NO"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CycleNumber">
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
<xs:enumeration value="01"/>
<xs:enumeration value="02"/>
<xs:enumeration value="03"/>
<xs:enumeration value="04"/>
<xs:enumeration value="05"/>
<xs:enumeration value="06"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EventType">
<xs:restriction base="xs:string">
<xs:enumeration value="Upgraded"/>
<xs:enumeration value="Renewed"/>
<xs:enumeration value="ReportedToSAFE"/>
<xs:enumeration value="Lost"/>
<xs:enumeration value="Stolen"/>
<xs:enumeration value="Cancelled"/>
<xs:enumeration value="PINTriesExceeded"/>
<xs:enumeration value="Voided"/>
<xs:enumeration value="Expired"/>
<xs:enumeration value="Activation"/>
<xs:enumeration value="UnBlocked"/>
<xs:enumeration value="StatusChange"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MTID">
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Function_Code_024">
<xs:restriction base="xs:string">
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Conversion_Rate_Reconciliation_009">
<xs:restriction base="xs:decimal">
<xs:totalDigits value="15"/>
<xs:fractionDigits value="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Additional_Data_048">
<xs:restriction base="xs:string">
<xs:maxLength value="8000"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Data_Record_072">
<xs:restriction base="xs:string">
<xs:maxLength value="200"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DE93_Txn_Dest_ID">
<xs:restriction base="xs:string">
<xs:maxLength value="11"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DE94_Txn_Orig_ID">
<xs:restriction base="xs:string">
<xs:maxLength value="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="File_ID_PDS0105">
<xs:restriction base="xs:string">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="FileProcessDate">
<xs:restriction base="xs:string">
<xs:pattern value=""/>
<xs:maxLength value="14"/>
<xs:pattern
value="([2-9]\d{3}((0[1-9]|1[012])(0[1-9]|1\d|2[0-8])|(0[13456789]|1[012])(29|30)|(0[13578]|1[02])31)|(([2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))0229)([0-1][0-9]|[2][0-3])([0-5][0-9])([0-5][0-9])"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Recon">
<xs:attribute name="date" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern
value="\s*|([2-9]\d{3}((0[1-9]|1[012])(0[1-9]|1\d|2[0-8])|(0[13456789]|1[012])(29|30)|(0[13578]|1[02])31)|(([2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))0229)"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cycle" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="Settlement">
<xs:attribute name="date" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern
value="\s*|([2-9]\d{3}((0[1-9]|1[012])(0[1-9]|1\d|2[0-8])|(0[13456789]|1[012])(29|30)|(0[13578]|1[02])31)|(([2-9]\d)(0[48]|[2468][048]|[13579][26])|(([2468][048]|[3579][26])00))0229)"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="cycle" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="sortcode">
<xs:restriction base="xs:string">
<xs:maxLength value="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="accountno">
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ABFile">
<xs:attribute name="filedate" type="LocalDate" use="required"/>
<xs:attribute name="filename" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="ABAccount">
<xs:attribute name="no" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="28"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="00"/>
<xs:enumeration value="01"/>
<xs:enumeration value="02"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="sortcode" type="sortcode" use="required"/>
<xs:attribute name="bankacc" type="accountno" use="required"/>
<xs:attribute name="name" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="ABExternal">
<xs:attribute name="sortcode" type="sortcode" use="required"/>
<xs:attribute name="bankacc" type="accountno" use="required"/>
<xs:attribute name="name" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="ABCashCode">
<xs:attribute name="direction" type="Direction" use="required"/>
<xs:attribute name="CashType" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="CashGroup" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="rcp"/>
<xs:enumeration value="pay"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="ABDeclineReason">
<xs:restriction base="xs:string">
<xs:enumeration value="00"/>
<xs:enumeration value="01"/>
<xs:enumeration value="02"/>
<xs:enumeration value="03"/>
<xs:enumeration value="04"/>
<xs:enumeration value="05"/>
<xs:enumeration value="06"/>
<xs:enumeration value="07"/>
<xs:enumeration value="08"/>
<xs:enumeration value="9"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ABDirection">
<xs:restriction base="xs:string">
<xs:enumeration value="debit"/>
<xs:enumeration value="credit"/>
<xs:enumeration value="shared"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ABDirectionAmount">
<xs:complexContent>
<xs:extension base="BasicAmount">
<xs:attribute name="direction" type="ABDirection" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="NullOrULong">
<xs:restriction base="xs:string">
<xs:pattern value="\d*|\s{0}"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SenderReceiver">
<xs:attribute name="firstname" type="xs:string" use="optional"/>
<xs:attribute name="middlename" type="xs:string" use="optional"/>
<xs:attribute name="lastname" type="xs:string" use="optional"/>
<xs:attribute name="streetaddress" type="xs:string" use="optional"/>
<xs:attribute name="city" type="xs:string" use="optional"/>
<xs:attribute name="provincecode" type="xs:string" use="optional"/>
<xs:attribute name="country" type="xs:string" use="optional"/>
<xs:attribute name="postcode" type="xs:string" use="optional"/>
<xs:attribute name="phonenumber" type="xs:string" use="optional"/>
<xs:attribute name="dateofbirth" type="xs:string" use="optional"/>
<xs:attribute name="accountnumber" type="xs:string" use="optional"/>
<xs:attribute name="idtype" type="xs:string" use="optional"/>
<xs:attribute name="idnbr" type="xs:string" use="optional"/>
<xs:attribute name="idctrycode" type="xs:string" use="optional"/>
<xs:attribute name="idexpdate" type="xs:string" use="optional"/>
<xs:attribute name="nationality" type="xs:string" use="optional"/>
<xs:attribute name="birthctry" type="xs:string" use="optional"/>
<xs:attribute name="acctnbrtype" type="xs:string" use="optional"/>
<xs:attribute name="fundssource" type="xs:string" use="optional"/>
<xs:attribute name="claimcode" type="xs:string" use="optional"/>
</xs:complexType>
<xs:complexType name="FXConv">
<xs:attribute name="bookingstatus" type="xs:string" use="optional"/>
<xs:attribute name="fxratebooked" type="xs:decimal" use="required"/>
<xs:attribute name="providercode" type="xs:string" use="required"/>
<xs:attribute name="fixedamountflag" type="xs:string" use="required"/>
<xs:attribute name="settlementdate" type="SettlementDate" use="optional"/>
</xs:complexType>
<xs:complexType name="PaymentToken">
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute name="creator" type="xs:string" use="required"/>
<xs:attribute name="expdate" type="xs:string" use="optional"/>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="status" type="xs:string" use="required"/>
<xs:attribute name="creatorstatus" type="xs:string" use="required"/>
<xs:attribute name="wallet" type="xs:string" use="required"/>
<xs:attribute name="devicetype" type="xs:string" use="required"/>
<xs:attribute name="lang" type="xs:string" use="optional"/>
<xs:attribute name="activationexpiry" type="xs:string" use="optional"/>
<xs:attribute name="activationmethod" type="xs:string" use="optional"/>
</xs:complexType>
<xs:element name="Transactions">
<xs:complexType mixed="true">
<xs:sequence>
<xs:choice maxOccurs="unbounded">
<xs:element minOccurs="0" maxOccurs="unbounded" name="CardAuthorisation">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="RecType" type="RecType" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="AuthId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="AuthTxnID" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="LocalDate" type="LocalDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="LocalDateUTC" type="LocalDateUTC" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Account" type="Account" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="TxnCode" type="TxnCode" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="TxnAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="CashbackAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="BillAmt" type="RateAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="ApprCode" type="ApprCode" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Trace" type="Trace" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="MerchCode" type="MerchCode" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="Term" type="Term" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Schema" type="Schema" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Txn" type="Txn" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="MsgSource" type="MsgSourceCardAuthorisation" minOccurs="1"
maxOccurs="1" nillable="false"/>
<xs:element name="PaddingAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Rate_Fee">
<xs:complexType>
<xs:attribute name="value" type="xs:decimal" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Fixed_Fee">
<xs:complexType>
<xs:attribute name="value" type="xs:decimal" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="CommissionAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Classification" type="Classification" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Response" type="Response" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="OrigTxnAmt" type="PartialAmount" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="ReversalReason" type="ReversalReason" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="Sender" type="SenderReceiver" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="Receiver" type="SenderReceiver" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="FXConv" type="FXConv" minOccurs="0" maxOccurs="1" nillable="true"/>
<xs:element name="PaymentToken" type="PaymentToken" minOccurs="0" maxOccurs="1"
nillable="true"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CardOnlineFinancial">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="RecType" type="RecType" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="OnlineFinId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="OnlineFinTxnId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="LocalDate" type="LocalDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="LocalDateUTC" type="LocalDateUTC" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="SchemeSettlementDate" type="xs:string" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="SchemeReconciliationDate" type="xs:string" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="CycleNumber" type="xs:unsignedInt" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Account" type="Account" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="TxnCode" type="TxnCode" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="TxnAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="CashbackAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="BillAmt" type="RateAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="SettlementAmt" type="SettlementAmt" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="OrigTxnAmt" type="PartialAmount" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="Additional_Amt_DE54" type="xs:string" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="ApprCode" type="ApprCode" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Trace" type="Trace" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="MerchCode" type="MerchCode" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="Term" type="Term" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Schema" type="Schema" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Txn" type="Txn" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="MsgSource" type="MsgSourceCardAuthorisation" minOccurs="1"
maxOccurs="1" nillable="false"/>
<xs:element name="Rate_Fee">
<xs:complexType>
<xs:attribute name="value" type="xs:decimal" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Fixed_Fee">
<xs:complexType>
<xs:attribute name="value" type="xs:decimal" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="CommissionAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Fee" type="DirectionAmount" minOccurs="0" maxOccurs="1"
nillable="false"/>
<xs:element name="FeeAmt" type="DirectionAmount" minOccurs="0" maxOccurs="1"
nillable="false"/>
<xs:element name="FeeClass" type="FeeClass" minOccurs="0" maxOccurs="1"
nillable="false"/>
<xs:element name="Classification" type="Classification" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Response" type="Response" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="ReversalReason" type="ReversalReason" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="PaymentToken" type="PaymentToken" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="Sender" type="SenderReceiver" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="Receiver" type="SenderReceiver" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="FIID" type="FIID" minOccurs="0" maxOccurs="1" nillable="true"/>
<xs:element name="SettlementIndicator" type="xs:string" minOccurs="0" maxOccurs="1"
nillable="false"/>
<xs:element name="BSA" type="xs:string" minOccurs="0" maxOccurs="1" nillable="true"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CardFee">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="CardFeeId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="LocalDate" type="LocalDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Account" type="Account" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="TxId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="TxnCode" type="TxnCode" minOccurs="0" maxOccurs="1" nillable="false"/>
<xs:element name="MerchCode" type="MerchCode" minOccurs="0" maxOccurs="1"
nillable="false"/>
<xs:element name="MsgSource" type="MsgSourceCardAuthorisation" minOccurs="0"
maxOccurs="1" nillable="true"/>
<xs:element name="FeeClass" type="FeeClass" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="LoadUnloadId" type="xs:unsignedInt" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="Desc" type="Desc" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="FeeAmt" type="DirectionAmount" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="Amt" type="DirectionAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="FIID" type="FIID" minOccurs="0" maxOccurs="1" nillable="true"/>
<xs:element name="ReasonCode" type="xs:string" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Recon" type="Recon" minOccurs="0" maxOccurs="1" nillable="false"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CardLoadUnload">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="RecordType" minOccurs="1" maxOccurs="1" nillable="false">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="LOAD"/>
<xs:enumeration value="LOADREV"/>
<xs:enumeration value="UNLOAD"/>
<xs:enumeration value="UNLOADREV"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LoadUnloadId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="MessageId" type="xs:unsignedInt" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="LocalDate" type="LocalDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Account" type="Account" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="MerchCode" type="MerchCode" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="Amount" type="DirectionAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="VoidedLoadUnloadId" type="xs:unsignedInt" default="0" minOccurs="0"
maxOccurs="1" nillable="true"/>
<xs:element name="Desc" type="Desc" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Load" type="LoadSource" minOccurs="1" maxOccurs="1" nillable="false"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ApprovedAgencyBanking">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="CashType" minOccurs="1" maxOccurs="1" nillable="false">
<xs:simpleType>
<xs:restriction base="xs:string">
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BankingId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="File" type="ABFile" minOccurs="0" maxOccurs="1" nillable="true"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="AgencyAccount" type="ABAccount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="External" type="ABExternal" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="CashCode" type="ABCashCode" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="Desc" type="Desc" minOccurs="1" maxOccurs="1" nillable="true"/>
<xs:element name="CashAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Fee" type="DirectionAmount" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="BillAmt" type="RateAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="OrigTxnAmt" type="PartialAmount" minOccurs="0" maxOccurs="1"
nillable="true"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="DeclinedAgencyBanking">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="CashType" minOccurs="1" maxOccurs="1" nillable="false">
<xs:simpleType>
<xs:restriction base="xs:string">
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BankingId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="File" type="ABFile" minOccurs="0" maxOccurs="1" nillable="true"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="AgencyAccount" type="ABAccount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="External" type="ABExternal" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="CashCode" type="ABCashCode" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Desc" type="Desc" minOccurs="1" maxOccurs="1" nillable="true"/>
<xs:element name="CashAmt" type="BasicAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="DeclineReason" type="ABDeclineReason" minOccurs="1" maxOccurs="1"
nillable="true"/>
<xs:element name="OrigTxnAmt" type="PartialAmount" minOccurs="0" maxOccurs="1"
nillable="true"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="AgencyBankingFee">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="BankingFeeId" type="xs:unsignedInt" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="AgencyAccount" type="ABAccount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="AbId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Desc" type="Desc" minOccurs="1" maxOccurs="1" nillable="true"/>
<xs:element name="Amt" type="ABDirectionAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CardBalAdjust">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="LocalDate" type="LocalDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="AdjustId" type="xs:unsignedLong" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="MessageId" type="xs:unsignedInt" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="SettlementDate" type="SettlementDate" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="Card" type="Card" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Account" type="Account" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="Amount" type="DirectionAmount" minOccurs="1" maxOccurs="1"
nillable="false"/>
<xs:element name="VoidedAdjustId" type="xs:unsignedInt" default="0" minOccurs="0"
maxOccurs="1" nillable="true"/>
<xs:element name="MerchCode" type="MerchCode" minOccurs="0" maxOccurs="1"
nillable="true"/>
<xs:element name="Desc" type="Desc" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="AdjustType" type="AdjustType" minOccurs="1" maxOccurs="1"
nillable="false"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="CardEvent">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element name="Card">
<xs:complexType>
<xs:attribute name="PAN" type="xs:unsignedLong" use="required"/>
<xs:attribute name="productid" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="Event">
<xs:complexType>
<xs:attribute name="Type" type="EventType" use="required"/>
<xs:attribute name="Source" type="xs:unsignedByte" use="required"/>
<xs:attribute name="ActivationDate" type="xs:string" use="required"/>
<xs:attribute name="ConvertedDate" type="xs:string" use="optional"/>
<xs:attribute name="StatCode" type="xs:string" use="required"/>
<xs:attribute name="OldStatCode" type="xs:string" use="required"/>
<xs:attribute name="Date" type="xs:string" use="required"/>
<xs:attribute name="transactionid" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>