Component Hierarchy
- Web
- Android
- iOS
The components follow a hierarchical structure where parent components provide context to their children. Each parent literally contains its children. The spatial nesting mirrors the DOM nesting.
- Without vault
- With vault
Core Components
- Web
- Android
- iOS
Card Form Components
- Web
- Android
- iOS
Utility Components
- Web
- Android
- iOS
Basic Usage
- Web
- Android
- iOS
How Components Communicate
Components communicate through:- Context inheritance - Child components receive context from their parents (e.g., card inputs receive form context from their parent card form)
- Events - Components emit events that you can listen to for state changes
- Customization points (Slots on Web, Composable lambdas on Android,
@ViewBuilderslot closures on iOS) - Allow you to inject custom content at specific points
For details on events, see the Events guide.
Customization at Each Level
- Web
- Android
- iOS
<primer-checkout>- SDK options, theming, global configuration<primer-main>- Layout structure through customization points<primer-payment-method>- Payment method-specific options<primer-card-form>- Complete control over card form layout and styling
See also
Using Slots
Learn how to customize layout with slots
Build a custom card form
Step-by-step tutorial for card form customization
Styles
Customize appearance with CSS variables
SDK Reference
Detailed API documentation for all components