# BR-DE-23-b Een overschrijving mag geen betaalkaart- (BG-18) of incassogegevens (BG-19) bevatten

Volgens de Duitse XRechnung-regel BR-DE-23-b mag een betaalmiddel met een overschrijvingscode in BT-81 (30 of 58) niet ook betaalkaartgegevens (BG-18) of incassogegevens (BG-19) bevatten. XRechnung koppelt elke betaalmiddelcode aan één betaalgroep: BR-DE-23 regelt de overschrijving, BR-DE-24 de betaalkaart en BR-DE-25 de incasso. In UBL meldt de validator de fout wanneer cac:CardAccount of cac:PaymentMandate in hetzelfde cac:PaymentMeans staat. In CII meldt hij de fout wanneer het betaalmiddel ram:ApplicableTradeSettlementFinancialCard of ram:PayerPartyDebtorFinancialAccount/ram:IBANID bevat, of wanneer de betalingsgegevens in de factuurkop een mandaatkenmerk (ram:DirectDebitMandateID, BT-89) of een incassant-ID (ram:CreditorReferenceID, BT-90) bevatten. KoSIT markeert de fout als fataal.

## Probleembeschrijving

> **FOUT**: Duitse XRechnung-regel (KoSIT, BR-DE) · XRechnung 3.0

## Context en betekenis

De fout komt meestal uit ERP-sjablonen die alle betaalvelden vullen vanuit de klantgegevens, bijvoorbeeld een opgeslagen SEPA-machtiging of het incassant-ID, terwijl de factuur per overschrijving wordt betaald. In UBL beperkt de controle zich tot het cac:PaymentMeans met de overschrijvingscode. In CII staan BT-89 en BT-90 in de factuurkop; een CII-factuur met een overschrijving (30 of 58) schendt BR-DE-23-b dus zodra die ook een mandaatkenmerk of incassant-ID bevat.

## Oplossing

Bepaal welk betaalmiddel de factuur aanbiedt en exporteer alleen de bijbehorende groep. Behoud bij een overschrijving BG-17 met de rekening in BT-84 en verwijder kaart- en mandaatgegevens: verwijder in UBL cac:CardAccount en cac:PaymentMandate uit de <cac:PaymentMeans> met code 30 of 58. Verwijder in CII ram:ApplicableTradeSettlementFinancialCard en ram:PayerPartyDebtorFinancialAccount uit het betaalmiddel en haal ram:DirectDebitMandateID en ram:CreditorReferenceID weg uit de betalingsgegevens in de factuurkop. Betaalt de koper via SEPA-incasso, zet BT-81 dan op 59 en stuur BG-19 in plaats van BG-17.

- [XML valideren](/nl/xrechnung-validator?source=resource&rule=BR-DE-23-b)
- [Factuur converteren](/nl/pdf-to-xrechnung?source=resource&rule=BR-DE-23-b)

## Geldige voorbeelden

- BT-81 = 58 met BG-17 (IBAN in BT-84) en zonder kaart- of mandaatgegevens in hetzelfde betaalmiddel
- CII: TypeCode 30 met BG-17 en zonder ram:DirectDebitMandateID of ram:CreditorReferenceID in de betalingsgegevens van de factuurkop

## Ongeldige voorbeelden

- UBL: cac:PaymentMeans met code 58 bevat cac:PayeeFinancialAccount en daarnaast cac:PaymentMandate met een mandaatkenmerk
- CII: betaalmiddel met TypeCode 58, maar ram:CreditorReferenceID (BT-90) in de factuurkop is gevuld vanuit de stamgegevens
- UBL: code 30 samen met cac:CardAccount met de laatste vier cijfers van de kaart

## Codevoorbeelden

### Geldig XML
```
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>
  <cac:PayeeFinancialAccount>
    <cbc:ID>DE89370400440532013000</cbc:ID>
  </cac:PayeeFinancialAccount>
</cac:PaymentMeans>
```

### Ongeldig XML
```
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>
  <cac:PayeeFinancialAccount>
    <cbc:ID>DE89370400440532013000</cbc:ID>
  </cac:PayeeFinancialAccount>
  <cac:PaymentMandate>
    <cbc:ID>MANDATE-2026-001</cbc:ID>
  </cac:PaymentMandate>
</cac:PaymentMeans>
```

## Betrokken velden

- [BT-81 Typecode betaalmiddel](/resources/xrechnung/bt-81-payment-means-type-code)
- [BG-18 Betaalkaartgegevens](/resources/xrechnung/bt-87-payment-card-primary-account-number)
- [BG-19 Incasso](/resources/xrechnung/bt-89-mandate-reference-identifier)

## Gerelateerde regels

- [BR-DE-23-a](/resources/kosit-validator-errors/br-de-23-a-credit-transfer-requires-credit-transfer-group)
- [BR-DE-30](/resources/kosit-validator-errors/br-de-30-direct-debit-requires-creditor-identifier)
- [BR-DE-31](/resources/kosit-validator-errors/br-de-31-direct-debit-requires-debited-account)
- [PEPPOL-EN16931-R061](/resources/kosit-validator-errors/peppol-en16931-r061-direct-debit-mandate-reference-required)

## Validatietools

- [Officiële KoSIT-validator](https://github.com/itplr-kosit/validator): Draai de officiële KoSIT-validator met de XRechnung-configuratie om EN 16931- en XRechnung-regels te controleren.
- [PDF naar XRechnung converteren](/pdf-to-xrechnung): Vind validatiefouten tijdens de conversie en controleer elke correctie.

## Gerelateerde bronnen

- [Officiële specificatie](https://xeinkauf.de/xrechnung/)
- [Testsuite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Alle validatiefouten](/resources/kosit-validator-errors): Overzicht van de hier uitgelegde validatieregels uit EN 16931, XRechnung en Peppol.
