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.

Membership & community

Hand every Circle community member a wallet pass

Run your community on Circle and give each new member a live Apple Wallet or Google Wallet pass showing their tier — issued automatically.

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

What you can do

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

Add a second Zap on Circle's member-updated trigger with Find Pass (by holder email) → Update Pass. When a member is upgraded to a higher tier, the pass already in their wallet updates itself.
On Circle's member-removed trigger, add Find Pass → Void Pass so a departing member's pass goes invalid in their wallet the moment they leave the community.

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 membership template whose field names (e.g. tier, status) match the values you map below.
  • A Zapier account (the free plan is enough to build and test this).
  • A Circle account with the community whose members you want to issue passes for.

In Zapier, add Passmint as a connected app and paste your API key when prompted. Zapier verifies it against your account immediately. Use a pmk_test… key while you're setting things up.

Create a new Zap and choose Circle as the trigger app, then pick the trigger that fires when a new member joins your community. Send a test so Zapier learns the member fields available.

TODO(verify): Confirm the exact Circle new-member trigger label and which fields it exposes (email, name, member tier/plan, status).

Add an action step, choose Passmint, and select Create Pass. Pick your membership template from the dropdown — Zapier loads your templates automatically. Map Holder Email and Holder Name from the Circle member's email and name.

In Field Values, map the member's tier and status to your template's matching field names (e.g. tier, status). Run the Zap with your test member, open the resulting pass on a phone, then switch to a pmk_live… key and turn it on.

TODO(verify): Confirm the Circle fields that carry the member's tier/plan and status, and that their values match the field names defined in your Passmint template.

Questions

The details teams check before switching the Zap on.

The Zap fires on a new member of the community, not per space. If you map a tier field, you can reflect which membership level they joined at; routing by space can be handled with Zapier filters or paths.
Only if you build the update path. The basic Zap issues a pass when someone joins. Add a second Zap on Circle's member-updated trigger with Find Pass → Update Pass and the installed pass updates automatically.
Yes. The pass works in both Apple Wallet and Google Wallet — members just open the delivery link on their phone and add it.
Zapier is perfect for getting this live today. When you're issuing thousands of passes or want them created the instant a member joins without per-task costs, call the Passmint API directly — POST /v1/passes, or the @passmint/node SDK. Same passes, same live updates, full control.

Related integrations

Memberstack

Give every new Memberstack member a wallet membership card.

Discord

Issue a wallet pass when someone joins your Discord.

Patreon

Give every Patreon patron a wallet card for their tier.

Issue your first pass from Circle today

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

Start freeExplore the API →