Docs

Frequently Asked Questions 

General FAQs 

  1. 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
  2. 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.
  3. 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:
    • If you are planning to use the SDK method to retrieve product information from Chargebee;
    • If you are importing historic subscriptions for which the plans are not present in Chargebee;
    • If you are expecting users to upgrade/downgrade subscriptions to new plans.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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.
  9. 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.
  10. 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.
  11. 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.
  12. 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.
  13. 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.
  14. 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.
  15. 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.
  16. 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.
  17. 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.
  18. 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.
  19. 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.
  20. 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.
  21. 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.
  22. 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.
  23. 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.
  24. 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.
  25. 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.
  26. 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.
  27. 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.
  28. 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.
  29. 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.
  30. Can I connect multiple apps with my Chargebee site?
    Yes. You can connect multiple apps with Chargebee using the user interface. Learn more.
  31. 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.
  32. 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.
  33. 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.
  34. 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.
  35. 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.
  36. 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.
  37. 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.

Apple FAQs 

  1. I have issues with my App-Specific Shared Secret key, what can I do?
    If you are unable to view the key, reach out to your App Store Connect admin for assistance. However, if you receive errors while connecting with Chargebee, we recommend you utilize the Regenerate key option for a new App-Specific Shared Secret. Please exercise caution while regenerating and check with your technical team whether the shared secret is currently being used somewhere else.
  2. How does Chargebee maintain the subscription status for Apple subscriptions?
    Chargebee maintains subscription status using real-time subscription-related notifications or webhook events from the Apple App Store. You need to configure the notifications URL generated by Chargebee in App Store Connect. This configuration will enable Chargebee to receive real-time notifications from the Apple App Store.
  3. Can I receive Apple App Store server notifications on my server first and then pass them to Chargebee?
    Yes, the Apple App Store sends notification events of subscription state changes in JSON format. You can receive these notifications or webhook events from the Apple App Store by configuring your server URL in App Store Connect. Please ensure these notifications are also passed by your server to Chargebee using the same JSON format to maintain uniform subscription status in Chargebee.
  4. Is there a way to cancel the subscription on behalf of the end user in App Store Connect?
    No. We cannot cancel a subscription on the user's behalf from Chargebee or through App Store Connect. User has the option to cancel the subscription by going to the settings in Apple device or by calling Apple customer care. Learn more .

Google FAQs 

  1. I have issues with my Service Account Credentials, what can I do?
    You can always review the documentation  from Google for additional information.
  2. How does Chargebee maintain the subscription status for Google subscriptions?
    Chargebee maintains subscription status using Google's Real-Time Developer Notifications (RTDN)  or webhook events from the Google Play Store. For this to happen, you need to generate the Topic ID in Chargebee or configure an existing Topic ID in Chargebee during Play store integration. This configuration will enable Chargebee to receive real-time notifications from the Google Play Store. Learn more.
  3. Post my testing in Chargebee's test site, I re-configured the same topic in the live site. Now since the topic is the same will I receive notifications from the Play Store to both, test and live sites?
    No. Though the topic ID is the same, Chargebee subscribes to only one topic at a time. In this case, since the topic ID is generated in the Chargebee's test site and re-configured in the live site, notifications will be sent only to the live site.
  4. There's only one topic that can be configured in the Play Store. But I want to receive notifications from Google to my test & live Chargebee sites. Is there a way to achieve this?
    Yes. There is a procedure to achieve this.
    To receive notification from the Google Play Store to your Chargebee test and live sites, follow these steps:
    1. Generate the Topic ID from the Chargebee test site.
    2. Go to the Google Cloud Platform (GCP) > Topic and filter the specific topic.
    3. Under the GCP topic, click the GCP subscription which will have the same name as the bundle identifier.
    4. Copy the Push endpoint URL from the GCP subscription.
    5. Connect the app to the Chargebee live site.
    6. Click on Use existing topic and enter the topic ID generated using step 1.
    7. Go to the specific GCP topic again.
    8. Create a GCP subscription manually and provide the endpoint for the test site that was copied in step 4.
  5. Is Chargebee's PRN(Payment Reference Number) the same as the order ID generated by Google?
    Yes. For historical subscription imports, the payment reference number (Logs > Transactions > Transaction Details > Payment Methods > Reference Number) differs from Google's order ID. However, for all other cases, the payment reference number is the same as Google's order ID.
  6. How can I control message retention in Google Cloud Pub/Sub?
    By default, a Pub/Sub topic discards messages once they are acknowledged by all subscriptions attached to the topic. However, you can configure message retention by setting the 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?
Loading…