PEPPOL-EN16931-R061Mandate reference MUST be provided for direct debit.

Official rule text

For direct debit the mandate reference must be provided — the identifier of the mandate under which the payer agreed to the collection.

Severity
Error
Applies to
CII, UBL
Rule set
v2026-08-31
Checked on

Written and checked against the official KoSIT rule set by Dmytro Yalanskyi, NormAPI.

Why does PEPPOL-EN16931-R061 happen?

The mandate lives with the payment provider while the invoice is built as a bare request for payment. The reference exists, but in a different system from the one producing the document. The Peppol rule fires on two payment means codes, 49 and 59, while the German direct-debit rules listen only for 59: an invoice carrying code 49 trips this one and not BR-DE-25-a. It also wants the reference itself rather than merely the group — an empty cac:PaymentMandate satisfies BR-DE-25-a and fails here.

What the validator checks

The expression the official KoSIT rule set evaluates — not paraphrased, but read from the Schematron file it ships. UBL and CII address different document trees, so the same rule reads differently in each.

UBL
cac:PaymentMandate/cbc:ID
CII
../ram:SpecifiedTradePaymentTerms/ram:DirectDebitMandateID

Source: rule set v2026-08-31

How do you fix PEPPOL-EN16931-R061?

Carry the mandate reference into BT-89: cac:PaymentMeans/cac:PaymentMandate/cbc:ID in UBL, ram:SpecifiedTradePaymentTerms/ram:DirectDebitMandateID in CII. On the German path BR-DE-25-a applies as well.

In the XML

A UBL fragment. The CII path is named above — same change, different element names.

Fails
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>59</cbc:PaymentMeansCode>
  <cac:PaymentMandate>
    <cac:PayerFinancialAccount>
      <cbc:ID>DE02120300000000202051</cbc:ID>
    </cac:PayerFinancialAccount>
  </cac:PaymentMandate>
</cac:PaymentMeans>
Fixed
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>59</cbc:PaymentMeansCode>
  <cac:PaymentMandate>
    <cbc:ID>MANDAT-2026-0007</cbc:ID>
    <cac:PayerFinancialAccount>
      <cbc:ID>DE02120300000000202051</cbc:ID>
    </cac:PayerFinancialAccount>
  </cac:PaymentMandate>
</cac:PaymentMeans>

Related rules

NormAPI provides technical validation, not tax or legal advice.