Integrating Customer Center on Android
Overviewβ
Customer Center is a self-service UI that can be added to your app to help your customers manage their subscriptions on their own. With it, you can prevent churn with pre-emptive promotional offers, capture actionable customer data with exit feedback prompts, and lower support volumes for common inquiries β all without any help from your support team.
There are only two steps to integrate Customer Center in your app:
- Implementing the Customer Center view in your app
- Setting up promotional offers
Integrationβ
There's a CustomerCenter
composable that can be used to display the Customer Center. It's intended to be used as a full screen composable so make sure to use it with a fillMaxSize
modifier:
- Kotlin
import com.revenuecat.purchases.ui.revenuecatui.customercenter.CustomerCenter
...
@Composable
fun YourAppScreen() {
var isCustomerCenterVisible by remember { mutableStateOf(false) }
if (isCustomerCenterVisible) {
CustomerCenter(modifier = Modifier.fillMaxSize(), onDismiss = { isCustomerCenterVisible = false })
return
}
Column(
modifier = Modifier.fillMaxSize(),
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center,
) {
Button(onClick = {
isCustomerCenterVisible = true
}) {
Text(text = "Show customer center")
}
}
}
Setting up promotional offersβ
Unique promotional offers can be assigned to different paths and survey responses in the Customer Center, but first they must be setup in App Store Connect and Google Play Console.
Offers on the Play Store allow you to provide a custom price or a trial (or both) for a product. There are different types of offers that can be created in the Play Store. For the Customer Center, you will be using the Developer determined type.
Additionally, add the rc-customer-center
tag to the developer determined offer from your product so that the offer is only available to Customer Center and not used as a default offer when purchasing the product.
Don't forget to add the tag rc-customer-center
to the offer so that the offer is only available to Customer Center and not used as a default offer when purchasing the product or in Paywalls.
Learn how to setup promotional offers in Google Play Console here.
Required promotional offersβ
You need to add the store specific promotional offer ids you want to use for each of your products in the Offers tab of the Customer Center settings. Otherwise, the promotional offer will not be shown to customers.
The Customer Center will automatically show offers based on specific user actions. By default we have defined it for cancellations but it can be modified to any of the defined paths. Hereβs how it works:
- Cancellation Retention Discount: By default, for responses in the cancellation survey, RevenueCat will use a promotional offer that you can customize in the Offers tab of the Customer Center settings.
This setup enables RevenueCat to automatically match the right offer based on a userβs actions, providing a seamless experience for both cancellation and refund requests.
The SDK will automatically match the right offer based on a userβs actions and its active subscription. If the SDK cannot locate a matching promotional offer id for the currently active user's subscription, it will bypass the survey and proceed with the userβs requested actionβeither canceling or refunding the subscription.
It is currently not possible to offer an upgrade offer for a different product than the one the user is currently subscribed to.
These promotional offers must be created in Google Play Console in order to be shown to customers. After creating a promotional offer for a product in Google Play Console, you have to assign it to a particular offer in the Offers tab of the Customer Center settings.
For example, if you just created an offer with id "monthly_subscription_cancellation_offer" in Google Play Console for your monthly subscription product, you would go to the Offers tab of the Customer Center settings and edit the "Cancellation Retention Discount" offer, and assign the id of the promotional offer id to that monthly subscription product.
You may also customize your configuration to provide other offers, or provide them when the user performs other actions. Learn more about configuring the Customer Center.