Skip to main content

Report transactions in Observer Mode in Kotlin Multiplatform SDK

In Observer mode, the Adapty SDK can't track purchases made through your existing purchase system on its own. You need to report transactions from your app store. It's crucial to set this up before releasing your app to avoid errors in analytics.

Use reportTransaction to explicitly report each transaction for Adapty to recognize it.

warning

Don't skip transaction reporting! If you don't call reportTransaction, Adapty won't recognize the transaction, it won't appear in analytics, and it won't be sent to integrations.

If you use Adapty paywalls, include the variationId when reporting a transaction. This links the purchase to the paywall that triggered it, ensuring accurate paywall analytics.

import com.adapty.kmp.Adapty

Adapty.reportTransaction(
transactionId = "your_transaction_id",
variationId = paywall.variationId
).onSuccess { profile ->
// Transaction reported successfully
// profile contains updated user data
}.onError { error ->
// handle the error
}

Parameters:

ParameterPresenceDescription
transactionIdrequiredThe transaction ID from your app store purchase. This is typically the purchase token or transaction identifier returned by the store.
variationIdoptionalThe string identifier of the variation. You can get it using variationId property of the AdaptyPaywall object.