Wallet

Wallet (formerly Passbook) is an application in iOS that allows users to store coupons, boarding passes, and other forms of mobile payments. It was announced by Apple at the 2012 Apple Worldwide Developers Conference on 2012 and finally released with iOS 6 on 2012.

Features
The Wallet application displays 2D barcodes of following types:


 * Aztec
 * PDF417
 * QR

Each digital coupon or ticket is known as a "pass". When the user launches Wallet for the first time, they will be redirected to the App Store to download applications with Wallet integration. Passes can also be added using a web browser and the built-in Mail application as well, along with the corresponding OS X applications in OS X Mountain Lion and later.

Although the application is available in iOS 6 or later, it is currently only available on iPhone and iPod touch, but not on iPad.

Wallet has the following features:


 * Displays 2D barcodes of following types: Aztec, PDF417 and QR.
 * Triggered by location.
 * Triggered by time of pass.
 * Can be updated by the pass provider or user himself.

Wallet Passes
Pass files are stored on disk as a zip file package with the pkpass file extension. The top level of the package contains the following files:

The image displayed as the background of the front of the pass.
 * background.png

The image displayed on the front of the pass near the barcode.
 * footer.png

The pass’s icon. This is displayed in notifications and in emails that have a pass attached, and on the lock screen. When it is displayed, the icon gets a shine effect and rounded corners.
 * icon.png

The image displayed on the front of the pass in the top left.
 * logo.png

A JSON dictionary. Each key is the path to a file (relative to the top level of the bundle) and the key’s value is the SHA-1 hash for that file. Every file in the bundle appears in the manifest, except for the manifest itself and the signature.
 * manifest.json

A JSON (JavaScript Object Notation) dictionary that defines the pass. Its contents are described in detail in “Top-Level Keys.” Example: http://pastebin.com/y3Sgc3r6
 * pass.json

A detached PKCS#7 signature of the manifest.json file.
 * signature

The image displayed behind the primary fields on the front of the pass.
 * strip.png

An additional image displayed on the front of the pass. For example, on a membership card, the thumbnail could be used to a picture of the cardholder.
 * thumbnail.png

Note: All of the pass’s images are loaded using standard UIImage image-loading methods. This means, for example, the file name of high resolution (retina) version of the image ends with @2x.png.

Transportation Services on Wallet
The following services currently support Wallet passes.
 * Air China
 * Air Canada
 * American Airlines
 * Lufthansa
 * Porter Airlines
 * United Airlines
 * Virgin Australia Airlines
 * Amtrak

Loyalty Cards
The following loyalty cards are available on Wallet.
 * Gyft
 * Sephora
 * Staples
 * Starbucks
 * Target Corporation
 * Valpak
 * Walgreens

Online Pass Creators
The following websites allow you to create Wallet content.

iPhone Apps
The following Apps allow you to create Wallet passes.
 * Kiip
 * Klout
 * Belly Card

Software
To generate or validate Wallet passes, there are many tools, libs and classes in various programming languages available.