Infiniroot Blog: We sometimes write, too.

Of course we cannot always share details about our work with customers, but nevertheless it is nice to show our technical achievements and share some of our implemented solutions.

The last day of the old payment slips in Switzerland and an easy change to Swiss QR-Bill invoices

Published on September 30th 2022


Today is September 30th, 2022. This is the (supposedly) last day, the old colourful (magenta and orange) payment slips are valid in Switzerland.

Swiss payment slips switching to QR-Bill

If you run a company, no matter the size, and you're sending out invoices to your customers, you must switch to the new QR-Bill payment slip now. In this article we show how the technology behind the QR-Bill works and that switching to QR-Bill is actually much easier than most think.

The old payment slips

The old Swiss payment slips (Einzahlungsschein in German, Bulletin de versement in French) came up in two different colours: red (magenta) and orange.

The orange payment slip was used to make a payment to a bank account using a "PC" (Postal Check account) account number. This payment slip didn't show the IBAN number of the recipient bank account. Banks had to register a PC account to forward the incoming money to the correct IBAN number (using the recipient address). The organge payment slip mostly contained a "ESR number" which helped the invoice sender to uniquely match the incoming payment with a sent invoice.

The red payment slip was used to make a payment to a bank account using a more modern IBAN (International Bank Account Number) account number. It didn't have the ESR fields, however additional notes and comments could be made on the payment slip (e.g. to note the payment purpose).

The original purpose of these payment slips was that people could stop by the next Post office and pay the invoice there in cash. The Swiss Post, acting as intermediary, then transferred the money to the destined bank account - of course with adding some additional handling fees to it.

With the arrival of E-Banking this has changed drastically. Almost nobody is going to the Post office to pay an invoice anymore. Companies sending invoices have also moved away from using the red payment slip to simply add payment information with an IBAN account number on their invoices.

Swiss QR-Bill and SPC

The new Swiss QR-Bill is, as the name already mentions, a payment slip with a QR-Code. The QR-Code is basically a graphic containing data, similar to a barcode on a product.

Swiss QR Bill example

The data of the QR-Code contains the so-called SPC (Swiss Payments Code). In June 2020 we've published an article how we implemented the Swiss QR-Bill in our invoicing software (Invoice Ninja) and also analyzed and described the Swiss Payments Code data. To summarize it, the SPC data contains the invoice information (such as IBAN, amount and currency), the debitor (invoice sender) and optional fields (for example additional information, creditor address, etc).

The SPC is a standard and is well described in the QR-Bill guidelines document.

Create and send invoices with Swiss QR-Bill payment slip

Creating an invoice with such a QR-Code doesn't have to be difficult. It's actually very easy (and automated) using the right software.

As mentioned above, Infiniroot already implemented the Swiss QR-Bill payment slips back in 2020. With our managed Invoice Ninja servers, companies can easily create, send and manage invoices using the Swiss QR-Bill payment slips. The QR payment slips are automatically appended to an invoice, using all the data of an invoice, inserting it as SPC and creating the QR-Code. Each invoice is therefore unique and has a unique QR-Code.

Swiss QR Bill in Invoice Ninja

While the customer is simply using the invoicing software, Infiniroot manages the technical complexities of Invoice Ninja (dedicated server setup, software installation and upgrades).

Even though our blog articles are written in English, Invoice Ninja comes in many languages (German, French, Italian and many more) and our support handles English, German and French support requests.