Skip to main content
Primer Checkout Android SDK is currently in beta (v3.0.0-beta.8). The API is subject to change before the stable release.
Single observable snapshot of the checkout session. Covers the session lifecycle (Loading / Ready), client-session updates, and the terminal payment outcomes (Success / Failure). Observe via PrimerCheckoutController.state.
There is no separate event callback. Payment outcomes that earlier releases delivered through an onEvent lambda are now terminal states of this flow — observe Success and Failure here.

Definition

States

Ready properties

Client-session updates

When the client session changes during checkout (for example after a billing-address change or setVaultOnSuccess), the state goes from Ready with the old session to Ready with the updated one. Read totals, fees, and surcharges from Ready.clientSession. To show progress while the update is in flight, use isLoading on the card form state (rememberCardFormController(checkout).state).

Success properties

Failure properties

Observing state

PrimerClientSession