# PEPPOL-EN16931-R010 Buyer electronic address must be provided for Peppol routing

Under Peppol rule PEPPOL-EN16931-R010, every invoice in Peppol BIS Billing 3.0 must contain the buyer electronic address in BT-49 (cbc:EndpointID). R010 checks only that this address is present; the schemeID attribute (BT-49-1) is checked by BR-63, and its value must come from the Electronic Address Scheme (EAS) code list (BR-CL-25). Examples are "0088" for a GS1 Global Location Number (GLN), "0204" for a German Leitweg-ID, "0192" for a Norwegian organisation number, "9944" for a Dutch VAT number, "0208" for a Belgian enterprise number or "0009" for a French SIRET. Peppol access points use the buyer EndpointID to query the SML and SMP and locate the recipient’s access point.

## Problem Description

> **ERROR**: Peppol BIS Billing 3.0 rule (OpenPeppol)

## Context and Significance

Without BT-49 the sending Peppol access point cannot look up the recipient in the SML and SMP, so the invoice fails validation before transmission. A missing schemeID on an existing EndpointID is reported separately by BR-63. The error usually appears when the buyer’s Peppol identifier is not maintained in the customer master data.

## Solution

In your customer master data, store the buyer Peppol participant identifier and its EAS scheme. In UBL 2.1, add <cbc:EndpointID schemeID="0204">04011000-12345-03</cbc:EndpointID> (or schemeID="0088" for a GLN) under <cac:AccountingCustomerParty><cac:Party>. Peppol BIS Billing 3.0 is exchanged as UBL 2.1.

- [Validate XML](/en/xrechnung-validator?source=resource&rule=PEPPOL-EN16931-R010)
- [Convert invoice](/en/pdf-to-xrechnung?source=resource&rule=PEPPOL-EN16931-R010)

## Valid Examples

- Buyer electronic address with BT-49 = "04011000-12345-03" and schemeID = "0204" (German Leitweg-ID)
- Buyer electronic address with BT-49 = "4012345000018" and schemeID = "0088" (GS1 Global Location Number)

## Invalid Examples

- cac:AccountingCustomerParty/cac:Party contains party name and address but completely omits cbc:EndpointID
- The buyer Peppol identifier is not maintained in the customer master data, so no cbc:EndpointID is exported (an EndpointID without schemeID, such as <cbc:EndpointID>04011000-12345-03</cbc:EndpointID>, is reported by BR-63 instead)

## Code Examples

### Valid XML
```
<cac:Party>
  <cbc:EndpointID schemeID="0204">04011000-12345-03</cbc:EndpointID>
  <cac:PartyName><cbc:Name>Bundesministerium des Innern</cbc:Name></cac:PartyName>
</cac:Party>
```

### Invalid XML
```
<cac:Party>
  <cac:PartyName><cbc:Name>Bundesministerium des Innern</cbc:Name></cac:PartyName>
</cac:Party>
```

## Affected Fields

- [BT-49 Buyer electronic address](/resources/xrechnung/bt-49-buyer-electronic-address)
- [BT-49-1 Buyer electronic address identification scheme](/resources/xrechnung/bt-49-buyer-electronic-address)
- [BG-7 Buyer](/resources/xrechnung/bt-44-buyer-name)

## Related Rules

- [PEPPOL-EN16931-R020](/resources/kosit-validator-errors/peppol-en16931-r020-seller-electronic-address-required)
- [BR-63](/resources/kosit-validator-errors/br-63-buyer-electronic-address-scheme-required)

## Validation Tools

- [Official KoSIT Validator](https://github.com/itplr-kosit/validator): Run the official KoSIT validator with the XRechnung configuration to check EN 16931 and XRechnung rules.
- [Convert PDF to XRechnung](/pdf-to-xrechnung): Find validation errors during conversion and review each correction.

## Related Resources

- [Official Specification](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-peppol/)
- [Test Suite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [All validation errors](/resources/kosit-validator-errors): Overview of the EN 16931, XRechnung and Peppol validation rules explained here.
