---
id: change/bcapps/8429
type: change
title: "#8429 E-Document DE: map Payment Method to PEPPOL payment means codes, add SEPA Direct Debit export support"
summary: Payment methods can now be mapped to standard PEPPOL payment means codes, enabling SEPA Direct Debit support in German E-Document formats with automatic fallback to SEPA credit transfer for compatibility.
tier: official
language: en
tags:
  - feature
  - main
  - bc30
  - codeunit de payment means helper
  - codeunit de xml document validator
  - codeunit export xrechnung document
  - codeunit xrechnung format
  - codeunit export zugferd document
  - codeunit zugferd format
system: integration
review:
  state: reviewed
  by: opus
  at: "2026-10-08T02:02:50.370Z"
  flags: []
generated:
  at: "2026-10-08T01:26:53.141Z"
  pipeline: 0.2.0
  prompts:
    extract-change: 1
  input_hash: c30a08567c20b0cdd5fdfa331ad900e9012c8708
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/pull/8429
    title: "microsoft/BCApps#8429: E-Document DE: map Payment Method to PEPPOL payment means codes, add SEPA Direct Debit export support"
    date: "2026-10-02"
    commit: c30a08567c20b0cdd5fdfa331ad900e9012c8708
    t: null
    quote: null
links:
  learn: []
  objects:
    - object/codeunit/11043-de
    - object/codeunit/11044-de
    - object/codeunit/13916-de
    - object/codeunit/13914-de
    - object/codeunit/13917-de
    - object/codeunit/13920-de
    - object/table/289
    - object/page/427
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes: []
number: 8429
repo: microsoft/BCApps
source_id: bcapps-prs
url: https://github.com/microsoft/BCApps/pull/8429
kind: pr
base_branch: main
major: "30"
merged_at: "2026-10-02T22:34:03Z"
author: pri-kise
author_type: User
community_contribution: true
labels:
  - "ADO: Sync"
  - From Fork
  - "Team: Finance"
change_class: code
change_kind: feature
behavior_change: true
breaking: false
files:
  count: 103
  additions: 29673
  deletions: 47
  al: 14
apps:
  - Base Application
  - EDocumentDE
objects_touched:
  - key: codeunit/11043
    page: codeunit/11043-de
    type: codeunit
    id: 11043
    name: DE Payment Means Helper
    app: EDocumentDE
    status: added
  - key: codeunit/11044
    page: codeunit/11044-de
    type: codeunit
    id: 11044
    name: DE XML Document Validator
    app: EDocumentDE
    status: added
  - key: codeunit/13916
    page: codeunit/13916-de
    type: codeunit
    id: 13916
    name: Export XRechnung Document
    app: EDocumentDE
    status: modified
  - key: codeunit/13914
    page: codeunit/13914-de
    type: codeunit
    id: 13914
    name: XRechnung Format
    app: EDocumentDE
    status: modified
  - key: codeunit/13917
    page: codeunit/13917-de
    type: codeunit
    id: 13917
    name: Export ZUGFeRD Document
    app: EDocumentDE
    status: modified
  - key: codeunit/13920
    page: codeunit/13920-de
    type: codeunit
    id: 13920
    name: ZUGFeRD Format
    app: EDocumentDE
    status: modified
  - key: table/289
    page: table/289
    type: table
    id: 289
    name: Payment Method
    app: Base Application
    status: modified
  - key: page/427
    page: page/427
    type: page
    id: 427
    name: Payment Methods
    app: Base Application
    status: modified
objects_unjoined:
  - path: src/Layers/ES/BaseApp/Bank/BankAccount/PaymentMethods.Page.al
    status: modified
    reason: not-in-snapshot
  - path: src/Layers/IT/BaseApp/Bank/BankAccount/PaymentMethods.Page.al
    status: modified
    reason: not-in-snapshot
  - path: src/Layers/NA/BaseApp/Bank/BankAccount/PaymentMethods.Page.al
    status: modified
    reason: not-in-snapshot
obsoletions: []
backports: []
fixes_issues: []
work_items:
  - 642368
systems:
  - integration
  - finance
quote: null
joined_against:
  major: "30"
  commit: f18567dc08e2bd162bf192e1da4d714b57eb099f
---

# #8429 E-Document DE: map Payment Method to PEPPOL payment means codes, add SEPA Direct Debit export support

> Payment methods can now be mapped to standard PEPPOL payment means codes, enabling SEPA Direct Debit support in German E-Document formats with automatic fallback to SEPA credit transfer for compatibility.

[Pull request](https://github.com/microsoft/BCApps/pull/8429) · merged into `main` (BC30) on 2026-10-02 by pri-kise (community contribution) · 103 files (+29673 -47), 14 AL · feature · tier official · reviewed (checked by Opus)

## What changed

- New PEPPOL Payment Means Code field on Payment Method table lets admins assign EN 16931 codes to each payment method
- ZUGFeRD and XRechnung exports use mapped codes and include payee/payer IBAN, BIC, and mandate details for SEPA direct debit
- Fallback to code 58 (SEPA credit transfer) when no code is assigned preserves existing behavior
- New XML Document Validator codeunit validates XRechnung and ZUGFeRD output against official UBL and CII schemas
- Events allow third-party apps to handle additional payment means requiring custom XML nodes
- Behaviour changes for users or extensions.

## AL objects touched

- [Codeunit 11043 "DE Payment Means Helper"](../../objects/codeunit/11043-de.md), EDocumentDE (DE layer): added
- [Codeunit 11044 "DE XML Document Validator"](../../objects/codeunit/11044-de.md), EDocumentDE (DE layer): added
- [Codeunit 13916 "Export XRechnung Document"](../../objects/codeunit/13916-de.md), EDocumentDE (DE layer): modified
- [Codeunit 13914 "XRechnung Format"](../../objects/codeunit/13914-de.md), EDocumentDE (DE layer): modified
- [Codeunit 13917 "Export ZUGFeRD Document"](../../objects/codeunit/13917-de.md), EDocumentDE (DE layer): modified
- [Codeunit 13920 "ZUGFeRD Format"](../../objects/codeunit/13920-de.md), EDocumentDE (DE layer): modified
- [Table 289 "Payment Method"](../../objects/table/289.md), Base Application: modified
- [Page 427 "Payment Methods"](../../objects/page/427.md), Base Application: modified
- `src/Layers/ES/BaseApp/Bank/BankAccount/PaymentMethods.Page.al`: modified, not in the BC30 snapshot
- `src/Layers/IT/BaseApp/Bank/BankAccount/PaymentMethods.Page.al`: modified, not in the BC30 snapshot
- `src/Layers/NA/BaseApp/Bank/BankAccount/PaymentMethods.Page.al`: modified, not in the BC30 snapshot

## Context

- Work items: AB#642368
- Labels: ADO: Sync, From Fork, Team: Finance
- Systems: integration, finance

Source: metadata of a merged pull request in microsoft/BCApps (bcapps): title, labels, changed paths and counts, with a summary in our words. No source text and no description beyond one short quote (D10, D61).
