Specify the payment means for the payment instruction

Error BR-49 EN 16931

A Payment instruction (BG-16) shall specify the Payment means type code (BT-81).

Mandatory rule: As long as it is violated, the invoice is invalid and will be rejected by validators.
What is wrong

ram:TypeCode is missing from ram:SpecifiedTradeSettlementPaymentMeans. The payment means for the instruction is therefore not specified.

What the rule means

Each payment instruction must include a code specifying the payment means used.

Affected fields BG-16 BT-81
Please specify the payment means for the payment instruction

The payment means is missing from a payment instruction. Add the payment means code to complete the instruction.

What to do
  1. Add ram:TypeCode to ram:SpecifiedTradeSettlementPaymentMeans.
  2. Check the payment instruction through PaymentMeans.
  3. Generate the invoice again and validate it again.
What it looks like
✗ Triggers the message
<ram:SpecifiedTradeSettlementPaymentMeans/>
✓ Correct
<ram:SpecifiedTradeSettlementPaymentMeans>
  <ram:TypeCode>30</ram:TypeCode>
</ram:SpecifiedTradeSettlementPaymentMeans>
Check in FactoorSharp
  • FacturXInvoice.PaymentMeans (BG-16; ID: BT-81)
  • PaymentMeans.TypeCode (SpecifiedPaymentMeans: BT-81)
  • FacturXInvoice.DebitorBankAccounts (BG-16)
Technical details

In the ram:SpecifiedTradeSettlementPaymentMeans context, the XPath checks whether the child element ram:TypeCode is present.

Where the rule applies

The rule applies to each ram:SpecifiedTradeSettlementPaymentMeans payment instruction.

Context (rule/@context)
//ram:SpecifiedTradeSettlementPaymentMeans
Test expression (assert/@test)
(ram:TypeCode)