Back in 2012, I proposed a “pay:” URL scheme, which looks like this:


or with abbreviated syntax:


Some shops in Germany now support a similar URL scheme, which looks like this:


According to the specification (in German), the “bank:” scheme was invented in 2010 at German company Stoeger IT. The Web site explaining the system has been online since 2011.

My pay scheme and the bank scheme are obviously very similar, but there are some interesting differences:

The specification for the bank scheme doens't talk about protecting against double payments, but presumably the software and/or the user's bank should warn the user when the same combination of IBAN, amount and payment reason are seen twice.

The reason field (called order number in my scheme) is free text. It's up to the seller to put something there that is unique enough to recognize a payment.

Both my pay scheme and the bank scheme rely on payment into a bank account. There is no provision for paying cash (with bitcoins, e.g.)

(Thanks to Christian Weiske for alerting me to the BezahlCode.)

Bert Bos <bert at>
Created: 20 December 2016