XML Schema description

CustomerJournal

  <xs:element name="CustomerJournal">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="CustomerJournalInfo" minOccurs="1" maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="CustomerNo" type="Identifier15" minOccurs="1" maxOccurs="1" nillable="false">
                <xs:annotation>
                  <xs:documentation>CustomerNo is your unique identifier of the customer in the accounts receivable.</xs:documentation>
                </xs:annotation>
              </xs:element>
              <xs:element name="RegNo" type="RegNo" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                  <xs:documentation>If exists, Customer social security number/corporate identity number in the accounts receivable</xs:documentation>
                </xs:annotation>
              </xs:element>
              <xs:element minOccurs="0" maxOccurs="1" name="CustomerInfo">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Name" type="NameAddressString72" minOccurs="1" maxOccurs="1">
                      <xs:annotation>
                        <xs:documentation>The current full name of the customer in the accounts receivable.</xs:documentation>
                      </xs:annotation>
                    </xs:element>
                    <xs:element name="Category" type="String10" minOccurs="0" maxOccurs="1">
                      <xs:annotation>
                        <xs:documentation>If exists, the current category the customer is a member of in the accounts receivable</xs:documentation>
                      </xs:annotation>
                    </xs:element>
                    <xs:element name="LanguageCode" type="ISO639" minOccurs="0" maxOccurs="1">
                      <xs:annotation>
                        <xs:documentation>If exists, the current differing language code according to iso 639 set for the customer in the accounts receivable.</xs:documentation>
                      </xs:annotation>
                    </xs:element>
                    <xs:element name="VatNo" type="VatNumber" minOccurs="0" maxOccurs="1">
                      <xs:annotation>
                        <xs:documentation>If exists, the current VAT registration number of the customer in the accounts receivable</xs:documentation>
                      </xs:annotation>
                    </xs:element>
                    <xs:element name="DistributionAddressInfo" minOccurs="1" maxOccurs="1">
                      <xs:annotation>
                        <xs:documentation>Containing the current distribution address information of the customer in the accounts receivable.</xs:documentation>
                      </xs:annotation>
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="Addresses" minOccurs="1" maxOccurs="1">
                            <xs:annotation>
                              <xs:documentation>Contains the current addresses of the customer in the accounts receivable.</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="Address" type="Address" minOccurs="1" maxOccurs="2"/>
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="E-MailAddress" type="Email" minOccurs="0" maxOccurs="1">
                            <xs:annotation>
                              <xs:documentation>If exists, the current e-mail of the customer in the accounts receivable.</xs:documentation>
                            </xs:annotation>
                          </xs:element>
                          <xs:element name="Cellphone" type="String15" minOccurs="0" maxOccurs="1">
                            <xs:annotation>
                              <xs:documentation>If exists, the current mobile number of the customer in the accounts receivable.</xs:documentation>
                            </xs:annotation>
                          </xs:element>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="LegalEntity" type="LegalEntity" use="optional">
                    <xs:annotation>
                      <xs:documentation>If exists the current legal entity of the customer in the accounts receivable.</xs:documentation>
                    </xs:annotation>
                  </xs:attribute>
                </xs:complexType>
              </xs:element>
              <xs:element name="ConsentEventInfo" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                  <xs:documentation>Containing changes/events concerning customer consents in the accounts receivable</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="ConsentEvent" type="ConsentEvent" minOccurs="0" maxOccurs="unbounded">
                      <xs:annotation>
                        <xs:documentation>Contains information about a consent event.</xs:documentation>
                      </xs:annotation>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="CustomerStatusEventInfo" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                  <xs:documentation>Containing changes/events concerning customer status in the accounts receivable </xs:documentation>
                </xs:annotation>
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="CustomerStatusEvent" type="CustomerStatusEvent" minOccurs="0" maxOccurs="unbounded">
                      <xs:annotation>
                        <xs:documentation>Contains information about a change of the customer status in the accounts receivable.</xs:documentation>
                      </xs:annotation>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="CustomerNotificationEventInfo" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                  <xs:documentation>Containing events concerning failed Disbursements</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="CustomerNotificationEvent" type="CustomerNotificationEvent" minOccurs="0" maxOccurs="unbounded">
                      <xs:annotation>
                        <xs:documentation>Containing events concerning failed Disbursement.</xs:documentation>
                      </xs:annotation>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="Version" type="Version" use="required">
        <xs:annotation>
          <xs:documentation>Versions supported by this schema</xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name="CreatedDateTime" type="xs:dateTime" use="required">
        <xs:annotation>
          <xs:documentation>The date and time when the file was created</xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name="CompanyNo" type="CompanyNumber" use="required">
        <xs:annotation>
          <xs:documentation>Your accounts receivable number at PayEx</xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name="CompanyName" type="xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The name of your company/accounts recievable at PayEx</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:complexType>
  </xs:element>

Version

  <xs:simpleType name="Version">
    <xs:restriction base="xs:string">
      <xs:enumeration value="1.0"/>
      <xs:enumeration value="1.1">
        <xs:annotation>
          <xs:documentation>Added new ConsentType EInvoiceB2CFI</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="1.2">
        <xs:annotation>
          <xs:documentation>Added new CustomerEventType CustomerNotificationEvent </xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="1.3">
        <xs:annotation>
          <xs:documentation>Added new CustomerStatusType BarringLevel</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

Identifier15

  <xs:simpleType name="Identifier15">
    <xs:restriction base="xs:string">
      <xs:pattern value="[a-zA-Z0-9äåöÄÅÖ&/_ -.]*"/>
      <xs:minLength value="1"/>
      <xs:maxLength value="15"/>
    </xs:restriction>
  </xs:simpleType>

ISO3166

  <xs:simpleType name="ISO3166">
    <xs:restriction base="xs:string">
      <xs:pattern value="[A-Z]*"/>
      <xs:minLength value="2"/>
      <xs:maxLength value="2"/>
    </xs:restriction>
  </xs:simpleType>

CompanyNumber

  <xs:simpleType name="CompanyNumber">
    <xs:restriction base="xs:string">
      <xs:pattern value="[0-9]*"/>
      <xs:minLength value="1"/>
      <xs:maxLength value="15"/>
    </xs:restriction>
  </xs:simpleType>

ISO639

  <xs:simpleType name="ISO639">
    <xs:restriction base="PXString">
      <xs:enumeration value="SV"/>
      <xs:enumeration value="NO"/>
      <xs:enumeration value="DA"/>
      <xs:enumeration value="FI"/>
      <xs:enumeration value="EN"/>
    </xs:restriction>
  </xs:simpleType>

String35

  <xs:simpleType name="String35">
    <xs:restriction base="PXString">
      <xs:maxLength
           value="35"/>
    </xs:restriction>
  </xs:simpleType>

Email

  <xs:simpleType name="Email">
    <xs:restriction base="PXString">
      <xs:maxLength
           value="60"/>
    </xs:restriction>
  </xs:simpleType>

String15

  <xs:simpleType name="String15">
    <xs:restriction base="PXString">
      <xs:maxLength value="15"/>
    </xs:restriction>
  </xs:simpleType>

ZipCode

  <xs:simpleType name="ZipCode">
    <xs:restriction base="xs:string">
      <xs:pattern value="[A-Z0-9\-]+"/>
      <xs:maxLength value="9"/>
    </xs:restriction>
  </xs:simpleType>

VatNumber

  <xs:simpleType name="VatNumber">
    <xs:restriction base="xs:string">
      <xs:pattern value="[A-Z]{2}.*"/>
      <xs:minLength value="7"/>
      <xs:maxLength value="14"/>
    </xs:restriction>
  </xs:simpleType>

String50

  <xs:simpleType name="String50">
    <xs:restriction base="xs:string">
      <xs:maxLength
           value="50"/>
    </xs:restriction>
  </xs:simpleType>

Address

  <xs:complexType name="Address">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" type="NameAddressString72" name="Addressee">
        <xs:annotation>
          <xs:documentation>Current full name of addressee</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StreetAddress" type="NameAddressString35" minOccurs="0" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>Current street address</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ZipCode" type="ZipCode" maxOccurs="1" minOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>Current zip code</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="City" type="NameAddressString27" minOccurs="1" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>Current city</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CoAddress" type="NameAddressString35" minOccurs="0" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>If exists current care of address</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CountryCode" type="ISO3166" minOccurs="1" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Current countrycode</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="AddressType" type="AddressType" use="required">
      <xs:annotation>
        <xs:documentation>Type of address</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

ConsentEvent

  <xs:complexType name="ConsentEvent">
    <xs:sequence>
      <xs:element type="ConsentType" name="ConsentType" minOccurs="1" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>The type of consent affected by the event/change</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ConsentEventDate" type="xs:date" minOccurs="1" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>The date when the event occurred</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Status" type="ConsentStatus" maxOccurs="1" minOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>The state of the consent due to the event</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

ConsentType

  <xs:simpleType name="ConsentType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="BGAGSE">
        <xs:annotation>
          <xs:documentation>Refers to a Swedish direct debit consent.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EInvoiceB2CSE">
        <xs:annotation>
          <xs:documentation>Refers to a Swedish B2C E-invoice consent.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BKAGNO">
        <xs:annotation>
          <xs:documentation>Refers to a Norwegian direct debit consent.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EInvoiceB2CNO">
        <xs:annotation>
          <xs:documentation>Refers to a Norwegian B2C E-invoice consent.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KivraSE">
        <xs:annotation>
          <xs:documentation>Refers to a Kivra digital distribution consent.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EInvoiceB2CFI">
        <xs:annotation>
          <xs:documentation>Refers to a Finnish B2C E-invoice consent.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="EInvoice20B2CNO">
        <xs:annotation>
          <xs:documentation>Refers to a Finnish B2C E-invoice consent.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

ConsentStatus

  <xs:simpleType name="ConsentStatus">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Active">
        <xs:annotation>
          <xs:documentation>The consent has been activated</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Cancelled">
        <xs:annotation>
          <xs:documentation>The consent has been deactivated/cancelled</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

CustomerStatusEvent

  <xs:complexType name="CustomerStatusEvent">
    <xs:sequence>
      <xs:element type="CustomerStatusType" name="CustomerStatusType" minOccurs="1" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>The type of status that has been affected by the event/change.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CustomerStatusEventDate" type="xs:date" minOccurs="1" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>The date when the event occurred</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Status" type="CustomerStatus" maxOccurs="1" minOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>The state of the customer status due to the event</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

CustomerNotificationEvent

  <xs:complexType name="CustomerNotificationEvent">
    <xs:sequence>
      <xs:element type="NotificationType" name="NotificationType" minOccurs="1" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>Reason for notification.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NotificationEventDate" type="xs:date" minOccurs="1" maxOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>The date when the event occurred</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Amount" type="Money" maxOccurs="1" minOccurs="1" nillable="false">
        <xs:annotation>
          <xs:documentation>Amount returned on failed disbursement</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

NotificationType

  <xs:simpleType name="NotificationType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="DisbursementReturn">
        <xs:annotation>
          <xs:documentation>Failed disbursement</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

Money

  <xs:simpleType name="Money">
    <xs:restriction base="xs:decimal">
      <xs:fractionDigits value="2"/>
      <xs:minInclusive value="-100000000"/>
      <xs:maxInclusive
           value="100000000"/>
    </xs:restriction>
  </xs:simpleType>

CustomerStatusType

  <xs:simpleType name="CustomerStatusType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Deceased">
        <xs:annotation>
          <xs:documentation>A status type that can be set on consumers</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BarringLevel">
        <xs:annotation>
          <xs:documentation>A status type that can be set on consumers based on current claimlevels</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

CustomerStatus

  <xs:simpleType name="CustomerStatus">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Active">
        <xs:annotation>
          <xs:documentation>The status has been activated on the customer.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="Cancelled">
        <xs:annotation>
          <xs:documentation>The status has been deactivted on the customer.</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

AddressType

  <xs:simpleType name="AddressType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="LegalAddress">
        <xs:annotation>
          <xs:documentation>Refers to the customers legal address</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="BillingAddress">
        <xs:annotation>
          <xs:documentation>Refers to a possible billing address</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

String10

  <xs:simpleType name="String10">
    <xs:restriction base="PXString">
      <xs:maxLength value="10"/>
    </xs:restriction>
  </xs:simpleType>

String30

  <xs:simpleType name="String30">
    <xs:restriction base="PXString">
      <xs:maxLength
           value="30"/>
    </xs:restriction>
  </xs:simpleType>

String25

  <xs:simpleType name="String25">
    <xs:restriction base="PXString">
      <xs:maxLength
           value="25"/>
    </xs:restriction>
  </xs:simpleType>

NameAddressString35

  <xs:simpleType name="NameAddressString35">
    <xs:restriction base="PXNameAddressString">
      <xs:maxLength
           value="35"/>
    </xs:restriction>
  </xs:simpleType>

NameAddressString72

  <xs:simpleType name="NameAddressString72">
    <xs:restriction base="PXNameAddressString">
      <xs:minLength value="1"/>
      <xs:maxLength
           value="72"/>
    </xs:restriction>
  </xs:simpleType>

NameAddressString27

  <xs:simpleType name="NameAddressString27">
    <xs:restriction base="PXNameAddressString">
      <xs:minLength value="1"/>
      <xs:maxLength
           value="27"/>
    </xs:restriction>
  </xs:simpleType>

PXString

  <xs:simpleType name="PXString">
    <xs:restriction base="xs:string">
      <xs:pattern value="[a-zA-Z0-9_:!;"#<>=?\[\]@{}´

 %-/À-ÖØ-öø-ú]*"/>
      <xs:minLength value="1"/>
    </xs:restriction>
  </xs:simpleType>

PXNameAddressString

  <xs:simpleType name="PXNameAddressString">
    <xs:restriction base="xs:string">
      <xs:pattern value="[a-zA-Z0-9_:!;"#<>=?\[\]@{}´

 %-/À-ÖØ-öø-úü]*"/>
    </xs:restriction>
  </xs:simpleType>

RegNo

  <xs:complexType name="RegNo">
    <xs:simpleContent>
      <xs:extension base="String15">
        <xs:attribute name="CountryCode" type="ISO3166" use="required"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

LegalEntity

  <xs:simpleType name="LegalEntity">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Private"/>
      <xs:enumeration value="Business"/>
    </xs:restriction>
  </xs:simpleType>

Created by Fredrik Nilsson on 2021/06/29 16:52