Agrega compras in-app a tu app de KMP
Integra compras in-app en iOS y Android usando el SDK de Adapty para KMP. Gestiona recibos, rastrea el estado de suscripciones y elimina la necesidad de crear un backend. Todo el poder en una sola integración.
import com.adapty.kmp.Adapty
import com.adapty.kmp.models.AdaptyConfig
val config = AdaptyConfig
.Builder("PUBLIC_SDK_KEY")
.build()
Adapty.activate(configuration = config)
.onSuccess {
Log.d("Adapty", "SDK initialised")
}
.onError { error ->
Log.e("Adapty", "Adapty init error: ${error.message}")
}
No necesitas crear un backend para las compras in-app de KMP
El SDK de Adapty se encarga de todo lo que normalmente reside en el servidor: validación de recibos, estado de suscripción, renovaciones, pruebas y reembolsos. Solo conéctalo una vez y obtén una configuración funcional de compras in-app en KMP para iOS y Android.
Agendar una demo¿Por qué elegir el SDK de Adapty?
Rastrea el estado de las suscripciones en todas las plataformas
Siempre sabrás si el usuario tiene una suscripción activa en iOS y Android.
Valida recibos en el backend
No necesitas crear tu propia validación: Adapty lo hace por ti.
Gestiona todos los estados de suscripción
Pruebas gratuitas, actualizaciones, ofertas promocionales, uso familiar, renovaciones y más.
Escala sobre una base de nivel empresarial
Publicamos actualizaciones frecuentes, mantenemos el SDK estable y operamos con un SLA superior al 99.99%.
Configurando plataformas
Instalando el SDK de Adapty
await adapty.activate( 'PUBLIC_SDK_KEY', { customerUserId: 'YOUR_USER_ID', });
Procesando eventos de compra
Integración sencilla para KMP
Configura el SDK de Adapty en un par de horas y empieza a trabajar con compras in-app en iOS y Android. ¿Necesitas ayuda? Consulta nuestro tutorial completo de IAP para KMP.
Usa 5 métodos del SDK para gestionar IAP en KMP
import com.adapty.kmp.Adapty
import com.adapty.kmp.models.AdaptyPurchaseResult
Adapty.makePurchase(product = product).onSuccess { purchaseResult ->
when (purchaseResult) {
is AdaptyPurchaseResult.Success -> {
val profile = purchaseResult.profile
if (profile.accessLevels["YOUR_ACCESS_LEVEL"]?.isActive == true) {
// Grant access to the paid features
}
}
is AdaptyPurchaseResult.UserCanceled -> {
// Handle the case where the user canceled the purchase
}
is AdaptyPurchaseResult.Pending -> {
// Handle deferred purchases (e.g., the user will pay offline with cash)
}
}
}.onError { error ->
// Handle the error
}
import com.adapty.kmp.Adapty
Adapty.restorePurchases().onSuccess { profile ->
if (profile.accessLevels["YOUR_ACCESS_LEVEL"]?.isActive == true) {
// successful access restore
}
}.onError { error ->
// handle the error
}
import com.adapty.kmp.Adapty
Adapty.identify("YOUR_USER_ID") // Unique for each user
.onSuccess {
// successful identify
}
.onError { error ->
// handle the error
}
import com.adapty.kmp.Adapty
import com.adapty.kmp.models.AdaptyProfile
import com.adapty.kmp.models.AdaptyProfileParameters
val builder = AdaptyProfileParameters.Builder()
.withEmail("[email protected]")
.withPhoneNumber("+18888888888")
.withFirstName("John")
.withLastName("Appleseed")
.withGender(AdaptyProfile.Gender.FEMALE)
.withBirthday(AdaptyProfile.Date(1970, 1, 3))
Adapty.updateProfile(builder.build())
.onSuccess {
// profile updated successfully
}
.onError { error ->
// handle the error
}
import com.adapty.kmp.models.AdaptyProfileParameters
val builder = AdaptyProfileParameters.Builder()
// You can set your own custom attributes:
builder.withCustomAttribute("key1", "value1")
// To remove existing key, use .withRemovedCustomAttribute() method:
builder.withRemovedCustomAttribute("key2")
Adapty potencia apps en todas las etapas, desde indies hasta grandes publishers
Todo lo que necesitas para hacer crecer tu app — ya está en el SDK de KMP

Aumenta los ingresos por suscripciones sin lanzar nuevas versiones de la app
Administre, apunte, localice y personalice los muros de pago sin salir de su navegador.
Incrementa los ingresos de tu appReduce la tasa de reembolsos en 40%
Deja de perder ingresos por reembolsos — Adapty comparte automáticamente los datos de actividad del usuario con Apple para solicitudes de reembolso y las reduce.
Configurar Refund Saver

Conoce tus métricas de suscripción en cualquier momento
Mide la economía in-app desde pruebas hasta reembolsos con una BI de suscripciones lista y en tiempo real.
Ver BI de suscripcionesCreador de muros de pago sin código
Cree hermosos muros de pago nativos para iOS, Android, React Native, Flutter, FlutterFlow, KMP y Capacitor sin un equipo de desarrollo.
Cree muros de pago en minutos