{
  "id": "BR-61",
  "country": "EU",
  "syntax": "ubl",
  "group": "document",
  "severity": "fatal",
  "severity_note": "fatal, from the Flag column of the Peppol BIS Billing 3.0 UBL rules index retrieved 2026-10-18.",
  "spec": "Peppol BIS Billing 3.0, May 2026 release, EN 16931 model bound to UBL",
  "statement": "If the Payment means type code (BT-81) means SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier (BT-84) shall be present.",
  "statement_lang": "en",
  "context": "cac:PaymentMeans",
  "test": "(exists(cac:PayeeFinancialAccount/cbc:ID) and ((normalize-space(cbc:PaymentMeansCode) = '30') or (normalize-space(cbc:PaymentMeansCode) = '58') )) or ((normalize-space(cbc:PaymentMeansCode) != '30') and (normalize-space(cbc:PaymentMeansCode) != '58'))",
  "meaning": "If the Payment means type code (BT-81) means SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account identifier (BT-84) must be present. The message starts with \"If\" and says \"shall be present\". It capitalizes \"Local credit transfer\" and \"Non-SEPA international credit transfer\". It ends with a period. It does not say \"shall be provided\" or \"shall specify\". The context is the payment means. The published test checks that a payee financial account id exists when the payment means code is 30 or 58, and it passes when the code is neither. The code comparisons have spaces around = and !=. The test keeps a single space before the closing parenthesis after the 58 comparison. That single space is not a repeated space. The positive branch calls exists. The other branch does not. It is not a non-blank check.",
  "fix": "When the payment means type code is 30 or 58, send a payment account identifier (BT-84) as the payee financial account id.",
  "example_fail": "The payment means code is 30 or 58, and no payee financial account id exists.",
  "example_pass": "The payment means code is 30 or 58 and a payee financial account id exists, or the code is neither 30 nor 58.",
  "example_note": "Illustration of the condition in the official statement. Not an example published by the source.",
  "source_url": "https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/BR-61/",
  "source_retrieved": "2026-10-18",
  "last_verified": "2026-10-18"
}
