← All articles

How to Create a Swiss QR-Bill Step by Step (SIX-Compliant)

October 4, 2026 · facturio.ch

Since 1 October 2022, every Swiss invoice with a payment connection must carry a QR-bill (QR-Rechnung) instead of the old orange and red payment slips. A correct QR-bill is what lets your client scan and pay in seconds; a faulty one is what gets the payment rejected. Here is how to create one, step by step and SIX-compliant.

Gather the data the QR-bill needs

Start with the account the money should land in. For most invoices a normal Swiss IBAN is enough; you only need a QR-IBAN if you want the 27-digit QR reference for automated payment matching.

Then collect the payee details — your company name and a fully structured address. Since late November 2025 the address must be split into street, house number, postcode, city and country, not combined into a single free-text line.

Decide on the reference. Most freelancers pair a standard IBAN with a Creditor Reference (RF…) or leave the reference empty and use the free-text additional-information field instead.

Finally, fix the amount and currency. A QR-bill is CHF or EUR; the amount can also be left blank, but for a normal invoice you should state it plainly so there is nothing to guess.

Build the Swiss QR Code

The Swiss QR Code is not an ordinary QR code. It follows the Swiss Payment Standards (QR-IBC) and encodes a specific, ordered set of fields that Swiss banking apps know how to read.

Do not generate it by hand or with a generic QR tool. A free internet generator that is not SIX-certified can produce a code that looks right but fails when a bank tries to read it.

Use a library that implements the Swiss standard, or better, let your invoicing software build the code from your stored payment data. That keeps the code and the printed slip in lockstep.

The golden rule: the data inside the code must match the visible text exactly. A wrong IBAN, amount, or reference inside the code makes the whole bill invalid even when it looks correct on paper.

Lay out the payment part correctly

A full QR-bill is a payment part of 210 by 105 millimetres, printed with the Swiss cross in the top corners and the QR code on the right.

It is split into two halves: a receipt section on the left for the payer to keep, and a payment section on the right that carries the QR code and the machine-readable data.

Both halves must show the same core information in plain text — payee, amount, currency and reference — so the customer can verify the payment by eye before scanning.

If you send invoices digitally, the payment part is usually rendered as a section of the PDF, not a separate slip. Keep the same layout and data quality as you would on paper.

Check it before you send it

Before the invoice leaves your desk, scan the QR code with a banking app on your phone. If it reads cleanly and shows the right payee and amount, it will work for your client too.

Cross-check the amount, the IBAN and the reference against the invoice itself. A single transposed digit in the account number is the most common reason a payment bounces.

Verify that every address in the data is structured — street, house number, postcode, city — because combined address lines are now rejected by banks.

The simplest way to get all of this right every time is to let your invoicing tool do the work. facturio generates a SIX-compliant Swiss QR-bill automatically from your invoice, so the code, the slip and the data always match.

Create compliant Swiss QR-bills in minutes

facturio.ch generates SIX-compliant QR-bills with every invoice — so you can focus on your work, not the paperwork.

Start free