Passes are a digital representation of information that might otherwise be printed on small pieces of paper or plastic. They let users take an action in the physical world. Passes can contain images and a barcode, and you can update passes using push notifications. The pass library contains the user’s passes, and users view and manage their passes using the Passbook app.
This technology is made of three main parts:
A package format for creating passes.
A web service API for updating passes, implemented on your server.
An Objective-C API used by your apps to interact with the user’s pass library.
At a Glance
This document covers the key concepts of the Passbook technology and explains the ways you can use it.
Passes Exist in a Larger Ecosystem
Passes exist within the context of a larger ecosystem including the Passbook app, your servers, the Apple Push Notification service, and your infrastructure for redeeming passes. Each of these components of the ecosystem is responsible for certain parts of the pass lifecycle.
Passes Are Created as a Package
You create passes by providing data, including a JSON file and image assets, in a package that contains the pass. The JSON file describes the contents of the pass and allows some control over the pass’s visual appearance. You sign this data using the private key for a certificate that you obtain from Apple. To keep your private key private, you sign passes on your server, not on the user’s device.
Passes Are Updated Using Push Notifications and Your Web Server
Passes can be updated after you distribute them. Updates use the Apple Push Notification service to inform the device that a new version of the pass is available, and a web service that your server implements to provide the latest version of the pass.
Your App Can Interact with Passes
Your apps can use the Pass Kit framework to interact with passes and the pass library. This allows you to install new passes and integrate passes into your app.
“Passbook” in iOS Human Interface Guidelines describes the guidelines for pass design.
Local and Push Notification Programming Guide describes how to send push notifications.
Passbook Package Format Reference describes the package format for defining passes.
Passbook Web Service Reference describes the web service protocol for updating passes.
Pass Kit Framework Reference describes the Objective-C API for interacting with the user’s pass library.
The Passbook support materials are available in the developer downloads area They contain fully-worked example passes, a command-line tool to help you sign passes during development, and a sample implementation of the web service.