Passmint
TemplatesDocsPricingBlog
Log inGet started
Passmint

Apple and Google Wallet passes from one API. Built for people who ship.

Product
  • Pass Designer
  • Developers
  • Distribution
  • Analytics
  • Templates
  • Pricing
Developers
  • Documentation
  • API reference
  • Node SDK
  • Webhooks
Company
  • Changelog
  • About
  • Contact
  • Support
  • Security
  • Terms
  • Privacy
Social
  • GitHub
  • X

© 2026 Passmint. Built for indie makers.

Apple Wallet & Google Wallet, one API.

CRM & marketing

Give every new Mailchimp subscriber a wallet coupon they won't lose

Your welcome email's open rate is a coin toss, and the offer inside gets buried by the next campaign. Drop the same discount code into a wallet coupon instead — it sits on the phone, can resurface on the lock screen, and is one tap from redemption.

Start freeRead the docs →
Apple & Google WalletNo-code via ZapierFree to start
Mailchimp
New Subscriber
via Zapier
Passmint
Create Pass
Membership card

What you can do

A few ways teams put Mailchimp and Passmint to work together.

The core flow: New Subscriber → Create Pass with a coupon template. Every person who joins your audience gets the signup offer as a wallet card with the code and expiry built in — no copy-pasting a code out of an email that may never get opened.
Use Mailchimp's 'tag added' trigger and a loyalty template instead. When you tag a subscriber as VIP (or your most-engaged segment earns it), they get a loyalty card in their wallet — and you can keep its points or tier current later with Find Pass → Update Pass.
Running a launch event or webinar off a dedicated audience or signup form? Swap in an event template so each registrant gets an Apple/Google Wallet pass with the date, time, and join link — a reminder that surfaces on the lock screen the morning of, where an email in a crowded inbox wouldn't.
Trigger on a 'win-back' tag you apply to dormant subscribers and issue a sharper coupon — a bigger discount with a short expiry. Because the pass lands on the phone and can resurface by relevance, it gets a second look that another unopened re-engagement email wouldn't.

Set it up

One Zap links the two — live in a few minutes, no code involved.

  • A Passmint account and an API key (pmk_live… or pmk_test…), from Developers → API Keys.
  • A Passmint template for the pass you're issuing — typically a coupon pass with fields for the discount code and expiry, or a loyalty card. Note its field names (e.g. coupon_code, offer, expires): they must match the values you map from Mailchimp.
  • A Zapier account (the free plan is enough to build and test this).
  • A Mailchimp account with the audience you want to issue from. Subscribers need an email address on file so the pass can be delivered and tracked.

In Zapier, add Passmint as a connected app and paste your API key when prompted. Zapier verifies it against your account immediately, so you'll know the connection works before building the rest of the Zap. Use a pmk_test… key while you're setting things up.

Create a new Zap and choose Mailchimp as the trigger app. Pick the trigger that fires when someone new subscribes, then select the audience Passmint should watch. Send a test so Zapier can pull a sample subscriber and learn which fields — email, first name, merge fields — are available to map.

TODO(verify): Confirm the exact Mailchimp trigger label for a new subscriber and that it asks you to pick a specific audience. Mailchimp also exposes triggers for a new audience member and for a tag being added — note which one your welcome-offer flow should use.

Add an action step, choose Passmint, and select Create Pass. Pick your coupon template from the dropdown — Zapier loads your Passmint templates automatically. Then map Holder Email from the subscriber's email address and Holder Name from their first/last name or a name merge field.

In Field Values, map the coupon details onto the pass. The key on the left must exactly match a field name in your Passmint template (e.g. coupon_code → the code, offer → '15% off your first order', expires → the end date); the value on the right comes from the subscriber or is typed in as a fixed value. You can also map the signup source — the audience or form name — into a field so the pass reflects where they joined. Keys that don't match a template field are silently ignored.

TODO(verify): Confirm, on a real template, that the Field Values keys you reference exist as field names in that template. If you want a unique per-subscriber code rather than a fixed one, confirm where that code lives in Mailchimp (a merge field) or whether you'll generate it in an earlier Zap step.

Add a second Mailchimp action that updates the subscriber, and store Passmint's Pass URL output in a merge field (e.g. WALLETURL). Now your welcome email — or any future campaign to that audience — can drop an 'Add to Apple Wallet / Google Wallet' button using that merge tag, so subscribers who skipped the first prompt can still grab the pass.

TODO(verify): Confirm the Mailchimp 'update subscriber' action and that it can write to a custom merge field. Note that the merge field must already exist on the audience before Zapier can populate it.

Run the Zap with your test subscriber and check that a coupon pass is created in Passmint and the URL comes back. Open it on a phone to confirm the code and expiry read correctly, then switch your API key to pmk_live…, turn the Zap on, and add a real subscriber through your signup form to watch it work end to end.

Questions

The details teams check before switching the Zap on.

Yes, if you have unique codes to map. Map your code into the coupon_code field (or whatever you named it) just like any other value. If the codes live in a Mailchimp merge field, point Field Values at that; if you generate them elsewhere, produce the code in an earlier Zap step and map its output. With no per-subscriber code, a single fixed code typed straight into the mapping works fine for a shared welcome offer.
Only if your template and the value you map say so. Map an expires field with a date — fixed (e.g. two weeks out) or computed in a Zapier step from the signup date — and the pass shows it. Passmint won't auto-void an expired coupon on its own; if you need the pass marked invalid after the offer ends, add a scheduled Find Pass → Void Pass flow, or enforce expiry at the point of redemption.
Yes. Mailchimp's new-subscriber trigger asks you to choose one audience, so the Zap only fires for that list. For tighter targeting, use the 'tag added' trigger and pick the tag — handy for issuing a VIP loyalty card or a win-back coupon to just one segment rather than everyone who subscribes.
Yes. Add a Find Pass step (by holder email) followed by Update Pass, and change only the fields you pass — say, bump a loyalty balance or extend an expiry. Passmint pushes the change straight to the card already in the subscriber's wallet, no re-issue or resend. The initial welcome coupon doesn't need this; it's there when you want a pass to stay current.
The coupon is still created — Holder Name is optional and the code, offer, and expiry come from Field Values, not the name. The pass just won't show a personalised name where your template references it. Email is what powers delivery and per-holder analytics, so make sure your audience captures that.
Zapier is the fastest way to get welcome coupons landing in wallets today. When your audience grows into the tens of thousands, you need passes issued the instant someone subscribes without per-task costs, or you want unique codes and expiries driven straight from your own systems, call the Passmint API directly — POST /v1/passes, or the @passmint/node SDK. Same passes, same live updates, full control.

Related integrations

Klaviyo

Issue a coupon or VIP loyalty pass to every new Klaviyo profile — a home-screen channel beyond email and SMS.

HubSpot

Issue a membership card when a contact is created and keep the tier in sync as they move through your funnel.

ActiveCampaign

Hand every new contact a coupon or loyalty pass automatically.

Kit

Give every new subscriber a coupon or membership wallet pass.

Issue your first pass from Mailchimp today

Free for your first passes. No Apple or Google certificates to manage, no code to write.

Start freeExplore the API →