6.3.11.1 Which Data is used in Swiss QR Code Generation?
Challenge
To understand and correctly configure data for successful QR code generation during invoicing for the relevant invoices.
Swiss QR-bill v2.3 Updates (Effective November 21, 2025)
⚠️ IMPORTANT: This documentation reflects the updated Swiss QR-bill Standard v2.3 implementation completed in ADvendio with the version 2.179 and up.
Major Changes in v2.3:
Version Number: Updated from 0200 (v2.0) to 0203 (v2.3)
Address Format: Changed from Combined (
K) to Structured (S) addresses by defaultField Separation: Street names and building numbers are now parsed and sent separately
Ultimate Creditor: This section has been completely removed from the QR structure
Enhanced Parsing: Automatic building number extraction from street address fields
Implementation Details:
Effective from version 2.179 onwards
Backward Compatibility: Maintained for existing Swiss QR-bill generation
Solution
The following data will be used for the QR code and payment section generation of Swiss Invoices. To ensure complete and accurate creation of the QR code and payment section, please verify that all fields are populated and comply with the relevant validations.
Key Changes Summary:
✅ New structured address format separates street names from building numbers
✅ Postal codes and city names are now independent parameters
✅ Automatic parsing of existing Street__c fields (no customer action required)
❌ Ultimate Creditor section removed entirely
Data Structure | Element Name | General Definition | Field Definition | ADvendio Field/object | v2.3 Changes | Validations |
|---|---|---|---|---|---|---|
QRCH +Header | Header |
| Mandatory Data Group |
|
|
|
QRCH +Header ++QRType | QR Type | Fixed value "SPC" (Swiss Payments Code) | Fixed length: three-digit, alphanumeric | SPC¶ |
|
|
QRCH +Header ++Version | Version | v2.3: Fixed value "0203" for Version 2.3 | Fixed length: four-digit, numeric | 0200¶ | 🆕 Updated from 0200 |
|
QRCH +Header ++Coding | Coding | Fixed value 1 (indicates UTF-8 with extended character set in v2.3) | Fixed length: one-digit, numeric | 1¶ | ✏️ Enhanced character set |
|
QRCH +CdtrInf | CdtrInf | Creditor Information/Account payable to | Mandatory Data Group |
|
|
|
QRCH +CdtrInf ++IBAN | IBAN | QR-IBAN of the creditor. | Fixed length: 21 alphanumeric characters, only IBANs with CH or LI country code permitted. | ADvendio__MediaCampaign__r.LegaLEntity__r.Iban__c¶ |
| max 21 characters |
QRCH +CdtrInf ++Cdtr | Cdtr | Creditor | Mandatory Data Group |
|
|
|
QRCH +CdtrInf ++Cdtr +++AdrTp | AdrTp | v2.3: Default "S" - structured address | Fixed length: one-digit, alphanumeric | S¶ | 🆕 Changed from K to S |
|
QRCH +CdtrInf ++Cdtr +++Name | Name | The creditor's name or company according to the account name. | Maximum 70 characters permitted First name (optional, sending is recommended, if available) + last name or company name | ADvendio__MediaCampaign__r.LegaLEntity__r.Name¶ |
| max 70 characters |
QRCH +CdtrInf ++Cdtr +++StrtNmOrAdrLine1 | StrtNmOrAdrLine1 | v2.3: Street name only (parsed from Street__c field) | Maximum 70 characters permitted | ADvendio__MediaCampaign__r.LegaLEntity__r.Street__c (parsed → street name only) | ✏️ Now parsed separately | max 70 characters |
QRCH +CdtrInf ++Cdtr +++BldgNbOrAdrLine2 | BldgNbOrAdrLine2 | v2.3: Building number only (parsed from Street__c field) | Maximum 16 characters permitted | ADvendio__MediaCampaign__r.LegaLEntity__r.Street__c (parsed → building number only) | ✏️ Now parsed separately | max 16 characters |
QRCH +CdtrInf ++Cdtr +++PstCd | PstCd | v2.3: Postal code from creditor's address (separate field) | Maximum 16 characters permitted The postal code must be provided without a country code prefix. | ADvendio__MediaCampaign__r.LegaLEntity__r.PostalCode__c¶ | ✏️ Now separate field | max 16 characters |
QRCH +CdtrInf ++Cdtr +++TwnNm | TwnNm | v2.3: Town from creditor's address (separate field) | Maximum 35 characters permitted | ADvendio__MediaCampaign__r.LegaLEntity__r.City__c¶ | ✏️ Now separate field | max 35 characters |
QRCH +CdtrInf ++Cdtr +++Ctry | Ctry | Country from creditor's address | Two-digit country code according to ISO 3166-1 | ADvendio__MediaCampaign__r.LegaLEntity__r.CountryIsoCode__c¶ |
| two characters |
QRCH +UltmtCdtr | UltmtCdtr | ❌ REMOVED IN v2.3 - Ultimate Creditor | ❌ This entire section has been removed in Swiss QR-bill v2.3 | ❌ Not used | ❌ REMOVED COMPLETELY |
|
QRCH +UltmtCdtr ++AdrTp | AdrTp | Ultimate creditor address type | Fixed length: one-digit, alphanumeric | ¶ | ❌ REMOVED |
|
QRCH +UltmtCdtr ++Name | Name | The ultimate creditor's name or company | Maximum 70 characters permitted | ¶ | ❌ REMOVED |
|
QRCH +UltmtCdtr ++StrtNmOrAdrLine1 | StrtNmOrAdrLine1 | Ultimate creditor street address | Maximum 70 characters permitted | ¶ | ❌ REMOVED |
|
QRCH +UltmtCdtr ++BldgNbOrAdrLine2 | BldgNbOrAdrLine2 | Ultimate creditor building/address line 2 | Maximum 70 characters permitted | ¶ | ❌ REMOVED |
|
QRCH +UltmtCdtr ++PstCd | PstCd | Ultimate creditor postal code | Maximum 16 characters permitted | ¶ | ❌ REMOVED |
|
QRCH +UltmtCdtr ++TwnNm | TwnNm | Ultimate creditor town | Maximum 35 characters permitted | ¶ | ❌ REMOVED |
|
QRCH +UltmtCdtr ++Ctry | Ctry | Ultimate creditor country | Two-digit country code | ¶ | ❌ REMOVED |
|
QRCH +CcyAmt | CcyAmt | Payment amount information | Mandatory Data Group |
|
|
|
QRCH +CcyAmt ++Amt | Amt | Payment Amount | The amount element is to be entered without leading zeroes, including decimal separators and two decimal places. Decimal, maximum 12-digits permitted, including decimal separators. Only decimal points (".") are permitted as decimal separators. | ADvendio__Invoice__ESRAmount__c¶ |
| max 12 digits |
QRCH +CcyAmt ++Ccy | Ccy | Currency The payment currency, 3-digit alphanumeric currency code according to ISO 4217 | Only CHF and EUR are permitted. | ADvendio__Invoice__CurrencyIsoCode¶ |
|
|
QRCH +UltmtDbtr | UltmtDbtr | Ultimate Debtor/ Payable by | Optional Data group |
|
|
|
QRCH +UltmtDbtr ++AdrTp | AdrTp | v2.3: Default "S" - structured address | Fixed length: one-digit, alphanumeric | S¶ | 🆕 Changed from K to S |
|
QRCH +UltmtDbtr ++Name | Name | The ultimate debtor's name or company | Maximum 70 characters permitted First name (optional, sending is recommended, if available) + last name or company name | ADvendio__RecipientName__c¶ |
| max 70 characters |
QRCH +UltmtDbtr ++StrtNmOrAdrLine1 | StrtNmOrAdrLine1 | v2.3: Street name only (parsed from RecipientBillingStreets__c field) | Maximum 70 characters permitted | ADvendio__RecipientBillingStreets__c (parsed → street name only) | ✏️ Now parsed separately | max 70 characters |
QRCH +UltmtDbtr ++BldgNbOrAdrLine2 | BldgNbOrAdrLine2 | v2.3: Building number only (parsed from RecipientBillingStreets__c field) | Maximum 16 characters permitted | ADvendio__RecipientBillingStreets__c (parsed → building number only) | ✏️ Now parsed separately | max 16 characters |
QRCH +UltmtDbtr ++PstCd | PstCd | v2.3: Postal code from ultimate debtor's address (separate field) | Maximum 16 characters permitted The postal code must be provided without a country code prefix. | ADvendio__RecipientBillingPostalCode__c¶ | ✏️ Now separate field | max 16 characters |
QRCH +UltmtDbtr ++TwnNm | TwnNm | v2.3: Town from ultimate debtor's address (separate field) | Maximum 35 characters permitted | ADvendio__RecipientBillingCity__c¶ | ✏️ Now separate field | max 35 characters |
QRCH +UltmtDbtr ++Ctry | Ctry | Country from ultimate debtor's address | Two-digit country code according to ISO 3166-1 | ADvendio__RecipientBillingCountry__c¶ |
| Two characters |
QRCH +RmtInf | RmtInf | Payment Reference | Mandatory Data Group |
|
|
|
QRCH +RmtInf ++Tp | Tp | Reference type Reference type (QR, ISO) The following codes are permitted: QRR – QR reference SCOR – Creditor Reference (ISO 11649) NON – without reference | Maximum four characters, alphanumeric Must contain the code QRR where a QR-IBAN is used; where the IBAN is used, either the SCOR or NON code can be entered | QRR¶ |
|
|
QRCH +RmtInf ++Ref | Ref | Note: The structured reference is either a QR reference or an ISO 11649 Creditor Reference | Maximum 27 characters, alphanumeric; must be filled if a QR-IBAN is used. QR reference: 27 characters, numeric, check sum calculation according to Modulo 10 recursive (27th position of the reference) Creditor Reference (ISO 11649): max 25 characters, alphanumeric The element may not be filled for the NON reference type. Banks do not distinguish between upper and lower case capitalization | ADvendio__ESRReferenceNumber__c¶ |
| Max 27 characters |
QRCH +RmtInf ++AddInf | AddInf | Additional information | Unstructured message and Booking instructions may contain a common total of up to 140 characters |
|
|
|
QRCH +RmtInf ++AddInf +++Ustrd | Ustrd | Unstructured information can be used to indicate the payment purpose or for additional textual information about payments with a structured reference. | Maximum 140 characters permitted | ¶ |
|
|
QRCH +RmtInf ++AddInf +++Trailer | Trailer | Fixed value "EPD" (End Payment Data). | Fixed length: three-digit, alphanumeric | EPD¶ |
|
|
QRCH +RmtInf ++AddInf +++StrdBkgInf | StrdBkgInf | Bill information contain coded information for automated booking of the payment. The data is not forwarded with the payment. | Maximum 140 characters permitted Use of the information is not part of the standardization. In the Annex you will find the version of Swico's "Recommendations on the structure of information from the biller for QR-bills" that is valid at the time of publication of these Implementation Guidelines. The element «Billing information»contains coded information of the biller for the bill recipient. This information may be used for automating accounts payable processes, for instance. The data is not forwarded with the payment but it is printed on the payment part. The coding of the element always begins with «//» (slash slash) followed by the double-digit, abbreviated name of the proposed version of the «Structured information for the bill issuer» that is being used | (Not currently supported) |
|
|
QRCH +AltPmtInf | AltPmtInf | Alternative schemes Parameters and data of other supported schemes | Optional data group with a variable number of elements | (Not currently supported) |
|
|
QRCH +AltPmtInf ++AltPmt | AltPmt | Parameter character chain of the alternative scheme according to the syntax definition in the "Alternative scheme" section | A maximum of two occurrences may be provided. Maximum 100 characters per occurrence permitted | (Not currently supported) |
|
|
Building Number Parsing Logic (New in v2.3)
ADvendio automatically extracts building numbers from street address fields using intelligent parsing:
How It Works:
Input Example:
"Main Street 123A"(from Street__c or RecipientBillingStreets__c)Parsing Logic: Regex pattern identifies building numbers at the end of addresses
Output:
Street Name:
"Main Street"Building Number:
"123A"
Supported Building Number Formats:
Simple numbers:
"123"With letters:
"123A","123B"