Question

[Expo React Native] Offerings Are Empty (How To Develop With Internal Distribution Build?)

  • 5 April 2023
  • 1 reply
  • 241 views

Badge +4

Hi all,

I am trying to integrate RevenueCat into my Managed Expo app to allow users to make a subscription purchase. 

I’ve followed all the guides on setting up my subscriptions in the Apple appstoreconnect as well as on RevenueCat’s dashboard.

Now I am trying to `Purchases.getOfferings()`, but it is returning 

ERROR: [Error: 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 being used). 

For context, my organization uses a separate internal distribution build for development.

In the app store, our bundleIdentifier follows standard naming convention: `com.myorg.myapp.ios`. For our internal distribution development build, our bundleIdentifier is `com.myorg.myappdev.ios`.

After reading this post, my hunch is that my development bundleIdentifier does not match the one in the app store as well as RevenueCat’s dashboard.

 

My question is: what’s the proper workflow to test development with RevenueCat using an expo internal distribution build?

Should I create another ‘project’ in RevenueCat? But since my internal distribution build isn’t in the actual app store, what would I put for the “App Store Connect App-Specific Shared Secret” and “P8 key file from App Store Connect”?

 

Thanks in advance.


1 reply

Userlevel 4
Badge +6

Hello @Christopher Chao !

 

We have a useful tutorial on getting setup with RevenueCat and Expo which can be found here: https://www-origin.revenuecat.com/blog/engineering/expo-in-app-purchase-tutorial/

 

If you scroll down to step 4, there are some useful instruction on building a dev environment in which it takes you through how to go through that process. 

This step differs from most other SDK configurations. Usually, at this point, we’d recommend running a development build from the IDE (Xcode or Android Studio) on your machine and testing in-app purchases on a simulator or emulator. This is not the case with Expo. The benefit of Expo’s managed workflow is that we don’t need to worry about the native parts! Instead, we’ll use the command line to start Android and iOS development builds on Expo’s server, wait for them to complete, and then install those apps on our test devices.
We’ll use the eas tool to start these builds. EAS stands for Expo Application Services—the cloud services that Expo hosts for building the native binaries.

Here’s how to run the builds for both Android and iOS:

iOS

Run the following command to get the iOS development build started on EAS:

eas build --profile development --platform ios

Just like with the Android build, this command will present you with a few prompts before the build starts. These prompts will ask for the bundle identifier, followed by a few questions that are needed for code signing. The code signing prompts will ask if you have an existing certificate and provisioning profile that you’d like to use for signing. If not, you can enter your Apple ID credentials, and EAS will create a provisioning profile for you, as well as register your devices to the provisioning profile.

Once you’ve entered this information, the build will start. When it’s finished, you’ll receive instructions for installing the build on your device.

 

I hope this helps! 

Reply