Paddle Mobile Checkout UI Kit in SwiftUI
Paddle is a merchant of record: it handles sales tax and compliance for you. The catch on iOS is that digital goods still must use in-app purchase.
TL;DR
Paddle is a merchant of record, so it handles sales tax, VAT, and payment compliance globally, which is a real burden lifted for a SaaS business. You build the checkout UI in SwiftUI from a free VP0 design and let Paddle own the transaction and tax. The crucial iOS caveat: Apple requires in-app purchase for digital content consumed in the app, so Paddle fits web checkout, physical goods, or services, not digital unlocks inside an iOS app. Match the payment rail to what you sell.
Want a checkout that handles global sales tax for you, with Paddle, in SwiftUI? The short answer: Paddle is a merchant of record, so it takes on sales tax, VAT, and payment compliance, and you build the checkout UI while Paddle owns the transaction. But there is one iOS rule you cannot skip: digital goods consumed in the app must use Apple in-app purchase, so Paddle fits web, physical, or service payments, not in-app digital unlocks. Build the UI from a free VP0 design, the free iOS design library for AI builders.
Who this is for
This is for builders of SaaS, web-plus-mobile products, and physical or service businesses who want to offload tax and compliance, and who need clarity on where Paddle fits versus where Apple requires in-app purchase.
What a merchant of record does
The appeal of Paddle is that it is the seller of record, not just a payment processor. That means it calculates and remits sales tax and VAT across jurisdictions, handles compliance, and deals with chargebacks, which is a genuine burden for a small team given there are over 13,000 sales-tax jurisdictions in the US alone. Your job shrinks to the experience: a plan or product summary, the price with tax shown clearly, and a pay action, while Paddle owns the money and the paperwork. The UI is the same craft as any checkout, short, clear, and honest about the total.
| Element | Your job (the UI) | Paddle’s job |
|---|---|---|
| Plan or product | Show it clearly | Nothing, that is yours |
| Price and tax | Display the total | Calculate and remit tax |
| Pay action | One clear button | Process the transaction |
| Compliance | None | Seller of record |
| Result states | Paid, failed | Return the outcome |
Build it free with a VP0 design
Pick a checkout or pricing design from VP0, copy its link, and prompt your AI builder:
Rebuild this VP0 checkout design in SwiftUI: [paste VP0 link]. Show a plan summary and the price with tax, with a clear pay action and paid and error states, and connect Paddle to handle the transaction and tax as merchant of record. This is for physical goods, services, or web checkout, not in-app digital content.
For the broader payments picture, compare a RevenueCat paywall template in SwiftUI and freemium vs free trial paywall design for subscriptions, a Stripe checkout UI in React Native for another processor, and the e-commerce checkout screen in SwiftUI for the native pattern. Before you ship the terms users accept, see a EULA acceptance screen UI in React Native.
The iOS rule you cannot skip
Here is the caveat that trips people up. Apple’s payment guidelines require in-app purchase for digital content and subscriptions consumed inside an iOS app, and you cannot route those through Paddle or any outside processor in-app. Paddle shines for web and desktop SaaS checkout, physical goods, and real-world services, where Apple’s IAP rule does not apply. So decide what you are selling first: digital-in-app means StoreKit and in-app purchase; everything else can use Paddle. Matching the rail to the product is what keeps your app approved.
Common mistakes
The first mistake is routing in-app digital goods through Paddle on iOS, which Apple rejects. The second is hiding tax until the final step instead of showing the total. The third is reinventing tax compliance that Paddle already handles. The fourth is no clear failed-payment state. The fifth is paying for a checkout kit when a free VP0 design plus Paddle does it.
Key takeaways
- Paddle is a merchant of record: it handles sales tax, VAT, and compliance.
- You build the checkout UI; Paddle owns the transaction and tax.
- On iOS, digital in-app goods must use Apple in-app purchase, not Paddle.
- Paddle fits web checkout, physical goods, and services.
- Build the UI free from a VP0 design.
Frequently asked questions
How do I build a Paddle checkout in SwiftUI? Build a plan summary, the price with tax, and a pay action, and connect Paddle to handle the transaction and tax as merchant of record, using it for physical, service, or web payments.
What is the safest way to build checkout with Claude Code or Cursor? Start from a free VP0 design, let Paddle own tax and the transaction, and confirm you are not routing in-app digital goods through it on iOS, which requires in-app purchase.
Can VP0 provide a free SwiftUI or React Native template for a checkout? Yes. VP0 is a free iOS design library; pick a checkout design and your AI tool rebuilds the plan summary, price, and pay flow while Paddle handles the transaction.
Can I use Paddle for in-app purchases on iOS? Not for digital content consumed in the app, which Apple requires to use in-app purchase. Paddle fits web checkout, physical goods, and services.
Frequently asked questions
How do I build a Paddle checkout in SwiftUI?
Build the UI yourself: a plan or product summary, the price with tax shown, and a clear pay action, then connect Paddle to handle the transaction, tax, and compliance as merchant of record. On iOS, use Paddle for physical goods, services, or web checkout, and use Apple in-app purchase for digital content consumed in the app.
What is the safest way to build checkout with Claude Code or Cursor?
Start from a free VP0 design and let Paddle own the transaction and tax as merchant of record. Crucially, confirm what you are selling: Apple requires in-app purchase for in-app digital goods, so do not route those through Paddle on iOS, which is a common rejection.
Can VP0 provide a free SwiftUI or React Native template for a checkout?
Yes. VP0 is a free iOS design library for AI builders. Pick a checkout or pricing design, copy its link, and your AI tool rebuilds the plan summary, price, and pay flow at no cost while Paddle handles the transaction.
Can I use Paddle for in-app purchases on iOS?
Not for digital content consumed inside the iOS app, which Apple requires to use in-app purchase. Paddle, as a merchant of record, fits web and desktop checkout, physical goods, and services. Match the rail to what you sell, or you risk an App Store rejection.
Part of the Payments, Monetization & Regional Fintech hub. Browse all VP0 topics →
Keep reading
Adyen Drop-in Checkout UI in SwiftUI
Build an Adyen Drop-in checkout in SwiftUI: order summary, the Drop-in component, and clear result states, from a free VP0 design. PCI-safe by design.
Native In-App Purchases in SwiftUI Without RevenueCat
How to build in-app purchases in SwiftUI with StoreKit 2 directly, no RevenueCat: the tradeoffs, the compliance rules, and what you own server-side.
RevenueCat Paywall Template in SwiftUI (Free Design)
Build a clean RevenueCat paywall in SwiftUI: plan options, a clear price, and an honest call to action, from a free VP0 design. RevenueCat handles the billing.
MercadoLibre Clone UI in SwiftUI + MercadoPago Webhooks
Build a MercadoLibre style marketplace UI in SwiftUI and wire MercadoPago webhooks the right way. Clone the pattern from a free template with Claude Code or Cursor.
E-Commerce Checkout Screen in SwiftUI (Free Template)
Build a clean SwiftUI checkout from a free VP0 design: cart, address, payment, and review, with Apple Pay and a short, trustworthy flow that converts.
Municipal Parking Ticket Scanner Payment App UI
Build a parking ticket pay-by-scan app in SwiftUI: scan the citation, see the details, and pay, from a free VP0 design. Certified payments, honest fees.