# wallet_passes v0.8.0 - Table of Contents

> An Elixir library for Apple Wallet and Google Wallet pass generation.

## Pages

- [WalletPasses](readme.md)
- [LICENSE](license.md)

- Guides
  - [Getting Started](getting-started.md)
  - [Apple Wallet](apple-wallet.md)
  - [Google Wallet](google-wallet.md)
  - [Pass Lifecycle &amp; Updates](lifecycle.md)
  - [Event Handling &amp; Wallet Presence](event-handling.md)
  - [Localization](localization.md)
  - [Pass Types](pass-types.md)
  - [NFC &amp; Smart Tap](nfc.md)
  - [Theming &amp; Visual Design](theming.md)
  - [Telemetry](telemetry.md)
  - [Add-ons](addons.md)
  - [Local Development](local-development.md)

## Modules

- Core
  - [WalletPasses](WalletPasses.md): Apple Wallet and Google Wallet pass generation, management, and remote updates.
  - [WalletPasses.Config](WalletPasses.Config.md): Centralised accessors for `:wallet_passes` Application env.
  - [WalletPasses.PassData](WalletPasses.PassData.md): Platform-agnostic representation of wallet pass content.
  - [WalletPasses.PassType](WalletPasses.PassType.md): Maps pass type atoms to platform-specific type strings.
  - [WalletPasses.QR](WalletPasses.QR.md): QR code generation for wallet passes.
  - [WalletPasses.Theme](WalletPasses.Theme.md): Shared color/styling helper that produces platform-specific visual structs.
  - [WalletPasses.TokenCache](WalletPasses.TokenCache.md): ETS-backed cache for Google service-account OAuth access tokens.

- Apple
  - [WalletPasses.Apple.Builder](WalletPasses.Apple.Builder.md): Builds Apple Wallet .pkpass bundles.
  - [WalletPasses.Apple.PKCS7](WalletPasses.Apple.PKCS7.md): Constructs PKCS#7 SignedData structures for Apple Wallet pass signing.
  - [WalletPasses.Apple.Push](WalletPasses.Apple.Push.md): Sends silent APNs push notifications to Apple Wallet devices.
  - [WalletPasses.Apple.Router](WalletPasses.Apple.Router.md): Plug.Router implementing Apple's required REST API for wallet pass updates.
  - [WalletPasses.Apple.Visual](WalletPasses.Apple.Visual.md): Apple Wallet visual configuration for a pass.

- Google
  - [WalletPasses.Google.Api](WalletPasses.Google.Api.md): Google Wallet API client for wallet passes.
  - [WalletPasses.Google.CallbackVerifier](WalletPasses.Google.CallbackVerifier.md): Verifies Google Wallet callback envelopes per the `ECv2SigningOnly` protocol.
  - [WalletPasses.Google.Router](WalletPasses.Google.Router.md): Plug.Router for Google Wallet class callbacks.
  - [WalletPasses.Google.SaveUrl](WalletPasses.Google.SaveUrl.md): Generates 'Save to Google Wallet' URLs via signed JWTs.
  - [WalletPasses.Google.Visual](WalletPasses.Google.Visual.md): Google Wallet visual configuration for a pass.

- Schema
  - [WalletPasses.Schema](WalletPasses.Schema.md): Query functions for wallet pass schemas.
  - [WalletPasses.Schema.ApplePass](WalletPasses.Schema.ApplePass.md): Ecto schema for Apple wallet passes.
  - [WalletPasses.Schema.DeviceRegistration](WalletPasses.Schema.DeviceRegistration.md): Ecto schema for Apple device push notification registrations.
  - [WalletPasses.Schema.GoogleCallback](WalletPasses.Schema.GoogleCallback.md): Audit log of Google Wallet save/delete callbacks for a pass.
  - [WalletPasses.Schema.GooglePass](WalletPasses.Schema.GooglePass.md): Ecto schema for Google wallet passes.

- Lifecycle
  - [WalletPasses.PassDataProvider](WalletPasses.PassDataProvider.md): Behaviour for consumers to implement pass data lookups.
  - [WalletPasses.Sync](WalletPasses.Sync.md): Convenience functions for background pass syncing.
Optional — requires `oban` dependency.

  - [WalletPasses.Sync.Worker](WalletPasses.Sync.Worker.md): Oban worker that bulk-updates wallet passes.
Optional — requires `oban` dependency.

- Event Handling
  - [WalletPasses.Application](WalletPasses.Application.md): OTP application module — started automatically when `:wallet_passes` is in
the consumer's deps.
  - [WalletPasses.EventHandler](WalletPasses.EventHandler.md): Behaviour for reacting to wallet pass lifecycle events from both Apple and
Google.
  - [WalletPasses.EventHandler.Dispatch](WalletPasses.EventHandler.Dispatch.md): Internal dispatcher for `WalletPasses.EventHandler` callbacks.

- Preview
  - [WalletPasses.Preview.Components](WalletPasses.Preview.Components.md): LiveView function components for previewing wallet passes.

## Mix Tasks

- [mix wallet_passes.gen.apple_nfc_key](Mix.Tasks.WalletPasses.Gen.AppleNfcKey.md): Generates a P-256 (secp256r1) keypair for Apple Wallet NFC passes (VAS).
- [mix wallet_passes.gen.migration](Mix.Tasks.WalletPasses.Gen.Migration.md): Generates the Ecto migrations for WalletPasses tables.

