Documentation Index
Fetch the complete documentation index at: https://docs.whop.com/llms.txt
Use this file to discover all available pages before exploring further.
Use
Checkout.ApplePayButton to accept one-time payments for physical goods or real-world services using Apple Pay. Payments are processed by Whop at 2.7% + $0.30 instead of Apple’s 15–30% in-app purchase fees.
What you’ll build
- A product detail screen with a native Apple Pay button
- A purchase flow that handles success, failure, and cancellation
- Plan configuration in the Whop dashboard for your physical goods
Prerequisites
- Install the WhopCheckout SDK
- An API key scoped to
iap:read— see Create an API key - A Whop product with a one-time plan (see Step 5)
Step 1: Configure the SDK
Initialize the SDK at app launch. For one-time physical goods you don’t needplanMappings — that’s only used for StoreKit fallback on subscriptions.
Step 2: Add the Apple Pay button
DropCheckout.ApplePayButton into your product view. The component renders Apple’s official, HIG-compliant Apple Pay button — you can’t substitute a custom-styled button.
onCompletion is not called when the user cancels — the sheet just dismisses. No cleanup needed.Step 3: Choose a button label
Thelabel parameter controls the text on the button. Pick the one that fits the action:
| Label | Button text | Use for |
|---|---|---|
.buy | Buy with Apple Pay | One-time merch and physical goods |
.checkout | Check out with… | Cart-style checkout flows |
.order | Order with Apple Pay | Food, deliveries, made-to-order items |
.book | Book with Apple Pay | Reservations, appointments, events |
.continue | Continue with… | Multi-step flows where this isn’t final |
.plain | (Apple Pay logo) | Fallback when no verb fits |
PayWithApplePayButtonLabel — see Apple’s documentation for every option.
Step 4: Handle the purchase result
onCompletion receives a Result<CheckoutPurchaseResult, Error>. On success you get back:
| Property | Type | Description |
|---|---|---|
receiptId | String | Unique receipt ID for this purchase |
membership | CheckoutMembership? | The membership Whop created for the purchase |
Step 5: Set up your plan
Each purchasable item needs a plan in your Whop dashboard:Create a plan
Go to your Dashboard > Products > select your product > Plans > Create plan.
(Optional) Set inventory limits
For limited drops, set a stock cap. The checkout enforces it automatically — when stock runs out, purchases stop.
Handle fulfillment with webhooks
For physical goods, you’ll need a server-side webhook to trigger shipping after a successful purchase. Listen for thepayment.succeeded event:
The client-side
onCompletion callback confirms the payment to the user, but your server should handle fulfillment via webhooks — don’t rely on the client alone. See the full webhooks guide for setup.Complete example
A minimal merch detail view with size selection and Apple Pay:Next steps
Webhooks
Handle payment events and trigger fulfillment
Apple Pay eligibility
Confirm your app qualifies under App Store Review Guidelines
Build a paywall
Sell subscriptions instead of one-time purchases
API reference
Full SDK documentation

