Skip to main content
Before you can create passes using the PassEntry API, you need a pass template. A template serves as a blueprint for your passes and includes various components such as fields, colours, images and value keys.

Create a pass template

You can create a pass template directly from the Dashboard, on the Pass Templates page. Click Create Pass Template in the top right corner (direct link: https://app.passentry.com/pass-templates/create). Once created, the pass template appears in the Pass Templates page.

See the pass templates list

All pass templates are displayed on the Pass Templates page of your Dashboard (direct link: https://app.passentry.com/pass-templates).

Updating a pass template

Pass templates can be updated via the Dashboard or via the Update Pass Template API. Template-level changes such as colours, images and field labels are applied to all existing passes when the template updates.

Field default values do not propagate by default

When you change a field’s defaultValue on a template, the new value is only applied to newly created passes. Existing passes keep whatever value they already have on that field. To push the new default value out to all existing passes that use the template, set overrideFieldValue: true on the field in your update request. Fields are keyed by section (header, central, details, back) and then by position (one to six):
overrideFieldValue is accepted on Update Pass Template only. Sending it on Create Pass Template returns a validation error.

When the override applies

An existing pass is updated only when all of the following are true:
  • You send a new defaultValue for the field in the same request. overrideFieldValue: true on its own does nothing.
  • The new defaultValue differs from the one currently stored on the template.
  • The pass already carries that field id. Passes that do not have the field yet pick up the new default regardless of overrideFieldValue.
Only live passes are updated. Nullified and expired passes are left untouched.
overrideFieldValue: true replaces the value on every live pass, including values you set per pass through the Update Pass API or a batch pass update. Those per-pass values are lost.
Use overrideFieldValue only when updating the default value of a field. To change individual pass values without touching the template default, use the Update Pass API or the Batch Pass Update guide instead. The same flag controls localised default values. See Localisation for details.

NFC and barcode changes do not propagate by default

Changes to the nfc or barcode objects on a template follow the same rule as field default values. By default, the new configuration only applies to newly created passes. Existing passes keep their current NFC or barcode settings. To push a new NFC configuration out to all existing passes, set overrideNfc: true inside the nfc object on your update request:
To push a new barcode configuration out to all existing passes, set overrideBarcode: true inside the barcode object:
Update Pass Template accepts both flags. Create Pass Template ignores these flags since there are no existing passes to override.

Per-pass resolution

When an override runs, PassEntry resolves the value for each existing pass:
  • source: "uuid" uses each pass’s UUID as the NFC message or barcode value.
  • source: "extId" uses each pass’s extId. Passes without an extId are skipped and keep their existing settings.
  • source: "custom" uses the customValue (for NFC) or value (for barcode) from your update request.
For NFC, passes belonging to an entity that does not have NFC access are also skipped.
overrideNfc: true and overrideBarcode: true replace the NFC or barcode configuration on every live pass on the template. This includes values you set per pass through the Update Pass API. Those per-pass values are lost.
Use these flags only when you want the new template-level NFC or barcode configuration to apply to existing passes. To change NFC or barcode values on individual passes without touching the template, use the Update Pass API instead.