Update: it finally came through, but it took way longer than 2 hours. Is this expected?
Hey @Jared!
RevenueCat polls Stripe subscriptions every few hours, it can vary depending on the queue. If you want the cancellation show up quicker, we recommend to re-post the same subscription to RevenueCat after a cancellation. For any customer.subscription.updated Stripe events, you can set up Stripe Server Notifications to send Stripe subscription updated webhooks into RevenueCat.
@tina I think the timing info could be a bit more clear. The docs specifically say “This means that it may take up to two hours for a Stripe cancellation to be reflected in the RevenueCat backend.” If RevenueCat pings Stripe every few hours, you should mention that in the docs and maybe put an absolute maximum so we know whether to have a meal or go to sleep in between tests ;)
Also the docs should probably clarify timing around how long it takes for purchases to show up in RevenueCat, maybe in cases with and without webhooks. I just setup Stripe + RevenueCat with webhooks and made a test purchase in the Stripe dashboard which based on the docs, I would assume would be immediately reflected. I see nothing in the RevenueCat dashboard so I’m not sure if it’s a setup issue or an expected delay.
Additionally the docs around sandbox for Stripe aren’t very clear. Like should I add all the Sandbox products to RevenueCat as well? The product IDs are different so I would assume yes or I’m not how RevenueCat would map them. However, I have two RevenueCat apps - one for development and one for production. I added my sandbox stripe products to my development RevenueCat app and I added my live stripe products to my production RevenueCat app. I’m not sure if this is right but it seems reasonable.
Transaction showed up. So it seems that not only are the stripe subscription cancellations delayed, but the purchases are also delayed and they are delayed with or without webhook by multiple hours. Does that sound right?
Hey @Tony
Sorry for the delay, this got lost in my notifications. For purchases, you should send the Stripe token to RevenueCat in order for it to reflected in the dashboard immediately. Docs for reference: https://docs.revenuecat.com/docs/stripe#5-send-stripe-tokens-to-revenuecat
As for Stripe sandbox products, since the IDs are different in production and sandbox, you should also add the Stripe sandbox products as separate product IDs and map them similarly to production (i.e: similar setup for Offerings and Entitlements). Developers would either add these sandbox products to the same production app or have a separate RevenueCat app for development / staging.