Passmint
TemplatesIntegrationsDocsPricing
Log inGet started
Passmint

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

  • GitHub
  • X
Product
  • Pass Designer
  • Developers
  • Distribution
  • Analytics
  • Templates
  • Integrations
  • Pricing
Resources
  • Free tools
  • Wallet card generator
  • pkpass validator
  • Pass anatomy
  • Live demo
  • Blog
  • Glossary
  • Compare
Developers
  • Documentation
  • API reference
  • Node SDK
  • Webhooks
  • MCP server
Company
  • Changelog
  • About
  • Contact
  • Support
  • Security
  • Terms
  • Privacy

© 2026 Passmint.

Apple Wallet & Google Wallet, one API.

Getting started

  • Overview
  • Quickstart

API

  • REST API reference
    • Authentication
    • Passes
    • Templates
    • Events
    • Webhooks
    • Errors
  • Pass images
    • Image slots
    • How images resolve
    • Stamp card example
    • Member photo example
    • Google Wallet
    • Privacy
  • Webhooks
    • Event types
    • Creating a webhook
    • Payload format
    • Verifying signatures
    • Retries
  • MCP server
    • Install
    • The endpoint
    • Other clients
    • Read-only mode
    • Tools
    • Things worth knowing
    • Example prompts
    • What it doesn't do
    • Rate limits
  • Node.js SDK
    • Configuration
    • Passes
    • Templates
    • Webhook signatures
    • Errors
    • Idempotency

Open source

  • Passmint Package
Quickstart · 5 min

Issue your first pass in five minutes.

Spin up an API key, pick a starter template, and send a signed wallet pass to a real phone. Test mode signs with Passmint's certificate, so there is nothing to set up at Apple until you go live.

01

Create an API key

Sign up at app.passmint.com, head to Developers → API keys, and create a test key. It looks like pmk_test_….

02

Install the SDK

npm install @passmint/node
03

Pick a starter template

Pick one of the eight starters from the dashboard and customize it in the visual designer. Copy its template ID, which looks like tmpl_….

04

Issue a pass

import { Passmint } from "@passmint/node"

const passmint = new Passmint({
  apiKey: process.env.PASSMINT_API_KEY!,
})

const pass = await passmint.passes.create({
  templateId: "tmpl_xxx",
  holderEmail: "alice@example.com",
  holderName: "Alice Johnson",
  fieldValues: {
    seatNumber: "A12",
    section: "Floor",
  },
})

console.log(pass.url)
// → https://passmint.com/p/abc123def456
05

Send the URL

Drop pass.url into an email, SMS, or QR code. On iPhone, the user taps Add to Apple Wallet. On Android, they tap Save to Google Wallet. Done.

Up next:
REST API reference →Node SDK reference →