BR-DE-23-bWenn BT-81 "Payment means type code" einen Schlüssel für Überweisungen enthält (30, 58), dürfen BG-18 und BG-19 nicht übermittelt werden.

Official rule text

For a credit transfer (BT-81 with code 30 or 58) no card data (BG-18) and no direct-debit data (BG-19) may sit beside it. BR-DE-23-a is its counterpart and requires the matching group, BG-17.

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 BR-DE-23-b happen?

The system always writes every payment detail it has — say, the customer's stored direct-debit mandate, although this particular invoice is to be paid by transfer. The two syntaxes draw the line differently: in UBL the expression looks only at the children of the same cac:PaymentMeans, while in CII two of the three direct-debit checks start at the document root. An invoice offering two payment routes — a transfer alongside a direct debit with its mandate — therefore passes in UBL and fails in CII.

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
not(cac:CardAccount) and not(cac:PaymentMandate)
CII
not(ram:ApplicableTradeSettlementFinancialCard) and not(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradePaymentTerms/ram:DirectDebitMandateID or /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:CreditorReferenceID or ram:PayerPartyDebtorFinancialAccount/ram:IBANID)

Source: rule set v2026-08-31

How do you fix BR-DE-23-b?

For each payment route transmit only the group that belongs to it: with 30 and 58, BG-17 alone. Drop card and mandate data — or fix the code if the invoice is in fact collected by direct debit. In CII that is not enough: as long as a transfer is present, no mandate or creditor reference may appear anywhere in the document.

In the XML

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

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

Related rules

NormAPI provides technical validation, not tax or legal advice.