# BR-DE-23-a

Quoted from a public specification. This page is not a validator, and it is not tax, legal, or accounting advice.

- Country: DE
- Syntax: UBL
- Severity: fatal
- Statement language: de
- Last verified: 2026-10-17

## Official statement

> [BR-DE-23-a] Wenn BT-81 "Payment means type code" einen Schlüssel für Überweisungen enthält (30, 58), muss BG-17 "CREDIT TRANSFER" übermittelt werden.

Source: https://github.com/itplr-kosit/xrechnung-schematron/blob/v2.6.0/src/validation/schematron/ubl/XRechnung-UBL-validation.sch

XRechnung Schematron 2.6.0 (itplr-kosit/xrechnung-schematron tag v2.6.0), UBL invoice and credit note

Severity note: fatal, from the schematron flag attribute on tag v2.6.0. The file has BR-DE-23-a and BR-DE-23-b, not a single rule id BR-DE-23.

## Plain-language reading

If the payment means type code (BT-81) is a credit-transfer code (30 or 58), the credit-transfer group BG-17 must be transmitted. This rule does not check the IBAN characters.

## What to change

When BT-81 is 30 or 58, include cac:PayeeFinancialAccount (BG-17).

## Illustration

Illustration of the condition in the official statement. Not an example published by the source.

**Fails the stated condition.** BT-81 is 30 or 58 and cac:PayeeFinancialAccount is absent.

**Passes the stated condition.** BT-81 is 30 or 58 and cac:PayeeFinancialAccount is present.

## Published context and test

Copied from the source. Not reimplemented on this page.

```
/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')] | /cn:CreditNote/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')]
```

```
cac:PayeeFinancialAccount
```

[All rule notes](https://einvoicegoblin.com/rules/index.md) · [JSON](https://einvoicegoblin.com/rules/BR-DE-23-a.json) · [HTML](https://einvoicegoblin.com/rules/BR-DE-23-a/) · [llms.txt](https://einvoicegoblin.com/llms.txt) · [Invoice page](https://einvoicegoblin.com/) · [Privacy](https://einvoicegoblin.com/privacy.html)
