DE ♦ EN (Theano GmbH)  » Web Service  » Without SOAP  » REST Documentation: qrcode

Forgot password?


New customer? Register

The qrcode Function



Purpose: Creates a QR code which, when scanned, automatically populates a SEPA transfer form.

The QR code in the top left corner of the invoice shown above was created with this function. If your banking app provides this feature, you can populate an entire transfer form at the touch of a button, just by scanning the QR code.

For instance, if you use Subsembly's banking app, you would
1. log into the banking app,
2. tap on the account from which you want to pay the bill,
3. open the menu (bottom left),
4. select "Scan QR Code",
5. point your smartphone at the QR code,
and a few seconds later, the transfer form in your app would automatically be populated.

This function delivers a PNG file containing a QR code (optionally with a human-readable text label at the bottom). You can use the result for displaying a QR code on a web page or for including it in a PDF invoice.

For displaying the QR code on a web page, there is no need to create a file on your server's hard drive; instead, you can take the base64-encoded string that comes from our application (e.g., "data:image/png;base64,iVBORw0KGgoAAAAN..."), and put it directly into HTML, like this: <img width=""300" src="data:image/png;base64,iVBORw...kSuQmCC"/>.

For including such PNG files in PDF invoices, we recommend this free open source software:

convert (imagemagick) for converting PNG to PDF,
pdfjam for scaling and positioning a QR code on a page, and
pdftk for combining a PDF invoice as generated by your bookkeeping software with a PDF file containing the scaled and positioned QR code.


Input Parameters:

  • recipient: The holder of the account onto which money should be transferred.
  • iban: The IBAN of the recipient's account.
  • bic: The BIC code of the recipient's account. If you leave the BIC code empty, the server will attempt to fill it automatically using the IBAN; if you specify a BIC code, the specified BIC code is used.
  • amount: amount to be transferred (in EUR).
  • memo: remittance information.
  • label: this will be printed in human-readable form underneath the QR Code. If label is left empty, the bitmap will be square; otherwise, a bit of extra space is added at the bottom for printing the given text.


Output Fields:

  • image: the QR code bitmap as base64-encoded string. It can be used inside the HTML "img" tag as is (e.g., <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAisAAAJ...">), or you can base64-decode the part after "data:image/png;base64," and write the result into a PNG file.
  • md5sum: the result of the Linux command "md5sum" when applied to the PNG file.
  • result: 'passed' if the IBAN is successfully validated and no other error has occured. Otherwise, this field contains an error message.
  • validation: the result of validating your IBAN with the endpoint validate_iban.
  • balance: Number of remaining calculations you can do before having to recharge your account. This does not apply to customers who pay their calculations retroactively.