Swiss QR-bill payment QR codes

Swiss QR Code configured for: Swiss QR-bill payment QR codes.

Looking for the general-purpose generator instead? Swiss QR Code Generator

Creditor account
Creditor
Payment amount
Debtor (payer)
Debtor address
Payment reference
Message

Valid Swiss QR-bill payment record. Preview updated below.

Advanced options
Enter a value to see a live preview.
Options

These map directly to real generator options; anything not listed here is available under Advanced options above.

Structured Swiss QR-bill payment form

Businesses issuing Swiss QR-bill invoices need the SPC (Swiss Payments Code) payment record built correctly -- creditor account, address, amount, and a checksummed reference -- without hand-typing the raw field structure and risking an uncollectable code. This tool provides separate creditor, debtor, amount, and reference fields and assembles them into the exact record the primary generator's bare text box otherwise requires you to type by hand.

Real reference-number checksums, not just a text box

Enter a QR reference (26 digits) or a Creditor Reference base and its check digit(s) are computed automatically -- 1 digit via the Modulo 10 recursive algorithm for QRR, or 2 digits via ISO 11649 MOD 97-10 for SCOR. A 27-digit QRR or a full "RF.." SCOR reference is validated instead of recomputed. An IBAN is also checked against the reserved QR-IID range (30000-31999) to confirm whether it is a QR-IBAN, since QRR requires one and SCOR/NON require a plain IBAN.

Example data

The form is seeded with IG v2.3 Annex A's own published worked example: a real QR-IBAN, a real QRR reference with a genuine Modulo 10 recursive check digit, and a complete structured creditor/debtor address pair, so the preview renders a valid, real-shaped Swiss QR-bill immediately.

Workflow

Fill in the creditor's IBAN or QR-IBAN and address, an optional amount and debtor, choose a reference type and enter its base or full value, then export SVG for invoice artwork sized to the required 46x46mm.

Scope of this form

This form implements the structured ("S") address format only -- the current SIX specification (Version 2.3) removed the combined ("K") two-line address format from an earlier version, so a structured address is the only form the current guidelines define. Billing information and alternative payment procedures (both optional, narrowly-used fields) are not implemented; the reference, amount, currency, and address fields that make up the vast majority of real QR-bill payment records are all covered.

Common mistakes

The most common real-world mistake this form prevents outright: pairing reference type QRR with a plain IBAN (or SCOR/NON with a QR-IBAN), which produces a code a bank cannot process even though it renders and scans fine visually -- this form rejects that combination before it reaches the barcode.

Standard

The Swiss QR-bill's SPC record structure, address format, reference types, and their checksum algorithms are defined by SIX Interbank Clearing Ltd's Swiss Implementation Guidelines for the QR-bill.

Related

For non-payment QR use cases, or to type a raw SPC payload yourself, use the general Swiss QR Code generator instead.

FAQ

Why does entering a valid-looking 27-digit reference sometimes get rejected?

The 27th digit of a QRR reference is a real check digit computed from the first 26 digits via the Modulo 10 recursive algorithm -- an arbitrary 27-digit number is not automatically valid. Enter the 26-digit base instead and this form computes the correct 27th digit for you.

Why does reference type QRR require a QR-IBAN specifically?

A QR-IBAN is only distinguished from a regular IBAN by its institution identifier (IID) falling in the reserved 30000-31999 range. The Swiss QR-bill specification requires QRR whenever a QR-IBAN is used, and requires SCOR or NON otherwise -- this form checks the IBAN's own IID against that range before accepting a reference type.