Step by Step
Head over to the passes section, you will a find a “Create Passes | via CSV” button

Configuration
Ensure the CSV is formatted in UTF-8 encoding.
Fixed headers
Column Name | Description | Required? | Example | Type |
---|---|---|---|---|
ext_id | External ID for the pass | Yes | Pass12345 | Text (Any) |
group_tag (deprecated) | Tag to group passes | No | summer_offer_24, Loyalty Program | Text (Any) |
group_tags | Comma separated tags to group passes | No | summer_offer_24 | Text (Any) |
nfc_enabled | Boolean to enable NFC | No | true | Boolean (true or false) |
nfc_source | Source of NFC data | No | extId | Text (extId or uuid or custom) |
nfc_custom_value | Custom value for NFC, nfc_source must be set to custom | No | summer_20_off | Text (any) |
barcode_qr_value | Value for the barcode or QR code | No | abcd12345 | Text (Any) |
barcode_qr_display_text | Boolean to display qr value as text under barcode | No | true | Boolean (true or false) |
expires_at | Expiration date and time for the pass | No | 2024-08-14T18:12:11Z | Datetime in iso8601 format |
Dynamic headers
As each template might have custom fields, this can be identified and set via custom, dynamic headers. When creating a template, you set anID
for each field.
This can then be targeted in your CSV by including the prefix passfield_
followed by your template ID.
Example:
In your pass template, you’ve chosen to display Field 1 as “Customer Name”, and given it the ID
of “name”.
Then, for each row in your CSV, you’ve entered a different name, to correspond with the data downloaded from your system.
In which case, your CSV would need to have a row called passfield_name

Special Characters and Markdown
When working with CSV files that include special characters such as commas, quotes, or line breaks—and especially when embedding HTML or markdown-style content—it’s important to format fields correctly to ensure they are parsed reliably. Follow these rules:- Commas (
,
): Wrap the entire field in double quotes ("
). - Line breaks (
\n
): Wrap the entire field in double quotes ("
). - Double quotes (
"
) inside fields: Use double quotes around the field, and escape inner quotes by doubling them (""
). - Markdown or HTML: Use double quotes around the full field, and use single quotes inside HTML attributes to avoid quote conflicts, or escape double quotes if needed.
Desired Field Content | CSV-Compliant Value |
---|---|
London, UK | ”London, UK” |
London\nUK (line break) | “London\nUK” |
<a href="https://example.com">Link</a> | "<a href='https://example.com'>Link</a>" |
”Quoted Text" | """Quoted Text""" |
<a href="https://example.com">"Link"</a> | "<a href='https://example.com'>""Link""</a>" |
Results
Once you’ve uploaded your CSV, you’ll be able to track the progress of your batch on the Passes page.
ext_id | uuid | download_url |
---|---|---|
Pass12345 | 1234567890 | https://download.passentry.com/download?pass=1234567890 |
Pass12346 | 1234567891 | https://download.passentry.com/download?pass=1234567891 |