Skip to main content

Pass Creation Links

Create and share personalized passes without CSV uploads or APIs

R
Written by Rachel Miller

Distribute personalized passes at scale. Pass Creation Links let you embed pass delivery directly into your existing email, SMS, or CRM campaigns.

Each click on a Pass Creation Link creates a unique pass for that user and delivers it instantly to their wallet.


🔗 How Pass Creation Links Work

When a user clicks a Pass Creation Link:

  1. Badge reads the attributes in the URL

  2. A unique pass is created for that user

  3. The user is taken directly to their pass download page

The link itself is a URL template. Before you distribute it, you fill in the user and pass attributes for each recipient. Typically you can use your email platform's merge tag or personalization feature.

💡Tip: Consider routing your links through your email or SMS platform's link tracking. This gives you click analytics alongside your other campaign data, and as a bonus, it hides the raw URL parameters from recipients.


✏️ Creating a Link

  1. Go to your pass template and open Pass Creation Links

  2. Click + Create Link

  3. Fill in the fields (shown in the table below)

  4. Click Create Link

  5. Copy the URL from the confirmation dialog

Field

What it does

Name

A label to identify this link. Not visible to users.

Accepts Updates

If the user already has a pass, update it instead of creating a new one.

Link Expiration

Set a date and time after which the link stops working.

Restrict Attributes

Limit which attributes can be set via this link. See below.

Primary Location

Accepts a location coordinate to personalize the pass for the user's region. Pass decimal coordinates separated by a comma, e.g. location=40.7580,-73.9855.


Once you have made a link, you will see the URL Template that you can use as a base for your distributed links. (need to update image - pending small fix)


📋 Filling In the URL

The link Badge generates is a template. It contains placeholders for userId, passId, and any pass or user attributes you have chosen to set.

Example:

https://api.trybadge.com/l/<uniqueLinkId>?userId={userId}&passId={passId}&pass.points={value}&user.email={value}&location={latitude,longitude}

⚠️ userId and passId are required. Every link must include both. Without them, Badge cannot create or match a pass to the right user. These should be your stable internal identifiers for each customer.

Before sending, replace each {value} placeholder with real data for each recipient. For example, user.firstName=Fred. Most email and SMS platforms handle this automatically using merge tags or personalization fields.

If you're using the location field, pass decimal coordinates separated by a comma: location=40.7580,-73.9855.

💡Tip: You can pass any custom user.* or pass.* attribute your template supports. For example, pass.points, pass.tier, or user.memberSince. This lets you pre-populate the pass with live data at the moment of creation.


📤 Distributing Your Link

Pass Creation Links work anywhere you can include a URL. Consider routing your links through your email or SMS platform's link tracking, which will provide your click analytics and hide the raw URL parameters from recipients

  • Email — use your platform's merge tags to personalize the link per recipient

  • SMS — include the personalized link directly in the message

  • Any other channel of your choice


⚙️ Managing Your Links

From the Pass Creation Links page, each link shows:

  • Its current status: Active, Deactivated, or Expired

  • The number of passes created and total visits

  • Created date and expiry date (if set)

  • Configuration at a glance — whether it accepts updates, has attribute restrictions, or uses location

To edit a link, click the options menu and select Edit.

⚠️ Changes to an active link take effect immediately and apply to all previously distributed URLs. If you need different settings without affecting existing links, create a new link instead.

To deactivate a link, select Deactivate from the options menu. The link stops working immediately. Any URLs already shared will no longer create passes.

To reactivate a link, select Reactivate. The link starts working again straight away.

⚠️ Deactivated and expired links cannot be used to create passes. If you need to re-engage users, it may be best to create a new link and redistribute.


🔒 Restricting Attributes

By default, a Pass Creation Link can set any user.* or pass.* attribute your template supports.

If you want to limit what can be set via a specific link, for example, to prevent certain fields from being overwritten you can enable Restrict Attributes when creating or editing the link and select which attributes are allowed.

Any attributes not on the allowlist will be ignored, even if they're included in the URL.


🔔 Link States

Status

What it means

Active

The link is working and will create passes on click

Deactivated

Manually turned off. The link will not create passes.

Expired

Past its expiry date. The link will not create passes.


🙋 Need help? Reach out to your Badge customer success manager or contact our support team.

Did this answer your question?