errorbusinessPeppol BIS 3.0

PEPPOL-EN16931-R061:Missing direct debit mandate reference

Fix: This requires user input to resolve. Provide the correct value for `cbc:ID` (BT-89). Provide the required value in the free validator.

When payment is by direct debit (SEPA or other), the invoice must include the mandate reference number. This is the unique identifier of the agreement that authorizes the seller to collect payment from the buyer's bank account.

Severity
Fatal
Rule set
Peppol BIS 3.0
Country
All EU
Fix type
INPUT REQUIRED
Confidence
85%
Category
payment

Engine Classification

Business data required · Explicit input workflow · No assumptions made

Required input: Direct Debit Mandate Reference

What is PEPPOL-EN16931-R061?

PEPPOL-EN16931-R061 is a fatal validation rule defined in the Peppol BIS 3.0 specification. It validates the ID (BT-89) must be present. element under PaymentMandate > ID — Peppol rule PEPPOL-EN16931-R061. When PaymentMeansCode = 59 (direct debit), PaymentMandate in the UBL invoice XML.

When this rule fires, the invoice is rejected by Peppol access points and never reaches the buyer.

Target path: XPath: cac:PaymentMeans/cac:PaymentMandate/cbc:ID — Peppol rule PEPPOL-EN16931-R061. When PaymentMeansCode = 59 (direct debit), PaymentMandate/ID (BT-89) must be present.

Why This Error Matters

Invoice will be rejected by PEPPOL validation. Direct debit requires mandate reference for payment processing.

PEPPOL-EN16931-R061 is a hard failure — the invoice must be corrected and re-sent before it can reach the recipient.

Without the mandate reference, the buyer's bank cannot match the direct debit request to the authorization. The payment will fail.

Validator Behavior

  • ·Causes invoice rejection
  • ·Rejected by PEPPOL Access Points
  • ·Error returned: PEPPOL-EN16931-R061
  • ·Specification: Peppol BIS 3.0

How to Fix It

1.

Find the SEPA mandate

Check your bank records for the SEPA Direct Debit mandate signed by this customer. It has a unique mandate reference number.

2.

Enter the reference

Add the mandate reference number (e.g. MANDATE-2024-001 or your bank's format).

3.

Alternative: change payment method

If you do not use direct debit, change the PaymentMeansCode to a different method (e.g. 30 for credit transfer).

Before / After

Failing XML
<cac:PayerFinancialAccount>
  <!-- cbc:ID is missing -->
</cac:PayerFinancialAccount>
Corrected XML
<cac:PayerFinancialAccount>
  <cbc:ID>valid-value</cbc:ID>
</cac:PayerFinancialAccount>

Technical Reference

XPathXPath: cac:PaymentMeans/cac:PaymentMandate/cbc:ID — Peppol rule PEPPOL-EN16931-R061. When PaymentMeansCode = 59 (direct debit), PaymentMandate/ID (BT-89) must be present.
SpecPeppol BIS 3.0
StrategyThe mandate reference is a contractual identifier that only the invoice issuer can provide

Common Causes

  • ·Direct debit configured without mandate reference
  • ·SEPA mandate not linked in invoicing software
  • ·Using payment code 59 but payment is actually credit transfer

Seeing this in production? The API handles PEPPOL-EN16931-R061 automatically. See the fix response →

Commonly Seen In

All invoicing software using SEPA Direct Debit

Frequently Asked Questions

R061 requires a mandate reference whenever the payment means code is 49 or 59 (direct debit). This is a SEPA compliance requirement — every direct debit must reference the authorization mandate signed by the buyer.

Not fully. The mandate reference is a real-world identifier that must come from your payment records. However, if your system stores mandate references linked to customer accounts, it can be looked up and inserted automatically during invoice generation.

Your ERP is likely setting the wrong payment means code. Change PaymentMeansCode from 49/59 to the correct value: 30 for credit transfer, 58 for SEPA credit transfer, or 1 for not defined.

Related Errors

Related Content

Last updated: 31 March 2026

Share this guide:

Validate your invoice

Drop your XML here to check for PEPPOL-EN16931-R061

Fix PEPPOL-EN16931-R061 with guided input

Upload your invoice and we'll ask for the missing data, then apply a safe, auditable fix.