Get help with your SDK implementation.
Recently active
🍎‼️ Error fetching offerings - Error Domain=RCPurchasesErrorDomain Code=23 "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). plze help me solve this problem
I am using monthly and annual package in my app. They have 3day trial option.I used these method: var paymentDiscount = await Purchases.getPaymentDiscount( choosedoffer!.product, choosedoffer!.product.discounts![0]);purchaseinfo = await Purchases.purchaseDiscountedPackage( choosedoffer!, paymentDiscount);to make a purchase.It is working while i am testing but when i uploaded to the app store from other’s people’s Iphone i realized that it isn’t working.Payment screen do not come to the screen but in test mode it is coming.How can i solve this problem?
I have recently launched an iOS app which has been in beta for a while. The live app has subscriptions, but during the beta I added a “lifetime unlock” in-app purchase so that beta testers didn’t have to keep re-subscribing due to the accelerated subscription speed.Now that the live app is out, I wanted to offer beta testers a promotional offer code to access a discounted subscription in the live app. However, in my testing, when I installed the live app over the beta app it immediately unlocked everything (as the lifetime unlock was still valid, despite being purchased in sandbox mode)So I added code to the live app to ignore sandbox entitlements by checking the isSandbox flag on the EntitlementInfo (RCEntitlementInfo). This now works as expected, and I was able to purchase a new subscription in the live app despite having had one in the beta, however, today it is failingWhen I try to purchase the monthly subscription in my live app, it tells me “You’re currently subscribed to this” (
please someone help me? how to get latest receipt info in webhook after verification done by revenuecat?
Context:New, 1.0 release of an app Independent watchOS app, e.g. no iOS app Purchases work in sandbox/simulator and see them show up on the RevenueCat dashboard when viewing sandbox data I’m using the Purchases framework version 3.13.1 with SPMWhen I build and run on my physical Apple Watch and attempt to purchase, I get this failure message:Unable to Purchase AppSign in with your Apple ID from the Apple Watch app on your iPhone[ OK ]But I am already signed in with my personal Apple ID account AND have my Sandbox Account configured on my iPhone.My logs look like with a fresh install/build from Xcode:2022-01-04 12:46:15.726123-0700 Next WatchKit Extension[370:89772] [Purchases] - DEBUG: ℹ️ Debug logging enabled2022-01-04 12:46:15.727275-0700 Next WatchKit Extension[370:89772] [Purchases] - DEBUG: ℹ️ SDK Version - 3.13.12022-01-04 12:46:15.727348-0700 Next WatchKit Extension[370:89772] [Purchases] - DEBUG: 👤 Initial App User ID - (null)2022-01-04 12:46:16.034222-0700 Next WatchKit Exten
Execution of Purchases.purchase(package) returns error bellow.( 5034): type '_InternalLinkedHashMap<Object?, Object?>' is not a subtype of type 'Map<String, dynamic>'It happens inside the purchases_flutter package.package version purchases_flutter: ^3.9.1.
Hi @taquitos With the latest 4.0.0-Beta.3, the return from purchaseProduct:withCompletion can have zero entitlement even though it is not true.I can’t reproduce while in debug mode (randomly happens outside the debugger).Attached is a txt file with a log of successful return (I see some errors but not sure how to cancel them).Thanks,
Thanks for the Platform, guys! Started working with RevenueCat on the Flutter and after callawait Purchases.getOfferings()I get an exceptiontype 'Null' is not a subtype of type 'num' in type castReproduced on the real and virtual Android devices. I wrote issue, but your bot is too evil to let her in) That's why I ask here. Can you help with a solution? This seems to be happening on deserializing JSON like this in this place: Environment Output of `flutter doctor`Doctor summary (to see all details, run flutter doctor -v):[√] Flutter (Channel stable, 2.8.1, on Microsoft Windows [Version 10.0.22000.434], locale ru-UA)[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)[√] Chrome - develop for the web[√] Android Studio (version 2020.3)[√] Connected device (3 available)• No issues found! Debug logsD/[Purchases] - DEBUG(21462): Debug logging enabledD/[Purchases] - DEBUG(21462): SDK Version - 4.6.0D/[Purchases] - DEBUG(21462): Initial App User ID - nullD/[Purch
I am using the Android SDK (with Kotlin) and my product description always comes back null. I can see the product description in the Google Play Store console but it doesn’t come back through RevenueCat. Also when I check the freeTrialPeriod and subscriptionPeriod values they come back with is “P2W” and “P1M” respectively. How do I resolve that into “2 weeks” and “monthly” programatically? Is there an enum or something being use to resolve these? TIA.
We have a subscription info screen in which we show the user’s current subscription and its price.We couldn’t find a way to get this price.We can get the offerings and use the `purchaserInfo.activeSubscriptions` to find the related product and its price, but the offerings could change with time.. We would like to know the price that this user is currently paying.
Please check below details about bug. User has purchased subscription from application. Once user close the app and open again within same day or within some time. We are getting purchase info. with active status true. So, in this case it’s working well. But if user reopen app after a day or couple of days, we are getting purchase info. NULL(Purchases.shared.purchaserInfo) even my purchase is still valid. Now if user restore it then it’s again working well and I am getting purchase info. in restore purchase request. Can you please help me out for this? I don’t know why it’s happing and what is the solution for this. Also, I am seeing dozens of user Aliases in Revenue-cat portal, Aliases are created on daily bases. Not sure why so many aliases created for particular user even subscription is not expired.
I migrated my app to RC, however my previous users are having the sync problem.Previously, I was not using a back-end for the subscriptions, so I was using the client-side receipt validation on iOS (React Native IAP package).I am trying to sync my previous users, but a little bit confused about the steps;if (isSubscribedInOldSystem && !isSubscribedInRevenueCat) {Purchases.syncPurchases();} 1 - What should I provide to the syncPurchases() function?2 - If I need to provide the receipt, should I provide full receipt? or just the receipt body? I mean, I was using this validation method;const receiptBody = { 'receipt-data': receipt, // Should I provide this to RC? password: 'PASSWORD', }; await IAP.validateReceiptIos(receiptBody, false) .then(response => { try { const renewalHistory = response.latest_receipt_info; const expirationDate = renewalHistory[0].expires_date_ms; const isExpired = Date.now() > expirationDate;
Hello,I’m using Qt (version 6), with cmake builder to create an app on IOS and Android.The code is in C++ for major part of logic, QML for UI, Objective-C and Java for platform-specific logic. The previous version of my app, use Qt5 and QtPurchasing to manage in-app purchase and I have only one non-consumable product to unlock premium features.I have updated my app to Qt6, and make in-app purchase works with qt example with native code.But now, I want to manage auto-renewable subscriptions and I have difficulty with native code to manage it.So I look for RevenueCat but I don’t achieve to install the SDK in my project. I started with IOS integration.I have look the GitHub purchase-ios and try to make direct integration.I have successfully include Purchase.h in my Objective-C file but purchase-ios is not build so linker not found RCPurchase symbol. I have try Swift package but I encounter problems with a Xcode bug which block swift package dependency adding, and failed during loading of
Hi RevenueCat, I’m glad that RevenueCat exists to help bridge the gap for in-app payment/subscription on the different platforms. For my app, I’m currently using Flutter SDK to get in-app auto-renewable subscription setup for both Android and iOS. I have read through the setup docs and have already done the setup, and I’m testing this locally in iOS simulator on iOS 15/14.5.I’m aware that iOS 13 and below, is not compatible with testing in iOS simulator but with 14 and above, it should be compatible. I’m using the latest flutter SDK (purchases_flutter: ^3.8.0)These are the following things done:App Store Connect:In-app purchase package creation App-specific shared secretXcode:Adding In-app purchase feature Package setup StoreKit configurationRevenueCat:Bundle ID setup Package creation to be the same as App Store connect Uploaded StoreKit public certI am able to retrieve the packages that are setup in the Flutter app correctly. However, when the code is called for Purchases.purchasePack
Hi, so we are using ionic capacitor framework. Everything works fine on IOS but we have problem with Android. So when we start the build we are running into this errors. Tried different gradle versions 4.2.2 and 7.0.3 - 7.0.4 "@angular/common": "~12.1.1", "@angular/compiler": "~12.1.1", "@angular/core": "~12.1.1", "@angular/fire": "^6.0.5", "@angular/forms": "~12.1.1", "@angular/platform-browser": "~12.1.1", "@angular/platform-browser-dynamic": "~12.1.1", "@angular/router": "~12.1.1", "@angular/service-worker": "~12.1.1", "@bugsnag/js": "^7.13.2", "@bugsnag/plugin-angular": "^7.13.2", "@capacitor-community/fcm": "^2.0.2", "@capacitor-community/firebase-analytics": "^1.0.0", "@capacitor-community/native-market": "^0.1.4", "@capacitor/android": "3.1.2", "@capacitor/app": "1.0.2", "@capacitor/browser": "^1.0.2", "@capacitor/core": "^3.1.2", "@capacitor/device": "^1.0.3", "@capacitor/haptics": "1.0.2", "@capacitor/ios": "^3.2.
Hello, I am working on updating all my Frameworks including Purchases, specifically trying to get rid of all my PODs and moving them as Swift Packages Dependency. Also, for this I decided to start doing it on the latest version of Xcode in beta and the upcoming iOS 15. I recently noticed that while testing, two things are happening that were not happening before. Products are being displayed on the simulator. The Sign in With Apple ID window is appearing.While testing on the simulator for iOS 14, I was never able to download the products from Revenue Cat, therefore I was only able to test on an my device. But I noticed that it now brings the products and is able to display them on the simulator. However I have not tried to do a purchase from there as I assumed is not going to work as expected. ( This, is actually a good thing because it allows me to test on simulator how my paywall is going to look and react to changes )However, on the second point for some reason, the “Sign in with
Hey there,Fetching the offers works as expected, but purchasing them results in an app crash.The crash only happens on android, ios works fine.I am on react-native-purchases v4.5.0.Testing on a Real Android deviceI am coming from the react-native-iap (5.2.14) package, I uninstalled the react-native-iap package already, but I am not sure if it might is related to that lib, something i forgot to clean up?I checked that the Purchases instance isConfigured:const configured = await Purchases.isConfigured();I tried both methods, purchaseProduct and purchasePackage, both crashed.LOGS:revenueCat Logs:💰 Retrieved skuDetailsList: SkuDetails: {"productId":"com.docomondo.yearly","type":"subs","title":"docomondo Premium (docomondo - dein smarter Dateimanager)","name":"docomondo Premium","price":"CHF 42.00","price_amount_micros":42000000,"price_currency_code":"CHF","description":"Benefit from all available Features!","subscriptionPeriod":"P1Y","freeTrialPeriod":"P4W2D","skuDetailsToken":"AEu..."}💰
Google Play won't allow me to add the subscription items to my product due to "Billing Permissions" in the bundle. The error message is:“To add in-app products, you need to add the BILLING permission to your APK” Team says this in our project and found that it is present in revenue cat sdk.
i dont know how to fix this error,am getting like this in terminal D/[Purchases] - DEBUG( 6672): ℹ️ Found 0 unsynced attributes for App User ID: $RCAnonymousID:ea91c2a133b14d9e8a8f4837df463bb3D/EGL_emulation( 6672): app_time_stats: avg=4.59ms min=1.73ms max=25.40ms count=54D/[Purchases] - DEBUG( 6672): ℹ️ API request started: POST /receiptsD/[Purchases] - DEBUG( 6672): ℹ️ API request completed with status: POST /receipts 503E/[Purchases] - ERROR( 6672): 🤖‼️ There was a credentials issue. Check the underlying error for more details.I/flutter ( 6672): ---------I/flutter ( 6672): PurchasesErrorCode.invalidCredentialsError
We have had 3 instances where a user has been charged twice for a Consumable Product. We have noticed that this happens when the user receives an error (example of error response below) from the API method in React Native await Purchases.purchaseProduct(productId, null, Purchases.PURCHASE_TYPE.INAPP). Below is a snippet of how we use the API method in a try/catch block. try { setIapLoading(true) await Purchases.setAttributes(userAttributes) log.info('Set user attributed', userAttributes) await Purchases.purchaseProduct(productId, null, Purchases.PURCHASE_TYPE.INAPP) log.info('Purchase successful') navigation.navigate(ROUTE_SIGN_UP) } catch (e: any) { if (e.code !== '1') { log.error('IAP Error for Product: ' + productId, JSON.stringify(e)) setIsOpen(true) } } Error Response:{"code":"2","message":"There was a problem with the App Store.","domain":"RCPurchasesErrorDomain","userInfo":{"readable_error_code":"STORE_PROBLEM","readableErrorCode":"STORE_PROBL
Hello,We would like to report an issue we are facing with the RevenueCat framework.We are implementing the delegate to receive subscription status changes, as it’s recommended in the documentation: https://docs.revenuecat.com/docs/purchaserinfo#listening-for-purchaser-info-updatesQuite often, this delegate is called with invalid subscription information. For example, here is one callback from today, December 13th -- the app wasn’t launched since friday, and instead of fetching the new subscription status (which should be “expired”), it returned an active subscription from December 10th:delegate update info: <PurchaserInfo originalApplicationVersion: 1.0, latestExpirationDate: 2021-12-10 16:04:57 +0000 activeEntitlements: { PremiumAccess = { billingIssueDetectedAt = null; expiresDate = “2021-12-10 16:04:57 +0000"; isActive = Yes; isSandbox = Yes; latestPurchaseDate = “2021-12-10 16:01:57 +0000”; originalPurchaseDate = “2021-12-06 16:39
I just installed RevenueCat via CocoaPods, but after I build/run my app (iOS/macOS), I got 60 warnings for each target. PODS: - Purchases (3.13.1) - PurchasesCoreSwift (3.13.1)TARGETS: - macOS (11.0) - iOS (15.0)Xcode: - Version 13.0macOS: - macOS Big Sur (Version 11.5.2)
Hi, RevenueCat is working well for almost all of my users. There is a user where the subscription is not being updated in the RevenueCat system despite the user frequently opening the app. An example user is l6eLj1tGiTZfNUVA who started their subscription 2021-11-05 10:11 AM. The Google Play console shows they been rebilling every month since 2021-11-03 and was last billed on 2022-01-03 however this isn’t shown in RevenueCat so I have to manually check with GPLAY and extend his subscription each time. I checked and this user last opened the app at the start of 2022 so is missing the December billing event, they are also using the most recent version of the app which includes the RevenueCat Cordova plugin. Any help would be appreciated 🙏
Legacy Public API Key is not visible in project settings section under API Keys I created four projects and Legacy Public API Key is visible in only one of my projectand is not visible in the remaining three.i attached the pic below the location for Legacy Public API Key Please help me!!
We are using Flutter and have an Android user who paid for a monthly subscription Dec 9th and canceled, but their subscription should be active until Jan 9th. They were trying to restore their purchase several times but it seems like restoring just hangs after waiting up to 2 minutes. The success/failure toasts that normally appear don’t seem to be triggering for them. Other Android users have been able to restore their purchase successfully.Are there any known issues for when users have canceled but are in an active subscription state? Pasted our restore purchase code & attached a screenshot of our user’s Google Play subscription screen. Future<bool> restorePurchase(BuildContext context) async { final PurchasesErrorCode? code = await requestToRestorePurchases(); if (code == null) { triggerToast(context: context, text: 'Purchase restored!'); triggerHeavyHaptic(); return true; } else { triggerToast( context: context, text: 'Could not restore existing subs
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.