<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

    <xs:element name="VerificationOfPayeeRequest" type="VerificationOfPayeeRequestMessage"/>
    <xs:element name="VerificationOfPayeeResponse" type="VerificationOfPayeeResponseMessage"/>

    <xs:complexType name="VerificationOfPayeeRequestMessage">
        <xs:sequence>
            <xs:element name="Name" type="NotBlankLimitedString140"/>
            <xs:element name="IBAN" type="IbanPattern"/>
            <xs:element name="BIC" type="BicPattern" minOccurs="0"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="VerificationOfPayeeResponseMessage">
        <xs:sequence>
            <xs:element name="Name" type="NotBlankLimitedString140"/>
            <xs:element name="IBAN" type="IbanPattern"/>
            <xs:element name="PartyNameMatch" type="PartyNameMatchEnum"/>
            <xs:element name="ActualName" type="NotBlankLimitedString140" minOccurs="0"/>
        </xs:sequence>
    </xs:complexType>

    <xs:simpleType name="NotBlankLimitedString140">
        <xs:restriction base="xs:string">
            <xs:pattern value=".*\S.*"/>
            <xs:maxLength value="140"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="IbanPattern">
        <xs:restriction base="xs:string">
            <xs:pattern value="[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="BicPattern">
        <xs:restriction base="xs:string">
            <xs:pattern value="[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="PartyNameMatchEnum">
        <xs:restriction base="xs:string">
            <xs:enumeration value="FULL_MATCH"/>
            <xs:enumeration value="CLOSE_MATCH"/>
            <xs:enumeration value="NO_MATCH"/>
            <xs:enumeration value="NOT_APPLICABLE"/>
        </xs:restriction>
    </xs:simpleType>

</xs:schema>

