Introduction

The QR Invoice Library provides a domain model that represents the QR Invoice as a whole as defined in the official specification.

The root entity is ch.codeblock.qrinvoice.model.QrInvoice. Although it is possible to create the QrInvoice object graph by hand we do not recommend to do so. Instead we advise to use the ch.codeblock.qrinvoice.model.builder.QrInvoiceBuilder. The QrInvoiceBuilder does also implicitly perform validation of the given input.

Once the QrInvoice has been built, it can then be used to generate the required product, such as:

  • Swiss Payments Code (String)

  • QR Code (Image)

  • Payment Part (Document)

Please see the Examples.

The QR Invoice Domain Model

QR Invoice Domain Model

Involved Parties in a Credit Transfer

The following parties are involved in a credit transfer:

  • Creditor

  • Debtor (not represented in the QR Invoice)

  • Ultimate creditor

  • Ultimate debtor

Involded Parties in a Credit Transfer
Involded Parties in a Credit Transfer

Source: Swiss Implementation Guidelines QR-bill - Annex C: Parties involved in a credit transfer (5. October 2017)