Real-World Payments (Apple Pay / Wallet / Tap to Pay)
You MUST use this skill when accepting ANY real-world payment — physical goods, services, donations, ticketing, loyalty cards, contactless card-present, or post-purchase order tracking. NOT for in-app purchase or digital content.
When to Use
Use this skill when you encounter:
- Adding Apple Pay to an iOS / iPadOS / macOS / Catalyst / visionOS / watchOS app
- Adding Apple Pay to a website (Apple Pay JS or W3C Payment Request API)
- Building Wallet passes (boarding passes, event tickets, coupons, loyalty cards, store cards)
- Accepting contactless card payments on iPhone (Tap to Pay on iPhone / ProximityReader)
- Surfacing post-purchase order tracking in Wallet (Orders in Wallet, FinanceKitUI add-order helpers)
- Issuer or bank card provisioning into Wallet (issuer extensions)
- Apple Pay merchant ID, processing certificate, or merchant identity certificate setup
- Pass Type ID or Order Type ID certificates and PKCS #7 signing chains
- Tap to Pay managed entitlement (
com.apple.developer.proximity-reader.payment.acceptance) - App Review rejections that mention payments, IAP, Apple Pay, Wallet, or Acceptable Use Guidelines
- Domain verification for Apple Pay on the web (
.well-known/apple-developer-merchantid-domain-association.txt) - Sandbox testing with Apple Pay sandbox cards or sandbox tester accounts
When NOT to Use
Quick Reference
Decision Tree
Simplified routing:
- Is this a digital good or subscription for digital content? → Use
axiom-integration/skills/in-app-purchases.mdinstead. - Selling physical goods / services / donations, or unsure? →
skills/apple-pay-vs-iap.md - Native Apple Pay (iOS / iPadOS / macOS / Catalyst / visionOS / watchOS)? →
skills/apple-pay.md+skills/apple-pay-ref.md - Apple Pay on the web? →
skills/apple-pay-web.md+skills/apple-pay-web-ref.md - Tap to Pay on iPhone (ProximityReader)? →
skills/tap-to-pay.md+skills/tap-to-pay-ref.md - Wallet passes (ticket / coupon / loyalty / store card)? →
skills/wallet-passes.md+skills/wallet-passes-ref.md - Orders in Wallet (post-purchase tracking)? →
skills/wallet-orders.md - Issuer / bank card provisioning? →
skills/wallet-extensions-ref.md - Something not working (no sheet / merchant validation fails / pass won't import / Tap to Pay never enables)? →
skills/payments-diag.md
Cross-Suite Routing
Apple Pay vs IAP boundary (the most common cross-suite question):
- Selling physical goods, services, or donations → stay here (
skills/apple-pay-vs-iap.md) - Selling digital content, premium app features, subscriptions for digital content → use axiom-integration (
skills/in-app-purchases.md) - App was rejected for using the wrong one →
skills/apple-pay-vs-iap.mdthenskills/payments-diag.md
Payments + App Review rejection:
- Rejection cites Section 3.1 / 3.2 / Apple Pay AUG → stay here (
skills/payments-diag.md) for the root cause; also invoke axiom-shipping (skills/app-store-diag.md) for appeal workflow
Payments + cert management:
- Merchant Identity Certificate, Pass Type ID Certificate, Order Type ID Certificate, Payment Processing Certificate — operational discipline → stay here
- Generic Keychain export /
.p12mechanics → also invoke axiom-security (skills/keychain-ref.md) - Tap to Pay managed entitlement → stay here (
skills/tap-to-pay.md); generic managed-capability mental model → axiom-security (skills/code-signing.md)
Payments + Xcode capability / provisioning:
- Apple Pay capability checkbox in Xcode, merchant ID selection, Tap to Pay entitlement plumbing in the provisioning profile → also invoke axiom-build for capability/profile mechanics; payment-specific guidance stays here
Payments + HIG:
- Apple Pay button vs Apple Pay Mark, Wallet pass design specs, Tap to Pay button label → stay here
- Cross-cutting design context → also invoke axiom-design (
skills/hig.md)
Payments + Catalyst / macOS:
- Apple Pay on Mac and Catalyst (window requirement, web security model, static merchant validation URL) → stay here (
skills/apple-pay.mdCatalyst section) - Generic Catalyst patterns → axiom-macos
Payments + Apple Watch:
- WKInterfacePaymentButton, watchOS payment delegate flow → stay here (
skills/apple-pay-ref.mdwatchOS section) - Generic watchOS patterns → axiom-watchos
Anti-Rationalization
Out of Scope
This suite intentionally does not cover:
- In-App Purchase (StoreKit 2) — Use
axiom-integration/skills/in-app-purchases.mdandaxiom-integration/skills/storekit-ref.md. The boundary rule lives inskills/apple-pay-vs-iap.md. - FinanceKit consumer banking (account aggregation, transaction queries) — not covered. We only use FinanceKitUI for order-add buttons.
- PKSecureElementPass, transit cards, car keys — issuer-controlled Wallet surfaces, not merchant-developer territory.
- Tap to Present ID (
MobileDocumentReader) — uses ProximityReader but for identity verification, not payment. Brief cross-ref appears inskills/tap-to-pay-ref.md; identity-verification UX as a whole is axiom-integration territory if it lands anywhere. - Generic NFC reads (Core NFC) — different framework. PassKit NFC is Wallet-specific (loyalty / contactless ticket / boarding).
Example Invocations
User: "Should I use Apple Pay or IAP for my hotel-booking app?"
→ See skills/apple-pay-vs-iap.md
User: "How do I set up Apple Pay in my iOS app?"
→ See skills/apple-pay.md
User: "What's the structure of PKPaymentRequest?"
→ See skills/apple-pay-ref.md
User: "Apple Pay on my website doesn't show the button in Chrome"
→ See skills/apple-pay-web.md
User: "Domain verification keeps failing"
→ See skills/payments-diag.md
User: "I want to add Tap to Pay on iPhone to my point-of-sale app"
→ See skills/tap-to-pay.md
User: "My Tap to Pay entitlement has been Submitted for two weeks"
→ See skills/tap-to-pay.md and skills/payments-diag.md
User: "How do I build a Wallet pass for my event tickets?"
→ See skills/wallet-passes.md
User: "My .pkpass file won't import — Wallet says invalid"
→ See skills/payments-diag.md
User: "I want order tracking to appear in Wallet after Apple Pay checkout"
→ See skills/wallet-orders.md
User: "App Review rejected my app for using IAP for restaurant delivery"
→ See skills/apple-pay-vs-iap.md then skills/payments-diag.md
User: "How does Apple Pay differ from In-App Purchase?"
→ See skills/apple-pay-vs-iap.md
User: "Implementing card provisioning for our bank's iOS app"
→ See skills/wallet-extensions-ref.md
Resources
WWDC: 2020-10662, 2021-10092, 2022-10041, 2023-10114, 2024-10108
Tech Talks: 111381 (Apple Pay on the Web), 110336 (Implementing Apple Pay Orders)
MIG: Apple Pay Merchant Integration Guide (2026 edition) — operational spine, cited throughout this suite
Docs: /passkit, /applepayontheweb, /proximityreader, /walletpasses, /design/human-interface-guidelines/apple-pay, /design/human-interface-guidelines/wallet, /apple-pay/acceptable-use-guidelines-for-websites
App Review: Section 3.1 (In-App Purchase), Section 3.1.3(e) (Goods and Services Outside of the App), Section 3.2 (Other Business Model Issues), Section 4.9 (Apple Pay)
Skills: axiom-integration (in-app-purchases, storekit-ref), axiom-shipping (app-store-diag, app-review-guidelines), axiom-security (keychain-ref, code-signing), axiom-design (hig, hig-ref), axiom-macos



