SIX_QR_CODE_REJECTION banking protocol_error ai_generated true

AI tells a Swiss freelancer to issue invoices with QR-IBAN without mentioning that the QR bill requires a specific barcode format (Swiss QR Code) for processing

ID: banking/qr-iban-barcode-requirement

Also available as: JSON · Markdown · 中文
80%Fix Rate
83%Confidence
1Evidence
2024-09-10First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
Swiss QR Code v2.2 active
SIX Interbank Clearing 2024 active
ISO 20022 Swiss Implementation 2023 active

Root Cause

Swiss QR-IBANs (starting with '30' in the account number) mandate the use of the Swiss QR Code (ISO 20022) with a specific data structure (creditor reference, amount, etc.); invoices without the correct QR barcode are rejected by Swiss banks (SIX Interbank Clearing).

generic

中文

瑞士QR-IBAN(账号以'30'开头)强制要求使用瑞士QR码(ISO 20022),并带有特定数据结构(债权人参考号、金额等);没有正确QR条码的发票会被瑞士银行(SIX Interbank Clearing)拒绝。

Official Documentation

https://www.six-group.com/en/products-services/banking-services/standardization/iso-20022.html

Workarounds

  1. 90% success Use the official Swiss QR Code generator library (https://github.com/swiss-qr-code/swiss-qr-code) to create invoices; example in Python: from swiss_qr_code import generate_qr; generate_qr(iban='CH4431999123000889012', amount=100.50, reference='RF18539007547034').
    Use the official Swiss QR Code generator library (https://github.com/swiss-qr-code/swiss-qr-code) to create invoices; example in Python: from swiss_qr_code import generate_qr; generate_qr(iban='CH4431999123000889012', amount=100.50, reference='RF18539007547034').
  2. 85% success Integrate with a Swiss e-billing platform like Twint or BillPay which automatically generates compliant QR codes.
    Integrate with a Swiss e-billing platform like Twint or BillPay which automatically generates compliant QR codes.
  3. 80% success Verify the QR code using the SIX validation tool (https://www.six-group.com/en/qr-bill/validation.html) before sending invoices.
    Verify the QR code using the SIX validation tool (https://www.six-group.com/en/qr-bill/validation.html) before sending invoices.

中文步骤

  1. Use the official Swiss QR Code generator library (https://github.com/swiss-qr-code/swiss-qr-code) to create invoices; example in Python: from swiss_qr_code import generate_qr; generate_qr(iban='CH4431999123000889012', amount=100.50, reference='RF18539007547034').
  2. Integrate with a Swiss e-billing platform like Twint or BillPay which automatically generates compliant QR codes.
  3. Verify the QR code using the SIX validation tool (https://www.six-group.com/en/qr-bill/validation.html) before sending invoices.

Dead Ends

Common approaches that don't work:

  1. 100% fail

    Swiss banks only scan Swiss QR Codes (ISO 20022); other barcode formats are not recognized by the payment system.

  2. 95% fail

    Swiss QR-IBANs are required for electronic invoicing; regular IBANs on QR bills are rejected by the system.

  3. 90% fail

    The Swiss QR Code requires specific fields (IBAN, amount, creditor reference) in a fixed order; malformed codes are invalid.