A reference of terms used throughout the Primer Checkout documentation. If you encounter an unfamiliar term while reading another guide, you can look it up here.Documentation Index
Fetch the complete documentation index at: https://primer.io/docs/llms.txt
Use this file to discover all available pages before exploring further.
Primer Platform
Client Session
Client Session
Client Token
Client Token
- Web
- Android
- iOS
Primer Dashboard
Primer Dashboard
Diagnostics ID
Diagnostics ID
diagnosticsId so the team can locate the exact request in their logs.- Web
- Android
- iOS
SDK & Architecture
Primer Checkout SDK
Primer Checkout SDK
@primer-io/primer-js), Android (io.primer:checkout), and iOS (PrimerSDK).Web Components (Web)
Web Components (Web)
<primer-checkout> and <primer-card-form>) work in any framework. See Core Concepts.Shadow DOM (Web)
Shadow DOM (Web)
Controller (Android)
Controller (Android)
remember* function (e.g., rememberPrimerCheckoutController()). Provides observable state via StateFlow and action methods. Follows the standard Jetpack Compose pattern.Composable (Android)
Composable (Android)
@Composable that describes a piece of UI. All Android SDK components are Composables that integrate naturally with Jetpack Compose.StateFlow (Android)
StateFlow (Android)
StateFlow<PrimerCheckoutState> for reactive UI updates. Collect with collectAsStateWithLifecycle() in Compose.Scope (iOS)
Scope (iOS)
PrimerCheckoutScope, PrimerCardFormScope, PrimerPaymentMethodSelectionScope) are the primary API surface for Primer Checkout iOS.AsyncStream (iOS)
AsyncStream (iOS)
AsyncStream<State>. Observe with for await state in scope.state.PrimerCheckoutPresenter (iOS)
PrimerCheckoutPresenter (iOS)
PrimerCheckout as a modal sheet from a UIViewController. Use this when integrating the SDK in a UIKit-based app.Customization point
Customization point
@Composable lambda parameters (e.g., the submitButton parameter on PrimerCardForm). On iOS, these are closure properties on scopes that return AnyView.Design Token
Design Token
--primer-color-brand). On Android, they are properties in PrimerTheme. On iOS, they are properties in PrimerCheckoutTheme.Defaults Object (Android)
Defaults Object (Android)
CardFormDefaults, PrimerCheckoutSheetDefaults) that provides pre-built sub-components. Use them to customize specific parts while keeping others at their defaults.Hosted Input (Web)
Hosted Input (Web)
Payment Concepts
Payment Method
Payment Method
PAYMENT_CARD, PAYPAL, or APPLE_PAY.Vault / Vaulted Payment Methods
Vault / Vaulted Payment Methods
primer:vault-methods-update event and the <primer-vault-manager> component. See SDK Options — Vault.Payment Instrument Data
Payment Instrument Data
network (e.g. VISA), last4Digits, expirationMonth, and expirationYear. You access it via the paymentInstrumentData property on a vaulted payment object.PCI Compliance
PCI Compliance
3DS (3D Secure)
3DS (3D Secure)
AUTO Payment Handling
AUTO Payment Handling
Co-badge
Co-badge
Events
primer:ready
primer:ready
event.detail) which provides SDK methods like refreshSession(), getPaymentMethods(), and setCardholderName(). See Events Guide.On Android, the equivalent is observing checkout.state for PrimerCheckoutState.Ready via StateFlow.primer:payment-success / primer:payment-failure
primer:payment-success / primer:payment-failure
primer:payment-success fires after a successful payment and the event detail includes the payment summary (order ID, last 4 digits, network). primer:payment-failure fires after a failed payment and includes the error object with the diagnosticsId. These are your primary integration points for redirects, confirmations, and error logging.PrimerCheckoutEvent.Success and PrimerCheckoutEvent.Failure in the onEvent callback.On iOS, observe checkoutScope.state for .success(result) and .failure(error) cases, or use the onCompletion callback.primer:payment-start
primer:payment-start
event.preventDefault() to run validation before the payment is created. The event detail includes continuePaymentCreation() and abortPaymentCreation() handlers to control the payment flow. See Events Guide for usage.On Android, payment interception is not available in the Composable module. Use the headless API (onBeforePaymentCreated) if you need this capability.On iOS, use the onBeforePaymentCreate handler on the checkout scope for payment interception.Integration Modes
Drop-in (Sheet / Full Component)
Drop-in (Sheet / Full Component)
<primer-checkout>. On Android, use PrimerCheckoutSheet. On iOS, use PrimerCheckout as a SwiftUI view or PrimerCheckoutPresenter for UIKit. The SDK handles navigation between screens.Inline (Custom Layout)
Inline (Custom Layout)
<primer-card-form>. On Android, use PrimerCheckoutHost with child composables. On iOS, use the scope closure to access PrimerCardFormScope and build custom form layouts. You control navigation and layout.