Docs
You are viewing:
Product Catalog 2.0
Can Chargebee retrieve the subscription products from Apple and Google stores automatically? No. Chargebee cannot retrieve the subscription products configured from Apple and Google stores automatically. Products need to be imported from stores to Chargebee. Learn more about importing Apple and Google products
Will Chargebee create the corresponding subscription plans before creating in-app subscriptions if I miss importing products from the store? Yes. If the products are not imported from the store, Chargebee will create the subscription plans automatically before creating in-app subscriptions. Chargebee will use the product ID, price, currency and receipt information made available through the SDK method or process purchase command API to create the corresponding plans.
Why is it needed to import products if Chargebee can create subscription plans corresponding to the products in the store automatically before creating a subscription? Importing products is needed during the following cases:
Do I re-import the products to Chargebee, every time I make changes to the price point of the plans in the store? Yes. It is recommended to import the products from the store every time the price-point is changed in the store. This will make sure that plans in Chargebee are in sync with the store.
If I miss re-importing products from the store to Chargebee post changing the price point in the store, will my subscriptions be affected? No. New subscriptions will not be affected. Chargebee will override the price point associated with the plan and consider the price passed through the process purchase command API or the SDK method to create the new subscription. However, during plan upgrade notifications from the store, Chargebee will check the price corresponding to the upgraded plan present in Chargebee and if this price is not updated then the subscription will be associated with an incorrect price.
Where can I see the imported plans from the App Store and Play Store in Chargebee? You can view all the imported Apple and Google plans in Chargebee by selecting plans in the left navigation pane and applying the channel filter App Store, Play Store or both.
Can I create Apple/Google plans in Chargebee? No. You cannot create Apple and Google plans using Chargebee's create plan option on the plans page. Any plan you try to create on Chargebee's plans page will be associated with the web channel by default. Therefore, you can only import Apple and Google plans from the store.
Can I edit the Apple/Google plans in Chargebee? Yes. You can edit Apple and Google plans in Chargebee by visiting the plans page. But while doing this you have to confirm that the plans are in sync with the store. Therefore, we always recommend re-importing the plans from the store instead of editing the plans in Chargebee.
Can I delete the App Store/Play Store plans in Chargebee? No. You cannot delete the Apple and Google plans in Chargebee. Please contact support if you want to delete the store plans.
What configurations do I continue doing in the Apple App Store or Google Play Store post-integration? Post integration you can continue configuring new in-app subscription products or change the price of these products in Apple and Google stores. In this case, ensure that these products are re-imported to Chargebee.
Post integrating Apple and Google apps to Chargebee, will Chargebee automatically start creating subscriptions by listening to server notifications from the store? No. Chargebee cannot create a new subscription by listening to notifications from Apple and Google. You need to use the process purchase command API or integrate SDK to create new subscriptions in Chargebee. Once the subscription is created in Chargebee, we listen to notifications from the store to manage the subscription status in Chargebee.
Can Chargebee make a purchase on my app's behalf so that I don't have to use Apple Storekit/Google billing library APIs? Yes. You can integrate your client App with Chargebee's native SDKs or Flutter and React Native SDK and these SDKs will handle in-app purchases on your app's behalf with Apple storekit / Google billing library APIs.
I want to manage the purchase at my app end by using Apple Storekit/Google billing library APIs. Is there still a way to sync these subscriptions to Chargebee? Yes. Use the process purchase command API to sync in-app subscriptions to Chargebee.
Does Chargebee take care of in-app purchase receipt verification as recommended by the stores? Yes. Upon invoking the process purchase command or purchaseProduct method of SDK, Chargebee gets the receipt and verifies this receipt with Apple / Google servers to get the latest status of the subscription. Only upon successful verification of the receipt, Chargebee returns the successful response.
Which Customer ID does Chargebee use when an Apple / Google subscription is created in Chargebee? Chargebee uses the Customer ID provided by you while invoking the process purchase command API / purchaseProduct method to create a subscription. If no ID is provided, then the subscription ID is used as the customer ID. Chargebee does not directly obtain the customer ID from the App Store or Play Store as this information is not shared by the stores.
Can I use the process purchase command API to import subscriptions? No. Process purchase command API should be used to create a new subscription. Invoking this API will fail if you try to create an in-app subscription in Chargebee that has already been canceled or is in non-renewing state in Apple / Google.
When do I grant access to the content to the end user in my app? It is recommended to grant access to the content to the end user as soon as you get the successful response from the process purchase command API or purchaseProduct method of SDK. Success response from the API or SDK method means that payment is successful and the purchase receipt is validated by the Apple/Google server successfully.
Will Chargebee own the subscription management of in-app subscriptions? Subscription management is primarily owned by Apple and Google. Chargebee will listen to the notifications from Apple and Google stores in real time and make sure that the subscription state is in sync with the store.
Can I cancel or edit a store subscription in Chargebee? No. Subscriptions synced from the store cannot be edited in Chargebee as the subscription management is primarily owned by Apple and Google stores.
Can I manage a store subscription in Chargebee? No, the subscriptions are added to Chargebee in read-only mode; therefore, you will notice that all the subscription management actions are blocked for Apple and Google subscriptions. This will ensure that any changes to the subscription will be handled in line with the guidelines established by Apple and Google.
Can I download Apple/Google invoices from Chargebee and send those to my end users? No. Invoices will be sent by Apple/Google directly to your end users. Therefore, invoices in Chargebee are read-only and cannot be downloaded or emailed.
Do I receive the webhook events for subscription state changes? Yes. Chargebee will send webhook events corresponding to subscription creation and every subscription state change. These events will contain the channel information so that you can differentiate Apple and Google events from the regular subscriptions. Learn more about in-app purchase events.
I have a backend logic to enable the content before granting access to the content, so I rely on webhook events from Chargebee to grant access. However since webhook events are taking more time, the end user is stuck on the app though the payment is successful. How should I handle this case? Sometimes there can be a delay in receiving webhook events from Chargebee due to the load on the server and network conditions. So it is always recommended to grant access to the content to the end user as soon as a successful response is received from the process purchase command API / purchaseProduct method of SDK. If you still want to wait for webhook events from Chargebee then it is suggested to inform the end user that the purchase is successful and the access will be granted as soon as the purchase is processed. Once you get the webhook event corresponding to subscription creation from Chargebee you can push an in-app notification to the end user that informs the user about the access grant.
What will happen if a subscription already exists in Chargebee and I try to re-create this subscription by invoking the process purchase command API? Our APIs are idempotent. Therefore, invoking the process purchase command API for an existing subscription, Chargebee will check the latest status of this subscription in the Apple or Google store and if there's any state change it will update the existing subscription in Chargebee without creating any new subscription record.
Is there a way to get the subscription status of my app user from Chargebee? Yes. You can use listSubscriptions API or retrieveSubscriptions SDK method to fetch the subscription status of app users from Chargebee.
If an end user is logged in with a different user ID on the app but already has a subscription associated with his Apple / Google ID on the device, will he be subscribed again to these stores? If an end user is logged in with a different user ID in your app, you may not be able to get the subscription status of this user from Chargebee, as the customer ID corresponding to this user may not be present in the Chargebee. However, Apple / Google will not allow this user to re-subscribe to the same product again as there's already an active subscription associated with Apple / Google ID.
What will happen if a subscription already exists in Chargebee and I invoke the process purchase command API with a different customer ID? Upon invoking the process purchase command API, Chargebee will check the latest status of this subscription in the Apple or Google store and if there is any state change, the subscription will be updated. Post subscription state update, this subscription will be associated with the new customer ID. All the subscription history will be moved from the old customer ID to the new customer ID. So though the old customer ID will exist in Chargebee, the subscription record will be moved to the new customer ID and subscription_changed event will be triggered by Chargebee.
What will happen if a user subscribed to a web storefront tries to access content on an iOS / Android App? You can check the subscription status by invoking the list subscriptions API or retrieveSubscriptions SDK method for that customer and Chargebee will return the subscription details. Now if this customer has an active subscription on a web channel, then you can allow access to the content in the App.
Can I enable my app users to cancel their Apple or Google subscriptions through Chargebee and switch to a plan on my web storefront? No, your app users cannot cancel their Apple or Google subscriptions directly through Chargebee. You need to inform your app users to cancel Apple or Google subscriptions in the respective storefront and then ask them to re-subscribe on the web storefront.
Note: If your app users subscribe to a new plan on your web storefront without canceling their Apple or Google subscriptions, they will end up with multiple active subscriptions in Chargebee. To avoid this, ensure they cancel their existing subscription first.
Can I connect multiple apps with my Chargebee site? Yes. You can connect multiple apps with Chargebee using the user interface. Learn more.
Can subscribers of the Apple App Store or Google Play Store renew their subscriptions outside the store using a different payment method? No, it is not possible. The respective stores exclusively manage subscription renewal for Apple App Store or Google Play Store subscribers. Even if you enable the Payments > Payment collection when the payment method is added setting in Billing LogIQ, renewal payments cannot be collected from credit cards or other payment methods outside the stores.
Can I change the name of my app on the Chargebee site once the setup is complete? No, you cannot change the display name that you choose for your app on the Chargebee site. However, you may choose to unlink your connection and connect your app with a different name.
How does Chargebee represent payment methods for customers billed through the Apple and Google Stores? For customers exclusively billed through the Apple or Google stores, we don't specify a payment method in their customer records because the payments are directly managed by these stores. However, in Chargebee's transaction records, we label the payment method as either APP_STORE or PLAY_STORE.
How to identify a subscription that is present in the App Store but missing in Chargebee? To identify a missing subscription in Chargebee, use the status filter and select Pending status. This will list all the initial purchase notifications that were received by Chargebee from the respective stores but were not processed due to network failures. Learn more about notification events.
How to sync a missing store subscription in Chargebee? To sync a missing subscription in Chargebee, go to App Store > Sync events > View all and apply the status filter by selecting Pending state. This will list all the initial purchase events that are not recorded in Chargebee. Download the receipts corresponding to these events and invoke the process purchase command API with these receipts to sync the missing subscriptions in Chargebee.
I want to provide customers with coupon codes for iOS/Android checkout. Will using a coupon code generated through Apple/Google still result in a failed purchase? No, the purchase will successfully go through. If a customer utilizes a coupon code generated via Apple/Google, the purchase process will be completed without any issues. However the subscription will be created with the discounted price and also renew with the same price, so it is not suggested to use process purchase command API for processing coupon based purchases.
When a customer uses the process purchase command API / SDK to record the purchase within Chargebee, can they apply the offers? It is not suggested to use process purchase command API / SDKs to process purchases with offers, as the subscription will be recorded at the discounted price, and will also renew at the same discounted price.
message_retention_duration
property of the topic. This allows the topic to retain published messages for up to 31 days, even after acknowledgment. If the topic's message_retention_duration
is longer than that of the subscription, Pub/Sub will only discard the message when its age exceeds the topic's retention duration. For more information, see Google Cloud's Pub/Sub Replay and Purging Overview.Was this article helpful?