SAP Knowledge Base Article - Public

3800610 - eDocument Germany: Payment Terms (BT-20) Missing in Peppol/XRechnung E-Invoice for Specific Payment Term Configuration

Symptom

In SD billing documents using a specific payment term, the PaymentTerms/Note (BT-20) node is missing or empty in the Peppol/XRechnung XML output, while other invoices using different payment terms have BT-20 correctly populated. The issue is inconsistent — some payment terms work, others do not, even when they appear similarly configured.

Environment

SAP S/4HANA Cloud Public Edition

Reproducing the Issue

  1. Create an SD billing document (e.g., via VF01) using a payment term.
  2. Confirm the e-invoice is generated in eDocument Cockpit (Manage Electronic Documents).
  3. Download the Peppol XML output for this billing document.
  4. Observe that the cac:PaymentTerms / cbc:Note (BT-20) node is absent or empty.
  5. Repeat steps 1–4 using a different payment term and observe that BT-20 is populated correctly.

The contrast between steps 4 and 5 confirms that the issue is specific to particular payment term configurations.

Cause

The mapping of BT-20 is handled by method FILL_PAYMENT_TERMS in class CL_EDOC_MAP_UBL_SD_DE. The method follows three code paths based on the payment term configuration:

  • If percent1 or percent2 is greater than 0: cash discount information is mapped and BT-20 is populated correctly.
  • If all payment term parameters are empty (no conditions configured): the method falls to a secondary path where BT-20 is taken from the super class mapping and populated correctly.
  • If the payment term has partial configuration — specifically, Number of Days is filled but both percent fields are empty: the method reaches a condition check that is not fulfilled, and BT-20 is not mapped. The tag is absent from the XML output.

Only payment terms in the third configuration trigger the issue, which is why BT-20 appears for some payment terms but not others.

Resolution

Please follow the steps below to resolve the issue:

  1. In Manage Your Solution, search for Maintain Terms of Payment (SSCUI 102934) and open the configuration activity.
  2. Locate the affected payment term and check its configuration: confirm that Number of Days is filled and that both percent1 and percent2 are empty.
  3. Apply one of the following corrections:
    1. Option A: Fill in the percent fields (percent1 / percent2) to complete the payment term configuration.
    2. Option B: Remove the Number of Days parameter if it is not required for this payment term.
  4. Save the configuration.
  5. Create a new SD billing document using the corrected payment term and verify that BT-20 is now populated in the Peppol XML output.

See Also

Keywords

eDocument, Germany, DE, Peppol, XRechnung, BT-20, Payment Terms, PaymentTerms, cbc:Note, Missing, Empty, Not Populated, Not Mapped, CL_EDOC_MAP_UBL_SD_DE, FILL_PAYMENT_TERMS, SSCUI 102934, Maintain Terms of Payment, OBB8, VF01, percent1, percent2, Number of Days , KBA , CA-GTF-CSC-EDO-DE , Germany , Problem

Product

SAP S/4HANA Cloud Public Edition all versions