RevenueCat proudly helps create an easy way to keep track of all your in-app transactions. However, although we manage your purchases, we don't process the payments for your subscriptions and non-renewing products.
The differences are best explained by understanding how RevenueCat interacts during the purchasing phase of a customer buying a subscription or non-renewing product.
-
When a user goes to your paywall, the SDK uses the product IDs from your current offering and retrieves the product information from the respective stores ( Apple/Google/Stripe).
-
When the user selects a product to purchase, the SDK gets the product ID to send it to the store to purchase
-
The store then processes the payment (charges the user via their payment option) and adds this product to the customer's receipt.
-
When the customer's receipt changes, RevenueCat has listeners that update the `PurchaserInfo` object (allowing customers to get access to the product/feature they purchased) and updates our backend with this information (updates the customer profile).
Any time changes are made to a customer's receipt, such as through cancellations, renewals, and billing issues, RevenueCat will be updated with this information.
As RevenueCat is not a payment processor, this means we can not:
-
Change someone's billing information
-
Give a discount to a subscription/non-renewing purchase
-
Pause a subscription
-
Refund Apple purchases
-
Cancel subscriptions with Apple
Some exceptions/workarounds include:
-
Active Android subscriptions may be refunded and revoked via the REST API or directly through the RevenueCat dashboard.
-
You can defer a subscription with Google via the REST API