Package Structure

Pass files are stored on disk as a zipped package with the pkpass file extension.

Localized resources are loaded using the standard bundle localization techniques, which are implemented by the NSBundle class. For more details, see Internationalization and Localization Guide.

The top level of the package contains the following files:


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


The image displayed on the front of the pass near the barcode.


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.


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


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.


A JSON dictionary that defines the pass. Its contents are described in detail in Top-Level Keys.


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


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


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.