Discussion and help from anything related to RevenueCat.
Recently active
https://community.revenuecat.com/sdks-51/getofferings-work-fine-for-iphone-testfligths-app-but-not-working-on-ipad-testflight-app-6403?tid=6403&fid=51 I had a similar problem here, but unfortunately there was no change for me after I did this solution. My terminal output shows these problems. Where exactly could the problem be?ERROR: 🍎‼️ Error fetching offerings - The operation couldn’t be completed. (RevenueCat.OfferingsManager.Error error 1.)There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect (or the StoreKit Configuration file if one is being used). More information: https://rev.cat/why-are-offerings-emptyERROR: 😿‼️ There is an issue with your configuration. Check the underlying error for more details. There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect (or the StoreKit Configuration file if one is
With macOS Tahoe released today, I wanted to see how my app ran on it. But I ran into a compile error when using the RevenueCate Swift package: Protocol 'StoreKit2PurchaseIntentType' requires 'id' to be available in macOS 14.4 and newerI know RevenueCat just got their hands on the new SDK today, but I wanted to post my issue here to get the ball rolling on using RevenueCat with the new OS 26 versions.This error was within the StoreKit2PurchaseIntentListener.swift file.
Hi,I just wanted to get to know, what to implement additionally in my Flutter App for iOS introductory offers. I am not using the RC Paywall, but my own screens inside the App and I have already implemented IAP subscriptions for my App & the App is active inside the AppStore.The plan is to have a trial period of 3 days before the full price is charged. My app uses an App Extension that needs to know the expiration date and refers to the in-app-purchase page of my Flutter App if a subscription expires. Therefore I absolutely need to make sure that I get the Trial Period from RC:My expectation would be that when the User subscribes and is eligible for the trial period, I get a price of 0.0 USD for the product and an expiration date of 3 days from RevenueCat. Additionally, the introEligibilityStatusEligible flag is returned, so I can show a corresponding text to the user.Is this correct ? Do I additionally also get the effective price that is charged after the Trial period ends ?How i
I’m attempting to use Postman to get test data back to incorporate into my server.As a test, I ran this as a GEThttps://api.revenuecat.com/v2/projects/{project_id}/customers/{customer_id}Replacing {project_id} with my project id from general → project idAnd using a customer_id from the overview dashboard.Setting the header as show using the secret API key generated via API Keys → Secret Api Key → NewHowever I receive this error: How can this be resolved.Thanks
Hello, I did everything correctly via integration Firebase, but my conversions in Google Ads doesn’t have a value so ROAS can’t optimise How can we solve this issues? Thanks
I use webhooks to credit users for purchases in my app, I noticed I started to receive a new event type, INVOICE_ISSUANCE. I looked at the documentation but I have no idea what I would use this event for. The documentation says: A new invoice has been issued for the purchase. This event is sent when a new invoice is created for a subscription or non-renewing purchase that has not yet been paid. This event is only available for Web Billing purchases.Does this mean a user saw the web paywall or they clicked purchase and you just haven’t collected the funds? Will other events still be emitted? Would love a bit more documentation about why someone might care about the event.
I see transactions in overview:But no customers in sandbox list
I created a paywall, started testing and everything worked fine. But then I deactivated the offer in Google Play and added a new one and after that errors started appearing in the window and now the basic screen is displayed. I have already recreated the offer, but nothing has changed. I’m used Flutter and packages purchases_flutter: ^8.9.0 & purchases_ui_flutter: ^8.9.0W/[Purchases](10485): The Paywall references a package with id '$rc_monthly', but Offering 'new-default' does not contain such a package. It has these packages instead: [$rc_lifetime, $rc_weekly, $rc_annual]. Either add the missing package to the Offering or remove it from the Paywall.W/[Purchases](10485): Displaying default template due to validation errors.W/[Purchases](10485): Could not process value for variable 'sub_offer_duration' for package '$rc_lifetime'. Please check that the product for that package matches the requirements for that variable. Defaulting to empty string.W/[Purchases](10485): Could not proc
Hello RevenueCat Team,I’m facing a circular issue during the App Store review process and would appreciate your guidance.I’ve implemented a hardcoded paywall UI on the client side (not relying on dynamic offerings), and completed all setup: Subscription products are created in App Store Connect These products are added to a new Offering in RevenueCat The Offering is configured, but the product has not yet been approved by Apple During app review, since the in-app purchase product isn’t approved, the Offering isn’t accessible via the RevenueCat SDK.Because of that, Apple sees the paywall but encounters a missing product error when attempting to make a purchase, leading to a rejection under Guideline 2.1 - App Completeness.Ironically, Apple is telling me they can’t approve the subscription product until it’s accessible in-app, but I can’t access it in-app until it’s approved and synced to RevenueCat.Despite explaining this situation to the App Store reviewers, our submissions continu
Hello!Is there a way to track shipping fees charged to our customers via Stripe Payment links in RevenueCat? We want to use RevenueCat as a central location to track all sources of revenue and this would be very helpful. Thank you for any help with tracking all of our revenue!
Neither Google Pay nor Apple Pay is functioning with the Web Payment Link because of the following error (in console):stripe.js:1 Uncaught (in promise) IntegrationError: Invalid value for click event resolve callback: applePay.recurringPaymentRequest.regularBilling.recurringPaymentStartDate should be a future Date. You specified: "2025-06-09T18:19:18.915Z". at le (stripe.js:1:191329) at pe (stripe.js:1:191408) at Za (stripe.js:1:355332) at stripe.js:1:388185 at stripe.js:1:380848 The monthly and annual plans can’t be purchased due to the error above. But the lifetime plan works just fine.Here is an example of my payment page https://pay.rev.cat/sandbox/nhscxmehgplykyuc/useridDoes anyone know how to fix it?
When building iOS simulator build from react native, with the react-native-purchases 7.0.0, and XCode is 16.4 (if that matters).I use this command: eas build --platform ios --profile development-ios --localThen during the [RUN_FASTLANE] I see:“'SubscriptionPeriod' is ambiguous for type lookup in this context”. However, I don’t see it if I build with eas (not locally).I understand Flutter fixed this issue recently. 1) Which version was this fixed in for react-native-purchases? 2) Why do I only see it when building locally?
Hello RevenueCat community,I'm facing an issue with my app "Flight Canvas" being rejected by App Review. The reviewer attempted to make in-app purchases but encountered errors.App Review Feedback:"When validating receipts on your server, your server needs to be able to handle a production-signed app getting its receipts from Apple's test environment. The recommended approach is for your production server to always validate receipts against the production App Store first. If validation fails with the error code 'Sandbox receipt used in production,' you should validate against the test environment instead."Current Situation:The app works perfectly in TestFlight with sandbox purchases RevenueCat logs show successful offering fetching and subscription recognition Customer info shows proper entitlement activation in testing Using RevenueCat for all IAP handling (no custom receipt validation)Question:Is there a setting in RevenueCat I need to change to handle this specific App Review scenari
I am struggling to implement a paywall with many (22) subscriptions. Because our subscriptions are based on the number of users, we have a lot of options for the users to pick from. However, when I start adding the packages to the Footer, instead of the subscriptions being scrollable, it seems the footer just grows to fill the entire screen and then cuts off the additional subscription options. What is the recommended way to approach this?
Hello, the flow I’m trying to implement is the following:✅ user might or might not have downloaded and logged in on the app ✅ user visits my website and by following a stripe payment link they purchase a subscription through a stripe checkout session ✅ stripe sends the purchase to revenuecat through server to server notifications ✅ revenuecat creates an anonymous user with an anonymous user id ✅ user gets in the app, logs in with their email (same email as they used for stripe) ⚠️ what i’d want to do at this point: call loginUser with revenuecat, a user with the same email is found and they have a stripe subscription attached, in the app i get identified as that user and with access to the revenuecat offering.i think there are two blockers i’m not finding a solution for:revenuecat is not setting the email field in the user metadata (of the anonymous user it creates) when it receives the server to server notification, this is somewhat necessary because it’s the only way i have to connec
I have set $phoneNumber attribute in react-native-purchases. - Purchases.setAttributes({ onBoardingTypePurchase: 'default_onboard', $phoneNumber: '1_new',});$phoneNumber not showing this attribute in revenue cat dashboard
Prevously my appsflyerID in revenue cat events integrations would be set to the user ID as I did not set it manually. As of March 25th this stopped happening and the integration is broken as the appsflyer id is required for it to work. Why did the appsflyer IDs stop auto populating?
I set the duration incorrectly in product web billing, but I cannot edit it after editing. Please advise. Do I have to recreate it? I hope editing will be supported in the future.
Is there a workaround to the problem described here?
Hi there, I'm reaching getting the error message below upon trying to add more webhooks:“This project has reached the max number of webhook integrations.”I have 5 webhooks currently and will need a lot more to handle all the different event types. What is everyone's approach to this? I haven’t seen anything relating to this issue. In the docs it does not say anything about the limit. Any insights would be appreciated. Thank you!
Curious how others handle this. I’m showing my paywall early in the onboarding and I don’t require a login for my app.. it’s a game you can play against the computer if you don’t want to play online opponents (The game: Upwords). If you do want to play online I do require a login to keep track of the games, pair people etc.I have a back end server and thinking I could try a couple of thingsWhen a user starts a trail send the original RevCat anonID to my server along with days till trial ends and their push notification token (firebase messaging). I’d have to make sure a user agrees to push notifications when I do this. I could also have a dialog that allows them to enter an email for the reminder if they aren’t logged into my app. .. all this info gets sent to my server.. have a cron job on the server that collects any entries in the DB that are ending in 2 days and send out emails/push notifications If they do create a new account later, which is email based, I could search for the
Hey RevenueCat team!I love what you’re doing, amazing work! 🙌I just wanted to ask if you’re planning to build a RevenueCat Android app anytime soon? It’d be super helpful to have quick access on the go.Thank you.
For some reason the old setup I had months ago still persists and nothing I do gets rid of it. I can’t see the latest version only of the features.For some reason, these ones update immediately:The main content Packages Call to action Footer links Close buttonHowever, the features do not update no matter what.This is what I’ve tried:Getting the latest flutter sdk, current version in pubspect.yaml is `^3.7.0` Getting the latest versions of purchases_flutter and purchases_ui_flutter Cleaning the build folder and running the app again Clearing the apps cache, storage and uninstalling the app. Publishing a release build to the internal test track and installing it on google play console.I’ve attached screenshots of the device and the preview in the dashboard for side by side comparisons. I don’t know what else to do and it’s been frustrating me for months. Minor nitpick: It is such a pain to scroll down on the Paywall editor to see the entire preview on the right.
Looking over the consumer proguard rules for the purchases library on Android, I noticed the first line is `-keep class com.revenuecat.** { *; }` which ends up causing most of the SDK to be kept when using R8. This totals over 9100 methods (as of the latest version). Is there a reason that the entire SDK is kept? Can you relax the rules so that some of the unused code can be stripped?
I tried out the metrics API and I noticed something strange:All my revenue is in GBP, yet for the item “Monthly Recurring Revenue in GBP”, the value is returned as 0 and the unit still shows as $. Only the “Monthly Recurring Revenue” item returns a value, but it’s in $.My account “Date and Region” set up also has GBP selected, but I’m getting £0 as my MRR. Is there a way to get the actual value of GBP back? I don’t really want to do a conversion as it will be inaccurate due to currency fluctuations (and that means a conversion to USD and back to GBP which can cause even bigger discrepancies).As an example, if I had £100 in revenue and RevenueCat uses a rate of 1.31 to convert it to USD (Monday’s rate), it would show in the API as $131. If I convert it back to GBP using a rate of 1.35 (today’s rate), the value of $131 would convert to £97. As I will be receiving my funds in GBP, this is quite inaccurate and I want to find something that can tell me my actual revenue instead of a do
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.