Skip to content

Advanced usage Payload generators

Raffael Herrmann edited this page May 15, 2017 · 32 revisions
  1. Introduction to the "Payload Generator"
  2. Overview of the different payload types
  3. Usage of the payload generators
    3.1 BezahlCode
    3.2 Bitcoin Payment Address
    3.3 Bookmark
    3.4 Calendar events (iCal/vEvent)
    3.5 ContactData (MeCard/vCard)
    3.6 Geolocation
    3.7 Girocode
    3.8 Mail
    3.9 MMS
    3.10 Monero address/payment
    3.11 One-Time-Password
    3.12 Phonenumber
    3.13 Shadowsocks configuration
    3.14 Skype call
    3.15 SMS
    3.16 SwissQrCode (ISO-20022)
    3.17 URL
    3.18 WhatsAppMessage
    3.19 WiFi
  4. Development of own payload types

1. Introduction to the "Payload Generator"

The payload generator is on the things, which make the QRCoder unique. It's a class which helps to generate special payloads (the text encoded in QR codes) that will start different actions on the device which scans the QR code.

Indeed a QR code can only encode a string (of text), but if this string has a special format, most* QR code scanners will perform a predefined action.

To help you to create these special formatted payload strings, we implemented the payload generators. These are easy-to-use classes, which check your data for invalid inputs and automagically create the fitting payload strings for you.

Info: Keep in mind, that all payload types stand and fall with the commitment between QR encoders and QR scanner apps. Special payload types aren't defined in the QR code standard (ISO/IEC 18004). Most of the QR code scanner apps are able to interpret the payload types described on this page. But in a real world application you should test your QR codes against the scanners your users will use.

2. Overview of the different payload types

Right now there are 19 different payload generators. To get a quick overview, have a look at the following table.

(Class-)Name What does it do, when scanned? Specification
BezahlCode
BitcoinAddress
Bookmark
CalendarEvent
ContactData
Geolocation
Girocode
Mail
MMS
MoneroTransaction
OneTimePassword
PhoneNumber
ShadowSocksConfig
SkypeCall
SMS
SwissQrCode
Url
WhatsAppMessage
WiFi

3. Usage of the payload generators

3.1 BezahlCode

3.2 Bitcoin Payment Address

3.3 Bookmark

3.4 Calendar events (iCal/vEvent)

3.5 ContactData (MeCard/vCard)

3.6 Geolocation

3.7 Girocode

3.8 Mail

3.9 MMS

3.10 Monero address/payment

3.11 One-Time-Password

3.12 Phonenumber

3.13 Shadowsocks configuration

3.14 Skype call

3.15 SMS

3.16 SwissQrCode (ISO-20022)

3.17 URL

3.18 WhatsAppMessage

3.19 WiFi

4. Development of own payload types

Clone this wiki locally