Package-level declarations

Types

Link copied to clipboard
data class CheckoutAction(val type: CheckoutAction.Kind, val expiresAt: Instant? = null)

Sanitized payer action carried by CheckoutEvent.Type.PAYMENT_ACTION_REQUIRED.

Link copied to clipboard
data class CheckoutEvent(val type: CheckoutEvent.Type, val occurredAt: Instant, val flowId: String, val sequence: Int, val order: CheckoutOrder? = null, val action: CheckoutAction? = null, val failure: CheckoutFailure? = null, val complete: Boolean? = null, val paymentMethod: String? = null)

One ordered, application-facing event from a Checkout presentation.

Link copied to clipboard
fun interface CheckoutEventListener

Receives lifecycle events independently of diagnostic telemetry.

Link copied to clipboard
data class CheckoutFailure(val code: String, val message: String, val recoverable: Boolean)

Sanitized failure carried by public Checkout lifecycle events.

Link copied to clipboard
data class CheckoutOrder(val id: String, val status: CheckoutOrder.Status, val merchant: CheckoutOrder.Merchant, val amount: CheckoutOrder.Money, val expiresAt: Instant? = null, val lineItems: List<CheckoutOrder.LineItem> = emptyList(), val documents: CheckoutOrder.Documents = Documents())

Client-safe Order snapshot carried by Checkout lifecycle events.

Link copied to clipboard

Public Checkout transport used by the native payment sheet.

Link copied to clipboard

Operations required by Inttegro's native payment state machine.

Link copied to clipboard
data class PaymentSheetAmountSelection(val purchaseIntentId: String? = null, val orderId: String? = null, val lineItemId: String? = null, val merchantName: String, val productName: String, val productAbout: String? = null, val currency: String, val minimum: Long, val maximum: Long? = null, val suggestions: List<PaymentSheetAmountSelection.Suggestion> = emptyList(), val expiresAt: Instant? = null)

Client-safe amount policy for creating or changing a customer-selected checkout.

Link copied to clipboard
data class PaymentSheetConfiguration(val orderId: String? = null, val purchaseIntentId: String? = null, val returnUrl: String? = null, val appearance: PaymentSheetConfiguration.Appearance = Appearance(), val telemetry: PaymentSheetConfiguration.Telemetry = Telemetry(), val features: PaymentSheetConfiguration.Features = Features())

Everything Inttegro needs to prepare one native Checkout presentation.

Link copied to clipboard
data class PaymentSheetConfirmationChallenge(val paymentId: String? = null, val confirmationId: String? = null, val recipient: String? = null, val sentVia: String? = null, val tokenSize: Int = 6, val expiresAt: Instant? = null, val requestAfter: Instant? = null, val requiresNewCode: Boolean = false)

Recoverable confirmation-code challenge returned by Checkout.

Link copied to clipboard
class PaymentSheetException(val code: String, val message: String, val requestId: String? = null, val retryAfterSeconds: Int? = null) : Exception

Stable exception raised by payment-sheet adapters.

Link copied to clipboard

Provider-owned work that must finish outside the payment sheet.

Link copied to clipboard
data class PaymentSheetFailure(val code: String, val message: String, val declineCode: String? = null, val requestId: String? = null, val retryAfterSeconds: Int? = null)

Stable application-facing details for a terminal sheet failure.

Link copied to clipboard
data class PaymentSheetMobileMoneyInput(val network: PaymentSheetMobileMoneyInput.Network, val accountNumber: String, val billingDetails: PaymentSheetMobileMoneyInput.BillingDetails? = null, val savePaymentMethod: Boolean = false)

Payer-supplied Mobile Money details for a new payment method.

Link copied to clipboard

Intermediate outcome returned by a PaymentSheetAdapter operation.

Link copied to clipboard

Payer selection consumed by the next payment attempt.

Link copied to clipboard
sealed interface PaymentSheetResult

Terminal result of one native payment-sheet presentation.

Link copied to clipboard
data class PaymentSheetSession(val id: String, val merchant: PaymentSheetSession.Merchant, val amount: PaymentSheetSession.Money, val paymentMethods: List<PaymentSheetSession.PaymentMethod>, val expiresAt: Instant, val lineItems: List<PaymentSheetSession.LineItem> = emptyList(), val documents: PaymentSheetSession.Documents = Documents())

Client-safe Checkout data used during one payment-sheet presentation.

Link copied to clipboard
class PaymentSheetTelemetry @JvmOverloads constructor(configuration: PaymentSheetConfiguration.Telemetry = PaymentSheetConfiguration.Telemetry(), listener: PaymentSheetTelemetryListener? = null, val flowId: String = UUID.randomUUID().toString())

Dependency-free telemetry source owned by the host application.

Link copied to clipboard
data class PaymentSheetTelemetryEvent(val flowId: String, val sequence: Int, val name: PaymentSheetTelemetryEvent.Name, val timestamp: Instant, val operation: String? = null, val httpStatusCode: Int? = null, val requestId: String? = null, val retryAfterSeconds: Int? = null, val errorType: String? = null)

One ordered, privacy-safe diagnostic event from a payment-sheet flow.

Link copied to clipboard

Host callback for ordered diagnostic events.

Link copied to clipboard

Adapter that fails safely when Checkout transport has not been configured.

Functions

Link copied to clipboard
fun InttegroPaymentSheet(configuration: PaymentSheetConfiguration, onResult: (PaymentSheetResult) -> Unit, onDismissRequest: () -> Unit, modifier: Modifier = Modifier, adapter: PaymentSheetAdapter? = null, telemetry: PaymentSheetTelemetry? = null, eventListener: CheckoutEventListener? = null)

Renders Inttegro Checkout in a Material 3 modal bottom sheet.