I’m new to Invoice Ninja and currently try to adapt the invoice template to my needs.

I stumbled upon the qr directive of pdfmake and got curious if I could use it to generate a EPC-QR-Code to allow scanning the invoice with most European banking apps.

Here’s an working example:

{ “qr”: “BCD\n001\n1\nSCT\nBFSWDE33BER\nWikimedia Foerdergesellschaft\nDE33100205000001194700\nEUR123.45\n\n\nWikipedia Donation\n”, “eccLevel”: “M” }

The biggest problem is the $invoice.amount. It is rendered as 123,45 € which is correct for printing purposes, however here the format has to be EUR123.45. Other than that the character set must be limited, but I haven’t found out what exactly how :wink:

Anything I can do?

Try $invoice.balanceAmount

If anyone wants to use this too, this works for me:

{ "qr": "BCD\n001\n1\nSCT\nBIC WITHOUT WHITESPACES\nFULL NAME WITH SPACES\nIBAN WITHOUT WHITESPACES\nEUR$invoice.balanceAmount\n\n\n$entityType $invoice.invoiceNumber\n", "eccLevel": "M" }

Update: $entityType seems to be only working in stacks(?). Hardcoded that for now. So you’ll need to replace $entityType with e.g. Invoice or, in my case, Rechnung

I have a question - is there any way how to generate the QR code with a different bank account? I have 2 bank accounts that I need to have on the invoice (two different currencies).

I have decided to create two invoice templates (= 2 QR codes) to solve the problem described in my last post.

QR code is being generated, invoice number works fine, but $invoice.balanceAmount and $invoice.amount produces the wrong output.

It shows AM:“1 000,00 Kč”, but I need it to be “AM:1000,00” or “AM:1000”. Any bank payment app that I have tried therefore skips the price field. Is there any way how to archieve that, please?


I believe most people use $balanceAmount, is the . vs , decimal separator an issue?

I think that “Kč” might be the issue. In all working QR codes I have found so far there were no currency signs (Kč) or codes (CZK).

Hi Mene,

I see you found a solution to include QR codes on an invoice.

How do you process your invoices after a payment has been made by a customer?
This seems to be a manual action since the customer is being redirected to his/her banking app after scanning the QR code and making the payment there. No trigger will be executed towards Invoice Ninja to update the invoice to status “paid”.