Discussion and help from anything related to RevenueCat.
Recently active
Variables like ‘{{ product.offer_period_in_days }}’ & ‘{{ product.offer_price_per_month }}/month’ are showing the values in the Editor but not upon being loaded in the app.
export const setAttributes = async( req: Request, res: Response, next: NextFunction) => { try { const {customer_id} = req.params; const attributeUrl = `https://api.revenuecat.com/v2/projects/${project_id}/customers/${customer_id}/attributes`; const url = new URL(attributeUrl); const attributes = [ { name: "jhon" } ]; const response = await fetch(url.toString(), { method: "POST", headers: { Authorization: `Bearer ${process.env.REVENUE_CAT_API_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify(attributes), }); if (!response.ok) { const errorData = await response.json(); const status = response.status; console.error(`Error from RevenueCat: ${status}`, errorData); switch (status) { case 401: return res.status(401).json({ error: "Invalid API key" }); case 403: return res.status(403).json({ error: "Access denied. Insufficient permissions" }); case 429: const retryAfter = response.h
I’m close to releasing a flutter app. I would like to handle payments using your paddle integration for web (and possibly show a button for mobile checkout because of the recent ruling against Apple). It seems that paywalls don’t support paddle and you can’t customize a paywall button to link to a url hosting paddle checkout. I don’t think I have an option but to create my own implementation of a paywall on web that looks like the revenuecat paywall for mobile which seems like a lot of effort and is not ideal..Are there plans to add a native Paddle integration or at least allow customization of that buttons action with revenuecat paywalls?
I have an iOS app, using SwiftUI, and effectively latest version of everything. I am using RevenueCat 5.23.0, minimum deployment iOS 18.1, XCode 16.3. I am facing an error which appears to only happen in production - not the sandbox. It’s extremely frustrating because it results in an RC error, even though the credit card transaction or trial start was successful. The user will tap my payment button, double click on the iOS native payment sheet to confirm w/ Face ID. The credit card payment or the trial start will succeed, and then iOS shows another prompt with the title “Turn off renewal receipt emails?” with the body “Get fewer emails by turning off renewals receipts for subscriptions. Your receipts will still be available in App Store settings > Purchase Hisotry” with two options to either turn on or off renewal emails. No matter which option is being selected, RevenueCat is populating the error object in the completion callback! This is happening even though my user is being bi
what is revnew cat appplease guide me THANKS
This is more of an apple app store question as opposed to any issue with RevenueCat…I recently changed the annual subscription price for my iOS app from $4.99/year to $9.99/year. This change went into effect approximately 4-5 days ago. If I look in the app store, it shows the correct price. However, when I view my transactions in RevenueCat, all of my renewals continue to show $4.99. All new annual subscriptions come with a 30 day free trial so I won’t know what price they will be charged until the end of their trial. Can someone please explain to me why this is happening? Thanks!
I understand that this same question has been asked and answered many time and I want to assure you that having battled with this for over a month now, I have read all the other posts but nothing works. I asked a friend to try subscribing and it worked but for whatever reason, not a single user has been able to subscribe to my app for over 2 months now.I don’t beleive this is parental control because the age limit of my app is just 4 and the error is coming from users all around the world.For added context, I started experiencing this shortly after introducing a weekly subscription plan and upgrading react native to 0.78, and integrating a ota-update package that lets me push updates without going through the review pipeline (I am not pushing any changes that go against Play Policies. Just minor changes). It’s been months now with zero successful subscriptions. I haven’t also had any new subscribers from ios in all this time but I haven’t seen attempts from ios users. For some reason,
Has anyone else’s app been rejected because: Apps offering auto-renewable subscriptions must include all of the following required information in the binary: - Title of auto-renewing subscription (this may be the same as the in-app purchase product name)- Length of subscription- Price of subscription, and price per unit if appropriate- Functional links to the privacy policy and Terms of Use (EULA)Our app admittedly doesn’t include links to our PP nor our EULA but thats a separate issue. I’m worried that we are getting rejected because we are using the React Native Paywall UI package to pull our paywall from RevenueCat to display it which probably means the things apple is rejecting our app for are not included in the binary.
Hello,I have a custom paywall and I would like to programmatically open a web browser from my app to direct users to the revenue cat external checkout page. Given the recent changes allowing external payments for U.S. users, I want to confirm the safest way to implement this.What is the recommended approach to determine whether I can open an external payment link—particularly to ensure compliance with Apple’s guidelines and avoid any risk of App Store rejection?Thank you for your help.Best regards
URGENT Currently, when trying to add links to tex on the paywall editor, the link seems to disappear asa soon as as I click on a different element or anything. TLDR they’re not staying on the text and fail to deploy. The following screenshots are sequential in that actions that I take. Please fix the immediately as our apple build is being rejected because we’re not including the links.
We're experiencing an issue with the react-native-purchases SDK where the Purchases.getOfferings() method does not return a response or callback on iOS 18.4. This issue is not present on older iOS versions (e.g., iOS 17.x and below), where the method works as expected.Environment: React Native version: 0.74.3 react-native-purchases version: 8.9.6 iOS version: Issue occurs on iOS 18.4 only Devices tested: Confirmed on real devices running iOS 18.4 Xcode version: 16.2 (16C5032a) Steps to Reproduce: Initialize Purchases with the API key using Purchases.configure(). Call Purchases.getOfferings(). Observe that on iOS 18.4, the method does not return, either as a fulfilled Promise or rejected error. On iOS 17.x and below, the same code path works fine and returns the expected offerings. Expected Behavior:Purchases.getOfferings() should return a valid response or a meaningful error message regardless of the iOS version, as long as the configuration and entitlements are correctly
Have found conflicting posts here so wanted to get the latest info on whether IDFA is still required for RC to send the IAP events to Meta?
Hi RevenueCat team and community,I’ve recently integrated RevenueCat Web Billing into my project. It’s a fantastic product—thank you! It allowed me to eliminate a lot of legacy billing code. However, I’ve run into a critical issue: the automatically generated invoices aren’t compliant with German regulations and don’t even include my company’s address.For the German market, invoices must include: Full company name and address VAT breakdown (net amount, VAT rate, VAT amount, gross amount) EU VAT ID in the footer (or equivalent) Could you please help me with the following: Invoice customization: Can I customize the invoice template, or at least enable Stripe Invoicing to generate fully compliant invoices? Invoice retrieval: Where can I access the generated invoices for archiving and submission to the tax authorities? Customer name capture: Is there a way to collect the customer’s name during checkout so it appears under “Issued to”? Thanks in advance for your assistance!Best rega
Hi! I have a Flutter app using RevenueCat for subscriptions.When a user activates a promo code via the App Store (outside the app), RevenueCat sends a webhook with an anonymous app_user_id (e.g., RCAnonymousID:abc123).The problem is that my backend expects a known user_id to associate the subscription with a user. Since the user hasn’t logged in yet, there’s no way to identify them based on this anonymous ID, and the webhook ends up being ignored.Later, when the user logs in to the app, I call:await Purchases.logIn(customUserId); But by that time, the webhook has already been processed (or missed), and there’s no connection between the anonymous ID and the logged-in user. What I want: To be able to process the first webhook, even if the subscription was activated anonymously (via promo code). My questions: What is the correct way to associate an anonymous RevenueCat ID with a custom user ID? How can I reliably process the first webhook and link it to the right user? Is there a way
Hi!I tried the “Auto-populate your metrics” function in the Health Score page and I can’t find the data entered automatically on my dashboard. For exemple: the trial start that has been populated automatically is 3,714% and when I look at the trial conversion chart, I can’t find this figure. I tried different grouping and timeframe but impossible to get this figure. Can you help me understand how is it computed please ?Thanks in advance,Marion
Using RevenueCat ootb integration in flutterflow, in TestFlight when arriving on the Paywall on iOS a grey screen is shown for all the internal and external testers except my own device. On my own iOS device when installing the app in testflight, i am able to see the paywall and subscribe to the product. Which proofs the configuration of the subscription in Apple and entitlement/offering in RevenueCat is correct. However when other users (internal and external testers) get invited and download the app in TestFlight, upon reaching the Paywall they get a grey screen.I searched and see other topics for other RevenueCat users having the issue with the grey screen, but didn't see any relevant resolution.Hope someone can help as this is blocking our app launch! Thanks and really appreciate any help.
I’d like to ask for guidance on how to properly handle cases where users attempt to repurchase a subscription product they are already subscribed to.In my app, I’ve implemented a subscription system offering both monthly and annual plans.The issue I’m currently facing is: when a user who already has an active monthly subscription attempts to repurchase the same monthly plan via the paywall, the system silently ignores the request — no callback is triggered, and the only output I can see is the following log:Ignoring purchase request for already subscribed packageWhile investigating this issue, I noticed something interesting: if I configure the package in the offering using PackageType.CUSTOM instead of the standard PackageType.MONTHLY, the PaywallViewModel is able to proceed with performPurchase() (since Package.currentlySubscribed returns false).In this case, the RC SDK ends up calling the Google Play billing flow, which results in an error due to the duplicate purchase. This error i
I’ve uploaded a valid service-account JSON and entered my bucket ID in RevenueCat, but the dashboard still shows:“Access was denied to the financial report bucket. Please check the service account has the correct permissions to access the bucket.”What I’ve verified so far: APIs enabled (Play Developer, Reporting, Pub/Sub) Financial data permissions granted in Google Play Console JSON credentials re-uploaded and bucket ID re-entered in RevenueCat I’ve attached a screenshot of the error as it appears in the RevenueCat dashboard. Please help me debug why access is still being denied?
When submitting the receipt, I passed in the user ID but returned an anonymous ID,
anyone has similar issues today? tested in both simulator and sandbox. I'm new to Revenucat. My question is: is this issue on my end or theirs? it seems paywall works fine for me yesterday,
Hi team, I created the paywall as below and upload a custom image on it. However, the image scale is not consistent on RevenueCat and iOS app. I’ve switch it to ‘Fit’ but seems it still be ‘Fill’.Could you help on this problem? What image ratio and resolution I should used?
Hi,I just submitted a new app to the App Store, but I’ve now noticed some logs in Xcode related to RevenueCat.WARN: ⚠️ Signature failed verification ERROR: 😿‼️ Request to getOfferings(appUserID: "AppUserID") failed verification. This is likely due to a malicious user intercepting and modifying requests. WARN: ⚠️ Signature failed verification ERROR: 😿‼️ Request to getCustomerInfo(appUserID: "AppUserID") failed verification. This is likely due to a malicious user intercepting and modifying requests. Do you know what could be causing these errors? I’d really appreciate your help.Below is the code I’m using to check the subscription status: import RevenueCatimport OSLogpublic final class SubscriptionManager: ObservableObject { private var entitlementId: String = "" @Published public var subscriptionActive: Bool = false { didSet { Logger.subscription.log("Subscription status changed: \(self.subscriptionActive)") } } @Published var customerInfo: CustomerInfo? { didSet
Is it possible to activate Stripes automatic tax collection when using RC-Web?
I'm using React Native to build an Android APK.Since I'm using addCustomerInfoUpdatingListener during app initialization, and within the app, I open WebBrowser to access Web Paywall Links (low code) for payment, will the CustomerInfo be updated after the payment is successful and the WebBrowser is closed? Because if I were to monitor CustomerInfo information
Hi. I’m doing some development in the sandbox to add auto-renewing subscriptions to my app. I already have some consumable in-app purchases in production, and I have a webhook set up for “non-renewing purchase” to hear about those. I’ve noticed that when I use Xcode/StoreKit to test the purchase of my new auto-renewable subscription, the “non-renewing purchase” webhook is being called. Why is that?In Xcode StoreKit config I’ve checked that the subscription I’m purchasing in set up as an “auto-renewable subscription”. In RevenueCat the product is set up as a “subscription” (not a “not-renewing subscription”).Thanks
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.