535965 3551687198980 1476644942 4451588 1997040998 n

A Dense QR Code

Welcome to the QR Code Coding Standards WikiEdit

This wiki documents the diffrent uses of a QR Code, a 2D barcode, in a mobile environment beyond website URLs and youtbe videos. It will contain the barcode content's internal coding, as well as the apps that are able to use them properly.The wiki also hopes to host proposed content coding schemes until one or a few mobile apps incorporate them into their parser and thereby promote them as one of the defacto standards for coding (the contents of) a QR Code.

Why ?Edit

A QRCode is a huge 2 dimensional barcode, with capacity going beyond 4,000 alphanumeric characters. It is commonly used to encode websites or youtube videos URL for marketing purposes. A website or youtube URL is a mere 3% or less of the QRCode maximum capacity. With a Smartphone reader, a QRCode can contain wifi passwords, make a phone call, start an email, send an SMS, give driving directions, set an event and alarm in the phone's calendar, create a contact entry and many more. This wiki aims to increase the other uses of QRCodes by documenting the various ways a QRCode can be used, the internal coding standards for these uses and the mobile apps that are actually able to interpret them. A google affiliated project ZXing has started a list of coding standards that pertains to the QR Code contents. However, the use of QR Codes in mobile goes beyond what is documented by ZXing. A Wiki document with open ended contributions will be more suitable and useful to push the boundaries of using of QRCodes in mobile, more importantly, it is hoped that the developers of mobile QR Code apps can refer to the document and include the formats, existing and proposed in their products. It will benefit also the end users, after all who wants to install more than 1 QR Code reader app in their phones.

Technical Background of QR Code AppsEdit

There are probably close to a few dozen QR Code mobile apps all of them use a handful of Software Development Kit (SDK) to build the product. Known core library (SDK) providers are ZXing Image processing library. Z Bar SDK, Shopsavvy , Red Laser , Scandit. Particularly Z-Bar is available for free under the GNU LGPL 2.1, while ZXing is available under the Apache License 2.0 and it is probable that most of the numerous free to public scanners will be based on either of them.

These SDK will typically have a few components:

  1. A Decoder that typically access the mobile phone camera, take a picture of the barcode and decode it.
  2. A Parser that interprets the contents of the barcode and list to do or Action items.
  3. Sample Codes to actually perform the desired Action Item.
  4. For SDK that creates the Barcodes, it will have an Barcode Encoder to actually create the visual barcode.

Parsers may or maynot be included in the SDK, ZXing for one comes with an extendable parser that allows the extension of the capabilities of the QR Code. Consequently, apps based on ZXing, should the developer choose it will have inherited this capability to interpret multiple URIs such as phone calls, SMS, youtube videos, websites and many more. For IOS, ZXing support QR Code only decoding so it is typical for the apps to use Z-Bar which has full support for a variety of 1D and 2D barcodes including the UPC Barcodes typically found in grocery items, Z-Bar do not include a parsing logic, if any is built by the app developer.

Mobile Usage SectionEdit

Mobile Usage sections are for QR Code content standards that are available with current apps. Developers may add their app to the Apps that support the URI Section, they may also add new sections. The update are valid so long as an existing app actually support the standard and perform the action as indicated.

Making Phone CallsEdit

The defacto way of formating a phone URI is to prefix the number with a + sign. Examples are the following:

+10001234567 - Call the US or Canada (fictional) area code 000 and the number 123-4567

+6512345678 - Call SIngapore

+639181234567 - Call the Philippines (63) Area Code or Mobile provider (918) number 1234567

Note: The number should be any number that the phone can recognize so +12141234567 is a valid number, so is 1234567. For most smartphones the following applies: An international phone number needs to be preceeded by a "+" sign, any number without the + sign is considered local, most do not accept 123-4567 with the hyphen as a valid phone number. It is however conceivable for a parser to omit the hyphens and do other editing or masking prior to actually passing the number to the phone for the actual action. For the Phone URI, in the absence of a usable prefix like PHONETO: the + sign distinguishes the number as a phone number, even if it is just a local number.

Apps that support the URI Most ZXing SDK based apps that implement the included parsing logic.

QRU and QRU Mini IOS Apps

Sending an SMSEdit

There are a couple of standards and variations vailable for SMS. These are:

1. SMS:99999999;subject:xxxxxxxxxxxxxx;text:xxxxxxxxxxxxxxxxxxxxxx;

2. SMSTO:99999999;subject:xxxxxxxxxxxxxx;text:xxxxxxxxxxxxxxxxxxxxxx;

3. An IETF RFC was submitted in the following format:

For those not familiar IETF is the Internet Engineering Task Force is a de facto authority on all standards pertaining to the internet and related fields. This RFC is currently on hold pending document revisions, among the comments are that GSM which is part of the title is not relevant anymore particularly with the advent of smartphones, Also note the absence of the subject field, previous SMS do not have this field in Short Messages, the technology has since moved all the smartphones will have the subject field already.

Meaning of Fields: 1. SMS: or SMSTO: instructs the parser that the next series of number will be the phone number for the SMS.

99999999 is the phone number. This field is mandatory!

2. subject: or SUBJECT: instructs the phone that the following characters will be part of the subject field for the SMS. This field is optional!

3. text: or TEXT: denotes the following text to be part of the body. This field is optional!

For these formats, Parsing typically requires a delimiter and a defacto delimiter is the ";" (semi colon) character.

Apps that support the URI

Most ZXing SDK based apps that implement the included parsing logic.

QRU and QRU Mini IOS Apps

Drafting EmailEdit

The defacto standard for email is

MAILTO:email address;SUBJECT:heading of email;

The QR Code creates a draft message with the appropriate email address/ addresses and subject, it is particularly useful for technical support services.

Apps that support the URI

Most ZXing SDK based apps that implement the included parsing logic.

QRU and QRU Mini IOS Apps

Giving map directionsEdit

The format is as follows:

1. geo:longitude,latitude,altitude

sample :


2. ADDRESS:109 North Bridge Road, Funan Mall, SIngapore , Singapore 179097;

Both of these format actually invokes the native map application to give the user driving, transit or walking directions from the person's current location to the location specified. For Android it invokes google maps, for IOS, it may invoke the native Core location services or code a google map URI.

please note the use of a comma delimeter in geo and semi colon for the address.

Apps that support the URI

Most ZXing SDK based apps that implement the included parsing logic.

QRU and QRU Mini IOS Apps

Reminders / Local Notifications (with corresponding Alarm)
542856 3630186881423 1476644942 4484282 315442557 n

Reminder / Local Notification


The format is as follows:

REMINDER:Dinner date with Maria;Date:2012/12/31;Time:18:30;Text:Remember to buy flowers;

Apps that support the URI

QRU and QRU Mini IOS Apps

Setting a Calendar EventEdit

An iCalendar standard format was filed with the IETF to set an interchange format among the different calendar application.

iCalendar along with any standard are evolving specifications, please refer to the link to ensure you follow the latest one.

Apps that support the URI

Most ZXing SDK based apps that implement the included parsing logic.

QRU and QRU Mini IOS Apps

Sending and Receiving Contact Information
543626 3599878403730 1476644942 4471256 628820604 n

Business card


There are a few standards that has emerged to provide a contact interchange format:

The defacto standard is the VCard format, Chances are, if you use the native facility of your phone and decide to share a contact, it will create a Vcard fo

r you in the.vcf file format and ask you if you want it emailed or SMS. Note also that v 4.0 supports extended Social Networking and Messaging information, a feature sorely lacking in VCard v 3.0..A comment published about it though is that it is verbose and takes up valuable space in a limited medium such as a QR Code. Photos a

re supported via a link through a URL. This is ok but not everyone has a profile picture in a URL somewhere in the internet, if you use a smartphone however, that photo will be inside your photo library. Please follow the link to view the complete specification: VCard .

MECard , a standard popularized by NTT Docomo, the leading Mobile provider in Japan. The MECard is compact and a popular format to exchange information with friends or social contacts. The format is as follows:


BizCards are also documented in theZXing Barcode Content site as follows:

BIZCARD:N:Surname;X:Firstname;T:Jobtitle;C:Company;A:business address;B:business phone number;E:email;;

Apps that support the URI

Zxing sample IOS apps parser support the MECard Format. For the Android and other versions found in their website it may support the other formats (Android programmers need to verify)!

QRU, an IOS app will support MECARD for home and casual contacts and the BizCard format for business contacts. It will allow you to selectively pick out which phone and address to pick. In recognition of the requirement to extend the standard to include Social Networking and Messaging information it has extended both the MECard and BizCard standards to include the following properties:

MID:middle name;

DEPT:company department; (Bizcard)


MAIN: office trunkline;(Bizcard)

MAIN: Home landline ;(MEcard)

DID:contact direct line; (Bizcard)

FAX:fax number;

MT1:messenger or social network type such as Twitter or Facebook; (Note the format supports up to 4 social networking or messenger types - MT1-MT4 )

MV1:messenger or social network identity Value such as @abcdef or mistletoe; (Note: and corresponding networking or messaging identities - MV1-MV4)

STYLE:x; (0-3) proprietary information to pickout the visual template for printable business cards

(Note, the TEL: in MECards and B: in Bizcards in the QRU extended format) Zxing based apps support the MECard Format

Website URLEdit

QR Codes use website standard URLS as follow:;Title:only in JPan 1;

Apps that support the URI

QR Code containing website URLs are almost exclusively used in mobile or tablet environments.Among mobile apps with the ability to scan and read QR Codes, there is close to universal support for the url format. Note that the URLs may or may not be compliant with the mobile browser in use. In general Mobile browsers are universally compliant to HTML 5 and above, the use of older HTML coding, Adobe Flash, and other technologies not compatible with HTML5 may result in the incorrect rendering of the page.

Youtube VideosEdit

There are a few formats but youtube videos even in mobile are simple URLs to the youtube mobile site:;Title:only in JPan 1;

Other formats are:


Apps that support the URI

There is close to universal support for youtube videos via the url format. Note that the URL formats also allow support for other video sites so long as they feature HTML5 video. IOS do not support the Adobe flash video format.

Play mood musicEdit


Apps that support the URI

QRU and QRU mini utilize this format to play songs existing in the iPhone, iTouch or iPads music files. it is used by itself or in conjunction with a QR Code Postcard to set mood music with a message. It looks for the song played by the artist in a particular album. If there is none, it will look for the song played by the artist without regards to the album/version. If there is none it will play the song by any artist.

Digital Postcard
576291 3725265018317 1476644942 4532609 783726681 n

Digital Post Card


The post card formats an adobe PDF Postcard (standard postcard size) using the app.

Basic Post Card:

Message:name and formatted postal address of the person you are sending the message to;Text: post card text;MOOD:x;TextColor:R,G,B,A;TextSize:99.999999;

Basic Properties: Message: denotes a QR Digital Postcard will be parsed, the suceeding fields is extracted from the contact address book and should contain the recepient name and postal address.

Text: postcard Text message

MOOD: Designates preexisting templates provided by the app. The app should be able to allow the user to select a background picture or even use the camera to format one however, the QR Code as a medium will not be able to support this. The QRU App uses proprietary file types to allow sending the custom pics via email, the MOOD templates anticipate that the QR Code maybe scanned instead of sent by email therefore the requirement for templates.

TextColor: RGBA values - Red, Green, Blue, Alpha, The software should allow for specification of the custom text colors that provide best visibility against custom backgrounds.

Textsize: (font size)

Extended Post Card Properties:

The digital post card message is more effective with imbedded action items included in the QR Code, these maybe any of the following

Play a song (mood music):


Send a geographical location coordinates


Send a postal address:

ADDRESS:full postal address;

Send a contact number (phoneto)


Set a Calendar Event

VEVENT: .......

Send contact information


Send website or URL information;Title:only in JPan 1;


Message:name (addressee) x'0D0A' (CRLF) address1 CRLF address2;Text:blabla .... bla ......bla;MOOD:2;TextColor:,0.5,0.5;TextSize:42.09909;geo:150.0000,0.001290.0;;MECard:...;VEVENT:MP3:song,artist,album;

Apps that support the URI

The digital post card are proprietary formats developed for the QRU apps . It is the developers intent to allow free and wide spread use of format, it is however urged that any further use, modification, or extension of the format should be documented in this wiki page.

Medical Emergency Information
Blood donor card

The idea for its use came from the Blood Donor cards issued by the Red Cross when you donate blood. it wil contain the following information:

  1. Blood type
  2. Birthday (age is important for medical and legal reasons).
  3. Allergies and existing Medical Conditions that require special emergency treatment.
  4. Next of kin Name, Contact number and address.

The donor card is kept in the person of the accident victim, a responding medic can scan the card, pass the information to the hospital emergency medical room who can immedietely call the next of kin. More importantly, First Aid treatment can be harmful if the victim has pre-existing medical conditions. Use of the card prevents application of the wrong first aid treatment. ​Format:

MEDICALINFO:FNAME:first name;LNAME:surname;ADDRESS:postal address (typically the next of kin address);BIRTHDAY:mmm dd,yyyy;BLOODTYPE:x;Text:pre-existing medical conditions relevant to emergency medical treatment;CNAME: Next of kin full name;CRELATION:next of kin relation ship with donor/victim (example wife or father);CPHONE1:1st contact number of next of kin;CPHONE2: 2nd contact number;

Apps that support the URI

The medical info are proprietary formats developed for the QRU apps . It is the developers intent to allow free and wide spread use of format, it is however urged that any further use, modification, or extension of the format should be documented in this wiki page.

Luggage Tags, Bag Tags, Kiddie CardEdit

Luggage Tags and Bag Tags QR Codes simply contain a PHONETO: and SMSTO: uri to inform the owner that the bag was found.The phone number and email are also printed in the luggage tag, the QR Code just makes it convenient to call or SMS. The Bag Tags are 1/2 the size of luggage tags while the kiddie card contain the monther or fathers contact information should the child wander off in a crowded public place.

Apps that support the URI

Phone and SMS uri are widely available in most of the scanning apps.


Andoid has the ability to login to a wifi programatically and an app can make use of the interface to logon to wifi, TheZXing project includes wifi settings as one of the conveniences of using QRCodes The format is as follows:

WIFI:wifi name;T:WPA;S:SSID;P:password;

The wifi name is a name to identify the wifi station

The others are important:

T: signifies the encryption used - WEP, WPA, WPA2, or none

S: denotes the SSID - this is what your computer or mobile detects as the wifi connect point.

P: Password

Apps that support the URI

Wifi parsing is part of the ZXing sample app and should be widely available for Android phones.

QRU and QRU Mini support reading the settings which you may copy and paste the password to gain access:


QRU also implemented QR Codes as memory triggers that allow the user to remember passwords the format is as follows

PASSWORD:password;FOR:usage (text).

Note: A Printed copy of the QR Code can be printed and placed in strategic places (example server room) to allow the operator to keep security while ensuring that access for the correct person is always available. Apps that support the URI

QRU and QRU Mini support reading the settings.


Also for the Server room or similar environments to act as reference for infrequently used procedures, or procedures that change periodically.


Note: A Printed copy of the QR Code can be printed and placed in strategic places (example server room) to allow the operator to perform the procedure properly. Ordinary Household use can be things as simple as setting the region code of your Blue Ray Player which gets reset everytime there is an onlinbe update. Apps that support the URI

QRU and QRU Mini support reading the settings.

Proposed new QR code applications !Edit

This section is meant to document suggestions or future plans to implement a new use for QR Codes for mobile. If an app already exist that is able to parse your suggestion please move it to the Mobile Usage Sections and identify the app that conforms to it. Publishing your suggestion here is presumption that you are permitting any developer to use your idea in a future app. It is presumed that the developer will modify this wiki to place your suggestion under the Mobile Usage Section once his or her app are published and available.


The proposed QR Code is meant to build a grocery list using the ingredients listed inside the QR Code: A weekly grocery list can be built simply by scanning a Recipe Book with QR Codes. The app should collate and sort the ingredients from several recipes and the user can do a final edit prior to shopping.

Suggested Format:

RECIPE:Paella Valenciana; Ingredients:Rice,Bomba,1 pack;Tomatoes,The Biggest you can find,3 Kilos;Bell Pepper, Assorted Colors, 6 big pieces; ......


RECIPE: name of dish

Ingredients: Name of Ingredient, brand or description, quantity; (multiple)