RevenueCat / RevenueCat/react-native-purchases

There was a problem with the App Store

Open
#1,673 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
1.2k
Forks
117
Avg merge
14h 40m
Merged PRs (30d)
40

Description

Describe the bug

Error: There was a problem with the App Store. error for EACH purchase request for specific user.

  1. Environment
    1. Platform: iOS
    2. SDK version: 9.6.3, 9.12.0
    3. OS version: iOS 26.3
    4. Xcode/Android Studio version: Xcode 26.2
    5. React Native version: 0.82
    6. SDK installation (CocoaPods + version or manual): Pods 1.15.2 via Bundle
    7. How widespread is the issue. Percentage of devices affected.
  2. Debug logs that reproduce the issue
 DEBUG  [RevenueCat] 😻 Store products request received response
 DEBUG  [RevenueCat] ℹ️ Store products request finished
 DEBUG  [RevenueCat] ℹ️ Vending CustomerInfo from cache.
 DEBUG  [RevenueCat] ℹ️ CustomerInfo cache is stale, updating from network in foreground.
 DEBUG  [RevenueCat] ℹ️ Network operation 'GetCustomerInfoOperation' found with the same cache key 'GetCustomerInfo…'. Skipping request.
 DEBUG  [RevenueCat] ℹ️ API request completed: GET '/v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/offerings' (304)
 DEBUG  [RevenueCat] ℹ️ Skipping products request for these products because they were already cached: ["com.myapp.yearly", "com.myapp.monthly"]
 DEBUG  [RevenueCat] 😻 Offerings updated from network.
 DEBUG  [RevenueCat] ℹ️ GetOfferingsOperation: Finished
 DEBUG  [RevenueCat] ℹ️ Serial request done: GET /v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/offerings, 0 requests left in the queue
 DEBUG  [RevenueCat] ℹ️ HealthReportAvailabilityOperation: Started
 DEBUG  [RevenueCat] ℹ️ There are no requests currently running, starting request GET /v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report_availability
 DEBUG  [RevenueCat] ℹ️ API request started: GET '/v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report_availability'
 DEBUG  [RevenueCat] ℹ️ API request completed: GET '/v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report_availability' (200)
 DEBUG  [RevenueCat] ℹ️ HealthReportAvailabilityOperation: Finished
 DEBUG  [RevenueCat] ℹ️ Serial request done: GET /v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report_availability, 0 requests left in the queue
 DEBUG  [RevenueCat] ℹ️ GetCustomerInfoOperation: Started
 DEBUG  [RevenueCat] ℹ️ There are no requests currently running, starting request GET /v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5
 DEBUG  [RevenueCat] ℹ️ API request started: GET '/v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5'
 DEBUG  [RevenueCat] ℹ️ API request completed: GET '/v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5' (304)
 DEBUG  [RevenueCat] 😻 CustomerInfo updated from network.
 DEBUG  [RevenueCat] 😻 CustomerInfo updated from network.
 DEBUG  [RevenueCat] ℹ️ GetCustomerInfoOperation: Finished
 DEBUG  [RevenueCat] ℹ️ HealthReportOperation: Started
 DEBUG  [RevenueCat] ℹ️ Serial request done: GET /v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5, 0 requests left in the queue
 DEBUG  [RevenueCat] ℹ️ There are no requests currently running, starting request GET /v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report
 DEBUG  [RevenueCat] ℹ️ API request started: GET '/v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report'
 DEBUG  [RevenueCat] ℹ️ Finished syncing all cached transaction metadata
 DEBUG  [RevenueCat] ℹ️ API request completed: GET '/v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report' (304)
 DEBUG  [RevenueCat] ℹ️ HealthReportOperation: Finished
 DEBUG  [RevenueCat] ℹ️ Serial request done: GET /v1/subscribers/$RCAnonymousID%3Ad0dafd5e9fa145d08d7579f2bca787c5/health_report, 0 requests left in the queue
 WARN  [RevenueCat] ⚠️ RevenueCat SDK is configured correctly, but contains some issues you might want to address

Warnings:
  • Your products are configured in RevenueCat but aren't approved in App Store Connect yet. This prevents users from making purchases in production. Please ensure all products are approved and available for sale in App Store Connect.
  • The offerings 'default' have configuration issues that may prevent users from seeing product options or making purchases.

Product Issues:
  ⚠️ com.myapp.monthly (Monthly Plan): This product's status (READY_TO_SUBMIT) requires you to take action in App Store Connect before using it in production purchases.
  ⚠️ com.myapp.yearly (Yearly Plan): This product's status (READY_TO_SUBMIT) requires you to take action in App Store Connect before using it in production purchases.

Offering Issues:
  ⚠️ default
    ⚠️ $rc_monthly (com.myapp.monthly): This product's status (READY_TO_SUBMIT) requires you to take action in App Store Connect before using it in production purchases.
    ⚠️ $rc_annual (com.myapp.yearly): This product's status (READY_TO_SUBMIT) requires you to take action in App Store Connect before using it in production purchases.
 DEBUG  [RevenueCat] ℹ️ Skipping products request for these products because they were already cached: ["com.myapp.yearly"]
 INFO  [RevenueCat] 💰 Purchasing Product 'com.myapp.yearly'
 ERROR  [RevenueCat] 🍎‼️ There was a problem with the App Store.
 ERROR  [RevenueCat] 💰 Product purchase for 'com.myapp.yearly' failed with error: PurchasesError(error: There was a problem with the App Store., userInfo: ["NSLocalizedDescription": "There was a problem with the App Store.", "source_file": "RevenueCat/StoreKitError+Extensions.swift:47", "NSUnderlyingError": StoreKit.StoreKitError.unknown, "source_function": "asPurchasesError", "readable_error_code": "STORE_PROBLEM"])
 ERROR  [Error: Uncaught (in promise, id: 0): "Error: There was a problem with the App Store."]
 DEBUG  [RevenueCat] ℹ️ Skipping products request for these products because they were already cached: ["com.myapp.monthly"]
 INFO  [RevenueCat] 💰 Purchasing Product 'com.myapp.monthly'
 ERROR  [RevenueCat] 🍎‼️ There was a problem with the App Store.
 ERROR  [RevenueCat] 💰 Product purchase for 'com.myapp.monthly' failed with error: PurchasesError(error: There was a problem with the App Store., userInfo: ["source_file": "RevenueCat/StoreKitError+Extensions.swift:47", "source_function": "asPurchasesError", "NSUnderlyingError": StoreKit.StoreKitError.unknown, "NSLocalizedDescription": "There was a problem with the App Store.", "readable_error_code": "STORE_PROBLEM"])
 ERROR  [Error: Uncaught (in promise, id: 1): "Error: There was a problem with the App Store."]
  1. Steps to reproduce, with a description of expected vs. actual behavior
await RNPurchases.purchaseStoreProduct(product);
  1. Other information (e.g. stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, etc.)

Additional context
Add any other context about the problem here.

Works for one user but not for other. Tried to change sandbox user, tried to update sdk to latest, reset, reboot, reinstall - nothing helps.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the RNPurchases.purchaseStoreProduct(product) entry point and inspect the StoreKitError+Extensions.swift:47 mapping cited in the logs. Compare the reported READY_TO_SUBMIT product status and StoreKit.StoreKitError.unknown with the purchase flow; done means establishing whether the SDK has a reproducible bug or the App Store Connect configuration explains the failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, react-native, typescript
Domain
mobile, payments
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.