Connect Campaign Monitor

How to connect Campaign Monitor, why you pick a client and a list, the four custom fields PocketPass writes back, and how to add an install button to a campaign.

Updated 8/7/2026

Campaign Monitor becomes the source of your wallet passes: PocketPass imports your subscribers, gives each one their own install link, and keeps a set of custom fields up to date on their subscriber record so you can see who's added their pass.

Connect it

Open the Integrations hub, find the Campaign Monitor card, and choose Connect. Authorise in Campaign Monitor and you're returned to PocketPass.

You can connect one customer list at a time. If you already have another CRM connected, disconnect it first.

Then pick a client, and a list

Campaign Monitor keeps everything under a client - its word for a sub-account - and subscribers inside a list under that. Authorising gives PocketPass access to the whole account, so it can't know which of them you mean. You'll be asked for both, one after the other, on the Campaign Monitor page.

Pick the list your passes should come from. Its subscribers become your Customers directory, and it's the list PocketPass writes its custom fields to. Nothing syncs until you've chosen.

You can change your mind later with Sync a different list - your existing customers aren't deleted, they're reconciled against the new list on the next sync.

What PocketPass writes back

PocketPass creates four custom fields on the list you nominated and keeps them current on every synced subscriber:

FieldWhat's in it
PocketPass LinkTheir full install page URL. This is the one to put behind a button.
PocketPass TokenJust the token, if you'd rather build the link yourself.
PocketPass InstalledYes once they've added the pass to a wallet, No before that.
PocketPass IDTheir PocketPass pass id, once one has been issued.

Campaign Monitor strips spaces when it turns a field name into a merge tag, so PocketPass Link is written [PocketPassLink,fallback=].

Custom fields belong to a list in Campaign Monitor, not to your account. These four exist only on the list you chose. If you build a campaign against a different list, the tags will resolve to nothing.

PocketPass Installed is the useful one for segmenting. Build a Campaign Monitor segment on it to find everyone who hasn't added their pass yet, and send them a reminder.

Add an install button to a campaign

  1. In your email, add a Button - or select some text and click the link icon.
  2. Paste this as the link destination:
[PocketPassLink,fallback=]
  1. Send. Campaign Monitor fills in each subscriber's own install URL.

One button covers both wallets: the page it opens detects the device and offers Apple Wallet or Google Wallet accordingly.

The Add an install button to your emails section on the Campaign Monitor manage page has this ready to copy, along with button HTML if you'd rather use a custom-coded email.

Two things that will otherwise catch you out

  • The fallback= part isn't optional. Campaign Monitor's personalization syntax requires a fallback clause. [PocketPassLink] on its own renders literally, as that text, in the email.
  • Build the campaign against the list you nominated. The four fields live on that list only, so a campaign sent to a different list produces empty links.

Lists and segments

PocketPass imports both lists and segments from the client you nominated - all of them, not just the list you sync passes from - so you can target notifications and write template rules against them. See Lists, tags & segments from your CRM.

Membership refreshes about once an hour rather than every few minutes. Campaign Monitor limits how fast we can call it, and checking every list and segment more often would crowd out the work that actually gets install links in front of your subscribers.

Keeping subscribers in sync

Use Refresh customers on the Campaign Monitor manage page to import your subscribers into the Customers directory. Between clicks, PocketPass keeps up in two ways:

  • A webhook, so someone subscribing, unsubscribing or having their details edited reaches PocketPass within moments.
  • A full check every few hours, which re-reads everything regardless. This is the safety net, and it matters more here than for other CRMs: Campaign Monitor's API can tell us when someone joined a list, but not when their details were last edited. The webhook covers edits in the normal case; the sweep catches anything it missed.

A large first import runs steadily rather than all at once. Campaign Monitor caps how many requests we can make per second, and updating a subscriber costs two of them (its API has no partial update, so PocketPass reads the whole record and writes it back intact). PocketPass paces itself and resumes automatically where it left off. Nothing is lost - it just isn't instant.

If updates seem to have stopped arriving quickly, Campaign Monitor may have switched the webhook off - it does that quietly after a run of failed deliveries, with no notification. Use Re-register webhook on the manage page. Your data stays correct in the meantime; it just refreshes on the slower schedule.

Triggering wallet pushes

Campaign Monitor journeys can't call a webhook. They can send email, wait, branch, update a custom field and move people between lists - but there's no step that calls an external URL, so a push can't be triggered from Campaign Monitor itself.

Two ways to get the same result:

  • Zapier - trigger a Zap on a Campaign Monitor event and add a "Webhooks by Zapier → POST" action.
  • The PocketPass API - POST to /api/v1/passes/{id}/notification from your own stack.

Either way you need the subscriber's pass id, which is on their record as PocketPass ID once their pass is installed. See Trigger notifications from your CRM.

You can always compose and send a push from the Notifications page in PocketPass without involving Campaign Monitor at all.

Disconnecting

Disconnect on the manage page stops subscriber syncing immediately and removes the webhook from your list. Existing passes keep working and keep updating.

Campaign Monitor has no way for an app to revoke its own access, so remove PocketPass from your Campaign Monitor account settings if you want the authorisation itself gone. The four custom fields stay on your list - delete them in Campaign Monitor if you want them gone.

More in Integrations