ConnectingEurope / eInvoicing-EN16931

Validation artefacts for the European eInvoicing standard EN 16931
Other
127 stars 52 forks source link

The mappning of bank assigned creditor identifier [UBL] #104

Closed SLennartsson closed 5 years ago

SLennartsson commented 5 years ago

BT-90, Bank assigned creditor identifier, has cardinality 0..1 in the EN. Through the syntax binding to UBL, BT-90 may be mapped to • Either AccountingSupplierParty/Party/PartyIdentification>/ID with schemeID=”SEPA” • Or Payee/PartyIdentification>/ID with schemeID=”SEPA”.

There is no validation rule to block that bank assigned creditor identifiers are given in both places at the same time.

The following excerpt generates no validation signal at all:

…
    <cac:AccountingSupplierParty>
        <cac:Party>
            <cbc:EndpointID schemeID="0007">1234567890</cbc:EndpointID>
            <cac:PartyIdentification>
                <cbc:ID schemeID="SEPA">111333555777</cbc:ID >
            </cac:PartyIdentification>
…
    <cac:PayeeParty>
        <cac:PartyIdentification>
            <cbc:ID schemeID="SEPA">2224446660</cbc:ID >
        </cac:PartyIdentification>
        <cac:PartyName>
            <cbc:Name>Finansiell Support u.p.a.</cbc:Name>
        </cac:PartyName>
        <cac:PartyLegalEntity>
            <cbc:CompanyID schemeID="0007">5566778899</cbc:CompanyID>
        </cac:PartyLegalEntity>
    </cac:PayeeParty>
…

Request: Introduce a fatal validation rule to be triggered is more than one bank assigned creditor identifier is encountered in the document.

oriol commented 5 years ago

Solved in UBL-SR-29 firing the rule as fatal.

sarafacchinettiIC commented 5 years ago

I believe this was solved by UBL-SR-41 (as mentioned in https://github.com/CenPC434/validation/issues/92 )

sarafacchinettiIC commented 5 years ago

But I still have a doubt on this. Is this correct when BT-90 refers to the Payee?

<cac:PayeeParty><!--BG-10-->
    <cac:PartyIdentification>
      <cbc:ID schemeID="0180" >Payee identifier </cbc:ID><!--BT-60, BT-60-1-->
    </cac:PartyIdentification>

    <cac:PartyIdentification>
     <cbc:ID schemeID="SEPA">Bank account identifier referring to the payee </cbc:ID><!--BT-90--> <!--2 warnings -->
    </cac:PartyIdentification>
sarafacchinettiIC commented 5 years ago

Why not using for mapping the BT-90 the /Invoice/cac:PaymentMeans/cac:PaymentMandate/cac:PayeeFinancialAccount/cbc:ID?

sarafacchinettiIC commented 5 years ago

I'll open a new issue with relation to ubl BT-90 mapping