Skip to main content

How best to handle this?

 I have 2 paywall offerings both unlock the same entitlement. However one is at a reduced cost. Prior to moving to a subscription model the App offered a one time purchase. If user had purchased the one time they are now shown the 33% discounted paywall. If they are new customer or had no previous purchases they see the full price paywall.

 The issue is a user who qualifies for the discounted option takes it but them successfully applies to Apple for a refund of the original in-app purchase. A full 11 months later. Now that I don’t mind because it’s Apples way. What I do mind is the user getting the discounted rate and then refunding their transaction of 11 months previous and now should not be entitled to the discounted rate.

 

Finally my questions

Can I force user  to, at renewal of the subscription onto the standard price?

detect either in code or via the revenuecat dashboard customers who have taken the discounted option and subsequently cancelled (claimed refund) on the original qualifying purchase to obtain the discount and then ensure that when they renew subscription it'll be at the correct pay amount. 

Or is it just a workaround that customers can use and we as developers can do nothing about it?

Thank you 

Hey ​@t1esto,

Unfortunately, as a developer, you don’t have any way to change the user’s renewal preference or remove a discount that has already been applied (at least in a way that wouldn’t remove it for all customers who have applied it). 

The main thing that you could do is to detect a user who has claimed a refund and show them the full price paywall if they ever attempt to change products. 


Is there anyway in RC’s sdk to detect if user claimed refund ? I know I got a notification but after to notification I can’t find user again in the dashboard. So in code would be great 


Hey ​@t1esto,

In the `customerInfo` Subscriptions object, there is a field called `refunded_at` which will note the time at which RevenueCat detected a refund for this sub. This will be null if there hasn’t been a refund. 

You get the user’s customerInfo from either the REST API v1 GET /subscribers endpoint or the SDK!


Reply