Using LinkDen
Apple Wallet
Let visitors save your contact information as an Apple Wallet pass.
Apple Wallet
Let visitors save a pass with your contact info to their iPhone or Mac wallet. When enabled, a download button appears on your public page.
Prerequisites
Before you start, make sure you have:
- A paid Apple Developer Program membership ($99/year) at developer.apple.com
- A registered Pass Type Identifier
- A signing certificate and the Apple WWDR intermediate certificate
Setup Guide
1. Register a Pass Type ID
- Log in to developer.apple.com.
- Go to Certificates, Identifiers & Profiles > Identifiers.
- Click + and select Pass Type IDs.
- Enter a description (e.g., "LinkDen Business Card") and an identifier (e.g.,
pass.com.yourdomain.linkden). - Click Register.
2. Create a Signing Certificate
- In the Apple Developer portal, go to Certificates.
- Click + and select Pass Type ID Certificate.
- Choose the Pass Type ID you just created.
- Follow the instructions to generate a CSR using Keychain Access on macOS.
- Upload the CSR and download the certificate.
- Double-click the
.cerfile to install it in Keychain Access.
3. Export the Certificate and Key
- Open Keychain Access on macOS.
- Find the pass certificate (it shows your Pass Type ID).
- Expand it to see the private key.
- Select both, right-click, and choose Export 2 items.
- Save as
.p12with a passphrase.
4. Convert to Base64
Run these commands to prepare your certificates for deployment:
# Download the Apple WWDR certificate
curl -O https://www.apple.com/certificateauthority/AppleWWDRCAG4.cer
# Convert WWDR cert to base64
base64 -i AppleWWDRCAG4.cer | tr -d '\n' > wwdr_base64.txt
# Extract the signer certificate
openssl pkcs12 -in pass.p12 -clcerts -nokeys -out signer_cert.pem
base64 -i signer_cert.pem | tr -d '\n' > signer_cert_base64.txt
# Extract the signer private key
openssl pkcs12 -in pass.p12 -nocerts -out signer_key.pem
base64 -i signer_key.pem | tr -d '\n' > signer_key_base64.txt5. Set Environment Variables
Add these to your deployment platform (not in the database -- they're kept as environment variables for security):
| Variable | Description |
|---|---|
WALLET_SIGNER_CERT | Contents of signer_cert_base64.txt |
WALLET_SIGNER_KEY | Contents of signer_key_base64.txt |
WALLET_WWDR_CERT | Contents of wwdr_base64.txt |
Tip: The Signing Status banner in the admin UI shows whether each certificate is detected.
6. Configure in Admin
Go to /admin/settings/wallet, turn on Show on page, and fill in the settings:
Identity:
- Team ID -- Your Apple Developer team identifier.
- Pass Type ID -- The identifier you registered (e.g.,
pass.com.yourdomain.linkden). - Organization Name -- Name shown on the pass.
- Pass Description -- Brief description of the pass.
Appearance:
- Background Color -- Hex color for the pass background.
- Foreground Color -- Hex color for the pass text.
- Label Color -- Hex color for field labels.
- Logo URL -- Logo image displayed on the pass.
- Custom QR URL -- Optional custom URL for the QR code.
Pass Preview
The admin page includes a live preview showing how your pass will look with your current colors, logo, and content.