passsigner

Apple Pass Signer for NodeJS

Usage no npm install needed!

<script type="module">
  import passsigner from 'https://cdn.skypack.dev/passsigner';
</script>

README

Apple Wallet Logo

PassSigner

NPM Version NPM Downloads

Apple Pass Signer for NodeJS

Install

$ npm install passsigner

Get Started

Apple's WWDR Certificate

Appleā€™s World Wide Developer Relations (WWDR) certificate is available from Apple at http://developer.apple.com/certificationauthority/AppleWWDRCA.cer.

Pass Signing Certificate

To download your pass signing certificate, do the following:

  1. Log into your Apple Developer Console.
  2. In Certificates, Identifiers & Profiles, select Identifiers.
  3. Under Identifiers, select Pass Type IDs.
  4. Click the plus (+) button.
  5. Enter the description and pass type identifier, and click Submit.
  6. Select the pass type identifier, then click Edit.
  7. Click the Create Certificate button, then follow the instructions to create a pass signing certificate.
  8. Download your new certificate. Double click to add this certificate to your Keychain.
  9. Right-click on your certificate, then click Export.

Options

Name Type Required Description
appleWWDRCA String Required Path to Apple's WWDR Certificate.
signCert String Required Path to Pass Signing Certificate.
password String Optional The Password of the Pass Signing Certificate.

Usage

const PassSigner = require("passsigner")

const manifest = {
  "icon.png": "a05b6df8cdc27338f296856e367116b09d5bd63c",
  "icon@2x.png": "e4fda792e9e2f0b043e16006cfea70fffe610e51",
  "logo.png": "284d8cca28de0ebb2ca28ebdf5a8dc11c9e7543c",
  "logo@2x.png": "3343ada60b6b504c9b65a601e8b89a0566d5ca00",
  "pass.json": "6923eaca29e9ef3f97dacf9d0a0880efc368df28",
}

const passSigner = new PassSigner({
  appleWWDRCA: './AppleWWDRCA.cer',
  signCert: './Certificates.p12'
})
const signature = passSigner.sign(JSON.stringify(manifest))

License

MIT