QR code

V 1.0

Bitcoin QR code icon

Contents

Most bitcoin wallets can read QR codes with additional parameters in BNF grammar above for the normative syntax. You can add amount, name, description and other parameters to your wallet. Some parameters may be changed, some cannot be understood or can be ignored by the wallet. Only the address and the amount will be stored in the bitcoin blockchain. Other parameters can or may be stored in your bitcoin wallet, it depends on the software.

Examples

Just the address:

bitcoin:1DonateWffyhwAjskoEwXt83pHZxhLTr8H

Address with amount (recomended to use):

bitcoin:1DonateWffyhwAjskoEwXt83pHZxhLTr8H?amount=0.00123

Request 20.30 BTC to "Luke-Jr":

bitcoin:1DonateWffyhwAjskoEwXt83pHZxhLTr8H?amount=20.3&label=Luke-Jr

Request 50 BTC with message:

bitcoin:1DonateWffyhwAjskoEwXt83pHZxhLTr8H?amount=50&label=Luke-Jr&message=Donation%20for%20project%20xyz

Some future version that has variables which are (currently) not understood and required and thus invalid:

bitcoin:1DonateWffyhwAjskoEwXt83pHZxhLTr8H?req-somethingyoudontunderstand=50&req-somethingelseyoudontget=999

Some future version that has variables which are (currently) not understood but not required and thus valid:

bitcoin:1DonateWffyhwAjskoEwXt83pHZxhLTr8H?somethingyoudontunderstand=50&somethingelseyoudontget=999

QR code must be in black and white colors. If colors are different, then recognizing speed will be low or code will be unreadable.

Simple requests:

Code Example


Format and Variables:
Parameter Variables Present Experiment with a value
{message}
urlencoded text,
=<256 chars
Message for QR code
Urlencoded message with any text.
Always
{format}
[png | svg]
default - png

Output file format
Supporting PNG image format (by default) or SVG  (vector graphics) text format in JSON Base64.

Optional
  Reset Values Execute
Response from server:
{"message": "1", "qrcode": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjMyIiB3aWR0aD0iMjMyIiBjbGFzcz0icHlxcmNvZGUiPjxwYXRoIHRyYW5zZm9ybT0ic2NhbGUoOCkiIHN0cm9rZT0iIzAwMCIgY2xhc3M9InB5cXJsaW5lIiBkPSJNNCA0LjVoN20xIDBoMW0yIDBoMW0yIDBoN20tMjEgMWgxbTUgMGgxbTMgMGgxbTEgMGgxbTEgMGgxbTUgMGgxbS0yMSAxaDFtMSAwaDNtMSAwaDFtMiAwaDFtMiAwaDFtMSAwaDFtMSAwaDNtMSAwaDFtLTIxIDFoMW0xIDBoM20xIDBoMW0xIDBoM20xIDBoMW0xIDBoMW0xIDBoM20xIDBoMW0tMjEgMWgxbTEgMGgzbTEgMGgxbTIgMGgzbTIgMGgxbTEgMGgzbTEgMGgxbS0yMSAxaDFtNSAwaDFtMyAwaDFtMSAwaDFtMSAwaDFtNSAwaDFtLTIxIDFoN20xIDBoMW0xIDBoMW0xIDBoMW0xIDBoN20tMTkgMmgxbTEgMGgzbTEgMGgxbTIgMGgxbTEgMGgxbTMgMGgxbTIgMGgxbS0yMSAxaDRtMyAwaDJtMiAwaDRtMyAwaDJtLTIwIDFoM20xIDBoM20xIDBoMm0yIDBoMW0xIDBoMW0xIDBoMW0zIDBoMW0tMTkgMWgxbTEgMGgxbTQgMGgzbTEgMGgybTMgMGgybS0yMCAxaDFtMSAwaDJtMSAwaDRtMSAwaDFtNSAwaDFtMSAwaDNtLTEzIDFoMm0xIDBoNW0xIDBoMW0xIDBoMW0tMjAgMWg3bTcgMGgybTEgMGg0bS0yMSAxaDFtNSAwaDFtMSAwaDFtMiAwaDFtMyAwaDNtMSAwaDFtLTIwIDFoMW0xIDBoM20xIDBoMW0xIDBoNG0yIDBoMm0xIDBoMm0xIDBoMW0tMjEgMWgxbTEgMGgzbTEgMGgxbTIgMGg0bTEgMGgxbTMgMGgybS0yMCAxaDFtMSAwaDNtMSAwaDFtMSAwaDFtMiAwaDJtMSAwaDFtMSAwaDFtMyAwaDFtLTIxIDFoMW01IDBoMW00IDBoMm0xIDBoMW0zIDBoMW0tMTkgMWg3bTIgMGgybTEgMGgzbTEgMGgxbTEgMGgxbTEgMGgxIi8+PC9zdmc+Cg=="}

Success response:

You will get a image in PNG format or SVG (vector graphics) text format in JSON Base64.

{
"message": "{message}",
"qrcode": "{base64 encoded svg}"
}

Error Response

Error response return messages in plain text format below:
Not enough parameters.
Wrong parameters.
Empty message.
Message is not urlencoded.
Wrong output format type.