> ## Documentation Index
> Fetch the complete documentation index at: https://docs.passentry.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Product updates

> Follow release notes for the PassEntry Dashboard, API, and SDKs, including SSO improvements, new endpoints, and pass template features.

<Update label="September 2026" tags={["API"]}>
  ## Apple Generic Poster Design

  Apple's poster face is no longer limited to event tickets. Set `appleEnhancedDesign.type` to `generic` on an event ticket, generic or loyalty template to give its passes a full-bleed poster on iOS 27. Your fields sit over the artwork, and anything that does not fit moves into the information panel underneath.

  * Unlike the `eventTicket` design, the `generic` design needs no NFC or pass binding entitlement. Artwork is still required.
  * Each pass carries its standard layout alongside the poster, so devices below iOS 27 render the pass as they always have.
  * Add up to two `featuredActions` buttons under the poster. Each slot takes an action `type` and an `https://` URL, and the two slots must use different types.
  * Passes inherit the template's actions when they are created. Override a slot per-pass under `enhancedData.generic.featuredActions`, or send the slot as `null` to remove it.

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/apple-poster-generic-pass.jpg?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=ee595ea1354474f35e7ed24a65b05a1c" alt="Apple Wallet poster pass showing artwork, fields over the chin and two featured action buttons" style={{border: "1px solid #e0e0e0", borderRadius: "10px", width: "30%"}} width="828" height="1574" data-path="changelog/images/apple-poster-generic-pass.jpg" />

  Check out the guide here: [Apple Poster Designs](/documentation/passes/apple-poster-designs/guide)

  <Warning>This feature is in **closed beta**.<br />Please contact PassEntry for access.</Warning>
</Update>

<Update label="September 2026" tags={["API"]}>
  ## Numbers in dynamic pass fields

  Dynamic pass fields defined on your template now accept **integers and floats** as values, in addition to strings and `null`. This applies both to the top-level `value` and to per-locale `localisation.<locale>.value` entries on the [Create Pass](/api-reference/v1/passes/create-pass) and [Update Pass](/api-reference/v1/passes/update-pass) endpoints.

  Send a numeric quantity (points, tier number, price) without pre-formatting it as a string. Validation stays strict, so PassEntry still rejects unsupported types.

  ```json theme={null}
  {
    "pass": {
      "points": {
        "value": 1250,
        "localisation": {
          "fr": { "value": 1250 }
        }
      }
    }
  }
  ```

  Learn more: [Pass value localisation](/documentation/passes/localisation/guide#pass-value-localisation)
</Update>

<Update label="August 2026" tags={["API", "Dashboard"]}>
  ## Combine pass template and group tag filters in wallet messaging

  Wallet messaging batches can now target passes by **pass template and group tags together**. Previously you could filter by one or the other; combining them narrows the audience to passes on the chosen template that also carry at least one of the selected tags.

  * In the Dashboard, tick both **By pass template** and **By group tag** when filtering recipients - the counter shows the combined audience before you send
  * Via the API, include a `passTemplateId` segment and a `groupTags` segment in the same `segments` array

  ```json theme={null}
  "segments": [
    {
      "passTemplateId": "bf915c229114",
      "groupTags": ["summerPromotion", "easterOffer"]
    }
  ]
  ```

  Learn more: [Create Wallet Messaging Batch](/api-reference/v1/batches/create-wallet-messaging-batch)
</Update>

<Update label="July 2026" tags={["Dashboard"]}>
  ## Okta single sign-on for Dashboard

  Teams can now sign in to the PassEntry Dashboard with Okta. On the login page, choose **Sign in with Okta** and enter your work email — we'll route you to your organisation's Okta tenant automatically based on your email domain.

  * Email-based provider discovery — enter your work email and we redirect to the right Okta tenant
  * Per-organisation Okta configuration, scoped to an allowed set of email domains
  * Works alongside existing Google and Microsoft SSO options

  <Info>Okta SSO is available on request. Contact [support@passentry.com](mailto:support@passentry.com) to enable it for your organisation and configure your Okta tenant.</Info>
</Update>

<Update label="July 2026" tags={["API", "Dashboard"]}>
  ## Draft Pass Templates

  You can now save pass templates as **drafts** while you iterate on them, before making them live. Drafts let you experiment with different template designs — new layouts, fields or colours — without affecting your published catalogue or existing passes.

  * Create and edit drafts in the Dashboard while a template is still being designed
  * Publish a draft when it's ready to issue passes from; delete the ones you no longer need
  * Drafts are capped at 20 per organisation, but **don't count against your pass template quota** — feel free to keep a working set as you experiment
  * Every pass template response now includes a `status` field (`"draft"` or `"published"`)
  * `GET /api/v1/pass-templates` accepts an optional `?status=` filter (comma-separated list of `draft` or `published`)

  Learn more: [Draft and published templates](/documentation/pass-template-types-explained#draft-and-published-templates)
</Update>

<Update label="April 2026" tags={["API"]}>
  ## Apple Poster Event Ticket Support

  We've added support for Apple's poster event ticket experience (iOS 18+), allowing you to create full-bleed event tickets with rich event information.

  **Pass Templates:**

  * Enable poster event tickets via the `appleEnhancedDesign` field
  * Configure artwork, secondary logo, and venue map images at the template level

  **Passes:**

  * Add rich event data including event details, venue information, seating, and event guide URLs via the `enhancedData` field
  * Override template images per-pass using the new `artworkImage`, `secondaryLogoImage`, and `venueMapImage` fields in `templateOverride`

  <Warning>This feature requires NFC entitlement and is in **closed beta**.<br />Please contact PassEntry for access.</Warning>
</Update>

<Update label="April 2026" tags={["API"]}>
  ## Pass Nullification

  You can now permanently nullify a pass via the API, irreversibly removing all dynamic data (fields, barcode, NFC, images) while preserving a tombstone record for billing and compliance. Nullified passes appear as "Deactivated" in the wallet, and their External ID is freed for reuse.

  Check out the guide here: [Pass Nullification](/documentation/passes/nullification/guide), [Nullify Pass endpoint](/api-reference/v1/passes/nullify-pass)
</Update>

<Update label="March 2026" tags={["API"]}>
  ## Pass Binding in open beta

  Pass binding restricts a digital pass to a specific wallet account, preventing sharing or unauthorized use.

  **Google Wallet** — The pass is restricted to a specific Google account using a SHA-256 email hash. Only the matching account can save the pass.

  **Apple Wallet** — The pass is bound to the user's device using FIDO hardware key authentication, requiring Face ID or Touch ID. Apple binding is mainly beneficial for NFC passes, as it disables the NFC on the pass.

  API docs here: [Create Pass](/api-reference/v1/passes/create-pass)

  Check out the guide here: [Pass Binding](/documentation/passes/pass-binding/guide)

  <Warning>This feature is in **open beta** and can be requested via a custom plan or reach out directly to [support@passentry.com](mailto:support@passentry.com) - let us know if you encounter any issues or have feedback.</Warning>
</Update>

<Update label="March 2026" tags={["Dashboard"]}>
  ## Geofencing Improvements on Dashboard

  We've enhanced Geofencing in the new pass template builder with a unified map view and overlap warnings to prevent duplicate notifications. We've also clarified Apple vs Google behaviour, including device-specific settings and limitations.
</Update>

<Update label="March 2026" tags={["API"]}>
  ## Image Assets API

  Upload images once and reference them by ID across multiple passes using `templateOverride`. This reduces duplication and simplifies pass image management.

  * Create, list, and view image assets via the API
  * Supported image types: banner, logo, and thumbnail
  * Supports direct URL and base64 encoded uploads (PNG, JPG, WebP)
  * Batch operations now support image asset override columns

  Check out the guide here: [Image Assets](/api-reference/v1/image-assets/guide)
</Update>

<Update label="February 2026" tags={["Dashboard"]}>
  ## New pass template builder

  We're rolling out a new pass template builder which includes a range of performance, design, and layout improvements. Major changes include:

  * Creating transit passes directly from the dashboard
  * Adding localisation to pass templates via the dashboard
  * Uploading more device-specific images for Apple and Google passes

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/new-pass-template-builder.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=62fd51881ad4b2aa49c5dbaa9ac19e2c" alt="New pass template builder" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="2816" height="1798" data-path="changelog/images/new-pass-template-builder.png" />
</Update>

<Update label="December 2025" tags={["API"]}>
  ## Support for external Apple Pass Type Identifier Certificates

  We've added support for external Apple Pass Type Identifier Certificates.
  This allows you to use your own Pass Type Identifier Certificates, rather using our internal certificates.
  Check out the guide here: [Adding an Apple Pass Certificate](/documentation/adding-an-apple-pass-certificate)
</Update>

<Update label="November 2025" tags={["API", "Dashboard"]}>
  ## Batch Pass Update via CSV in closed beta

  We've added support for batch pass update via CSV.
  Batch updates are scheduled to run at a specified time, and can be cancelled if needed.
  Check out the guide here: [Batch Pass Update](/documentation/bulk-operations/batch-pass-update/guide)

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/pass-update-index.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=bdcaa8a1675ea1fd6b0f79668be26086" alt="Batch Update Index" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="2482" height="1266" data-path="changelog/images/pass-update-index.png" />

  <Warning>This feature is in **closed beta**.<br />Please contact PassEntry for access.</Warning>
</Update>

<Update label="November 2025" tags={["Dashboard"]}>
  ## Multi-Factor Authentication (MFA) for Dashboard

  We've added multi-factor authentication (MFA) for PassEntry dashboard accounts.

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/mfa-dashboard-login.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=119a3ddd1a5eb4ba424ba5cadb831e1c" alt="MFA dashboard login" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="1910" height="1039" data-path="changelog/images/mfa-dashboard-login.png" />

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/mfa-dashboard-login-2.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=cb8d16c4c10c02a634b13767daad0b72" alt="MFA dashboard login" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="1903" height="1025" data-path="changelog/images/mfa-dashboard-login-2.png" />

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/mfa-dashboard-login-3.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=f0216676afcd8db88963907e8a7dfe30" alt="MFA dashboard login" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="787" height="586" data-path="changelog/images/mfa-dashboard-login-3.png" />
</Update>

<Update label="October 2025" tags={["API"]}>
  ## Resetting overridden pass template fields

  After using the `templateOverride` option on pass to override template design,
  you can now revert to the original template design by passing `null` to any previously overridden value.

  Check out the guide here: [Pass Template Override](/api-reference/v1/passes/update-pass#body-pass-template-override)
</Update>

<Update label="October 2025" tags={["API", "Dashboard"]}>
  ## Geofencing for Android

  Geofencing, previously available only on Apple Wallet, is now supported for Google Wallet passes.
  You can configure locations and enable geofencing for Android devices.
</Update>

<Update label="September 2025" tags={["API"]}>
  ## Pass Value Localisation

  We've added support for localising pass field values. This is available in the pass create and update endpoints.

  For more information and usage examples, check out the [Translating Passes: Localisation](../documentation/passes/localisation/guide) Guide.

  <Warning>This feature is in **closed beta** and currently only available on the API.<br />Please contact PassEntry for access.</Warning>
</Update>

<Update label="September 2025" tags={["API"]}>
  ## Pass Template Localisation

  We've added per‑field localisation so you can present pass content in your customers' preferred language without duplicating templates. You can now localise both field labels and values by providing translations under the optional `localisation` object (keyed by language codes like `en`, `fr`, `is`).

  The `defaultLanguage` defines the fallback, and responses only include localisation when translations exist. You can localise any subset of fields – untranslated fields automatically use the default language.

  For more information and usage examples, check out the [Translating Passes: Localisation](../documentation/passes/localisation/guide) Guide.

  <Warning>This feature is in **closed beta** and currently only available on the API.<br />Please contact PassEntry for access.</Warning>
</Update>

<Update label="August 2025" tags={["API"]}>
  ## New Transit Pass type

  We've added a new transit pass type to the API. This allows you to create a pass that is used for transit.

  <Warning>This is currently only available on the API.<br />Dashboard support is limited — preview and editing are restricted.</Warning>

  Check out the guide here: [Transit Pass Template](/api-reference/v1/pass-templates/create-pass-template), [Transit Pass](/api-reference/v1/passes/create-pass)
</Update>

<Update label="August 2025" tags={["Dashboard", "Pass Download Page"]}>
  ## Pass Download Page - Localisation

  We've added support for localising the pass download page into up to 5 different languages. This is available in the pass download page editor under the 'Languages' section.
</Update>

<Update label="July 2025" tags={["API", "Dashboard"]}>
  ## Dynamic Barcode Values

  You can now make the barcode value dynamic by using the `%{passData.xyz}` syntax(e.g., `Hello, %{passData.extId}!`). Currently, only `%{passData.extId}` and `%{passData.uuid}` are supported.

  Check out the guide here: [Pass Barcode](/api-reference/v1/passes/create-pass#body-pass-barcode-value), [Pass Template Barcode](/api-reference/v1/pass-templates/create-pass-template#body-pass-template-barcode-value)
</Update>

<Update label="July 2025" tags={["API"]}>
  ## Webhook Subscriptions API

  We've introduced a new Webhook Subscriptions API that allows you to programmatically manage your webhook endpoints and supports multiple webhook subscriptions. You can now:

  * Create, update, and delete webhook subscriptions
  * List all your active webhook subscriptions
  * Test webhook endpoints before going live
  * Rotate webhook secret keys for enhanced security

  Each webhook subscription can be configured to receive specific event types, making it easier to manage different integration endpoints.

  Check out the guide here: [Webhook Subscriptions API](/api-reference/v1/webhook-subscriptions/guide)
</Update>

<Update label="July 2025" tags={["Dashboard", "Pass Download Page"]}>
  ## Pass download page troubleshooting link

  We've added a new option to include a Help & FAQs link on a pass download page. When enabled, this link will redirect users to the troubleshooting URL you provide—making it easier for them to get assistance during the download process.

  This feature is available in the pass download page editor.
</Update>

<Update label="July 2025" tags={["API"]}>
  ## Pass Template Fields API

  You can now use the `override_field_value` key to enforce the latest default values from a pass template.<br />
  When this key is set to `true`, all existing pass field values will be overridden with the current defaults defined in the pass template.

  If the key is not provided, it defaults to `false`, which means existing field values will be preserved and not forcibly updated.

  <Info>This key is only available when updating a pass template.</Info>

  Check out the guide here: [Pass Template Fields API](/api-reference/v1/pass-templates/update-pass-template#body-pass-template-fields)
</Update>

<Update label="July 2025" tags={["API"]}>
  ## Pass Templates API now in open beta

  We’ve opened up access to the Pass Templates API to all users. You can now use it to create, update, and list pass templates, as well as manage template settings.

  If you run into any issues or have feedback, feel free to reach out to [support@passentry.com](mailto:support@passentry.com).

  Read the guide to get started: [Pass Templates API](/api-reference/v1/pass-templates/create-pass-template)
</Update>

<Update label="July 2025" tags={["Dashboard"]}>
  ## Pass Download Pages

  We've added a new feature that allows you to create multiple custom pass download pages for your organisation. A page can be associated with an entity or one or more pass templates. This feature is available in the pass download pages section of the dashboard.

  Check out the guide here: [Pass Download Pages](../documentation/passes/downloading-passes/guide)
</Update>

<Update label="June 2025" tags={["API"]}>
  ## Pass Created Webhook

  We've added a new webhook for when a pass is created. This webhook is triggered when a pass is created via API, dynamic forms or any other method.
</Update>

<Update label="June 2025" tags={["API"]}>
  ## Ability to filter passes by external ID prefix

  You can now filter passes by external ID prefix to group passes together by extId, if they share a common prefix text value.

  `extIdPrefix`

  Check out the guide here: [Passes API](/api-reference/v1/passes/list-passes)
</Update>

<Update label="June 2025" tags={["API"]}>
  ## Pass Templates API released on closed beta

  We've added a new API for managing pass templates. This allows you to create, update, and delete pass templates, as well as manage pass template settings.

  This API is currently in closed beta, and is only available to select users. If you'd like to join the beta, please contact us at [support@passentry.com](mailto:support@passentry.com).

  Check out the guide here: [Pass Templates API](/api-reference/v1/pass-templates/create-pass-template)
</Update>

<Update label="May 2025" tags={["Dashboard"]}>
  ## Support for different barcode types

  We've added support for different barcode types, including `code128`, `pdf417`, and `aztec`.
  You can now select the barcode type from a dropdown when creating a pass and set the default barcode type for a pass template on dashboard.

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/barcode-pass-template-default.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=38e844becb33d9a7f3e5a58a64b4af0b" alt="Barcode template defaults" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="1920" height="1080" data-path="changelog/images/barcode-pass-template-default.png" />
</Update>

<Update label="May 2025" tags={["Dashboard"]}>
  ## Improved team access controls

  Admins can now invite and remove team members, no longer limited to the lead account. A new "member" role offers view-only access.

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/account-management-meatball-menu.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=9310013c32be0ac62664a20f33db5064" alt="Account Meatball menu" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="808" height="129" data-path="changelog/images/account-management-meatball-menu.png" />

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/account-management-change-role-modal.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=d504a4c360207590bd20cd27c89fcd69" alt="Change role modal" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="459" height="274" data-path="changelog/images/account-management-change-role-modal.png" />
</Update>

<Update label="April 2025" tags={["Dashboard"]}>
  ## Additional app linking options

  **Apple**

  Passes now support multiple App Store links, displaying the first available app in the passholder's country.

  **Google**

  Added customisable display text for Google App links on the front of passes.
</Update>

<Update label="April 2025" tags={["Dashboard"]}>
  ## Custom NFC source for passes and setting NFC defaults at template level

  When creating a pass via dashboard, you can now select the NFC source from a dropdown. This allows you to use a custom NFC source for your pass.
  You can also set the default NFC source for a pass template, which will be used when creating a new pass from that template.

  <img src="https://mintcdn.com/passentry-0/1mlKidz_QLv_-t2a/changelog/images/nfc-template-defaults.png?fit=max&auto=format&n=1mlKidz_QLv_-t2a&q=85&s=28f3aa3b8559e2609bb289ed36b29a31" alt="NFC template defaults" style={{border: "1px solid #e0e0e0", borderRadius: "10px"}} width="578" height="280" data-path="changelog/images/nfc-template-defaults.png" />
</Update>

<Update label="April 2025" tags={["Dashboard", "Pass Download Page"]}>
  ## Custom pass download success message

  We've added a new feature that allows you to customise the success message that is displayed when a pass is downloaded. This feature is available in the pass download page editor.
</Update>

<Update label="April 2025" tags={["API", "Readers", "Dashboard"]}>
  ## Loyalty Info Now Visible on Scans

  We've added loyalty data to the `/scans` and `/scans/log` endpoints - meaning loyalty actions are now logged at the scan level and visible in the 'Scans' section on the dashboard. You can now validate a pass and manage loyalty in a single request, with support for `add`, `redeem`, `override`, and `stamp` operations.
</Update>

<Update label="April 2025" tags={["Dashboard", "Readers"]}>
  ## VTAP Automatic Reader Setup

  You can now set up your VTAP readers automatically via the PassEntry Dashboard - no need to access VTAP Cloud. The setup takes just a few minutes.

  Check out the guide here: [VTAP Automatic Reader Setup](../documentation/guides/vtap-reader/guide)
</Update>

<Update label="April 2025" tags={["API"]}>
  ## Batches API

  You can now interact with batches via [API](/api-reference/v1/batches/guide).

  We currently support listing, cancelling, and viewing batches, as well as creating wallet messaging batches.
</Update>

<Update label="March 2025" tags={["Dashboard"]}>
  ## Custom Pass Issuance Forms

  We've added a new feature that allows you to create custom pass issuance forms for your passes. This feature is available in the pass template editor.

  Check out the guide here: [Custom Pass Issuance Forms](/documentation/guides/custom-download-forms/guide)
</Update>

<Update label="March 2025" tags={["Dashboard"]}>
  ## Dashboard Redesign

  We've redesigned the Dashboard to improve visibility, filtering, and performance. The update includes top-level stats, and enhanced Passes, Scans, and Messaging sections with detailed breakdowns and flexible date range controls (7 days, 1 month, 6 months, all time). We've also made performance improvements for faster loading.
</Update>

<Update label="February 2025" tags={["API"]}>
  ## Auto-format notification links

  When sending a notification with a link, the link will now be formatted automatically so it is clickable on both Apple and Google, without needing to know the device type.

  Check out the guide here: [Notification links](../documentation/passes/notifications/guide)
</Update>

<Update label="October 2024" tags={["API", "Dashboard", "Readers"]}>
  ## Third Party Validation

  We've added support for third-party validation. This allows you to use your own validation logic, such as a QR code scanner, to validate passes.

  Check out the guide here: [Third Party Validation](../documentation/guides/validation-options/guide)
</Update>


## Related topics

- [We value your feedback](/feedback/guide.md)
- [Design Guide](/documentation/passes/design/guide.md)
