# Configure Revenuecat

This guide will walk you through how to get up and running with subscriptions and RevenueCat's SDK with only a few lines of code.

**1. Create a RevenueCat Account**

Sign up for a new RevenueCat account [here](https://app.revenuecat.com/).

**Organizations / Enterprise**

We recommend using a company account when registering for RevenueCat and setting up your app within a project. You'll be able to invite the rest of your team as [collaborators](https://www.revenuecat.com/docs/collaborators) to your project, but **only the project owner can manage billing**. Project collaborators can't manage billing details.

**2. Project and App Configuration**

**▶️ Create a Project**

Navigate to the RevenueCat dashboard and [add a new project ](https://app.revenuecat.com/overview)from the dropdown in the top navigation menu called *Projects*.

<figure><img src="https://cakras-organization-1.gitbook.io/~gitbook/image?url=https%3A%2F%2Ffiles.readme.io%2Fdb42095-Screen_Shot_2022-11-16_at_3.28.33_PM.png&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=1f5124723c1b563ab29756d13c255131be2f72376e4a06a9a1d72323a6e88941" alt=""><figcaption></figcaption></figure>

The popup modal for creating a new Project

**▶️ Add an App / Platform**

From **Project Settings > Apps** in the left menu of the project dashboard, select the platform for the app you will be adding.

<figure><img src="https://cakras-organization-1.gitbook.io/~gitbook/image?url=https%3A%2F%2Ffiles.readme.io%2Fe99ad62-Screen_Shot_2022-11-16_at_3.30.11_PM.png&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=b780dccb4ea7a436f7ad9fae6302284f39ba41f2dcc18ca8e5be3373bce00d7b" alt=""><figcaption></figcaption></figure>

Project dashboard for selecting the app platform

The field **App name** is required to add your app to RevenueCat. For iOS apps **In-App Purchase Key**(iOS) is also required. To make test and production purchases, the **Bundle ID** (iOS) / **Package Name** (Android) as well as the **Shared Secret**(iOS) / **Service Credentials** (Android) **must be configured**.

> **📘**
>
> If you try making purchases without a bundle ID and valid credentials, the SDK will fail with a '[receipt is not valid](https://www.revenuecat.com/docs/errors#---invalid_receipt)' error as RevenueCat will be unable to validate the transaction with the store.

The rest of the configuration fields can be added later.

![](https://cakras-organization-1.gitbook.io/~gitbook/image?url=https%3A%2F%2Fgithub.com%2FRevenueCat%2Frevenuecat-docs%2Fassets%2F5860245%2F7ddfb6e9-d730-4440-baba-d94bef820288\&width=768\&dpr=4\&quality=100\&sign=ea06848c2d442b35f136db9b7f68890b61fb5ae90472a76a93e5fb2ab3c6695f)App configuration page for an Apple App Store app

> **📘💡 Here's a tip!**
>
> After registering your app, we recommend setting up [Platform Server Notifications](https://www.revenuecat.com/docs/server-notifications). These notifications aren't required but will speed up [webhooks](https://www.revenuecat.com/docs/webhooks) and integration delivery times and reduce lag time updating your subscribers.

> **📘Staging vs. Production apps and users**
>
> RevenueCat itself does not have separate environments for staging and production. Rather, the underlying transactions for users are differentiated by sandbox and production.
>
> Any RevenueCat app can make both sandbox and production purchases from the stores. If you do have separate apps for staging and production, you can create multiple projects in RevenueCat to mirror your setup.
>
> Furthermore, users are not separated by environment, either. The same user can have active sandbox purchases and active production purchases at the same time.

**▶️ Service Credentials**

Service credentials need to be set up for RevenueCat to communicate with the app stores on your behalf. See our guides [App Store Connect Shared Secret](https://www.revenuecat.com/docs/itunesconnect-app-specific-shared-secret), [App Store In-App Purchase Key](https://www.revenuecat.com/docs/in-app-purchase-key-configuration), [Play Service Credentials](https://www.revenuecat.com/docs/creating-play-service-credentials), and [Amazon Appstore Shared Secret](https://www.revenuecat.com/docs/amazon-appstore) for more information.

Note that Play service credentials can take up to 36 hours to propagate throughout Google's servers.

**3. Product Configuration**

**▶️ Store Setup**

Before you can start using RevenueCat to fetch products, you must configure your products in the respective stores. See the following guides for [App Store Connect](https://www.revenuecat.com/docs/ios-products), [Google Play Console](https://www.revenuecat.com/docs/android-products), [Amazon Appstore](https://www.revenuecat.com/docs/amazon-product-setup), and [Stripe](https://www.revenuecat.com/docs/stripe-products) for help navigating through this process.

If you are selling iOS products, be sure to sign your 'Paid Applications Agreement' and fill out your bank and tax information in **App Store Connect > Agreements, Tax, and Banking**. **This needs to be completed before you can test any purchases**.

> **📘Want to skip the store setup while testing?**
>
> On iOS, you can delay configuring products in App Store Connect by testing with StoreKit Configuration files instead. These config files require minimal setup and are configurable via Xcode directly.
>
> Read more about setting up StoreKit Configuration files in our [Sandbox Testing](https://www.revenuecat.com/docs/apple-app-store#ios-14-only-testing-on-the-simulator) guide.

**▶️ Configure Products and Entitlements in RevenueCat**

Once your in-app products have been configured in [App Store Connect](https://www.revenuecat.com/docs/ios-products), [Google Play Console](https://www.revenuecat.com/docs/android-products), [Amazon Appstore](https://www.revenuecat.com/docs/amazon-product-setup), or [Stripe](https://www.revenuecat.com/docs/stripe-products), you'll need to copy that configuration into the RevenueCat dashboard. RevenueCat uses an Entitlements system to control access to premium features, and Offerings to manage the set of products you offer to customers.

Entitlements are the level of access that a customer is "entitled" to after purchasing a specific product, and Offerings is a simple way for you to organize the in-app products you wish to "offer" on your paywall and configure them remotely. We **recommend** utilizing these features to simplify your code and enable you to change products without releasing an app update.

[PreviousGoogle Play Product Setup](https://orban-tech-organization.gitbook.io/fast-vpn-doc/subscription/subscription-feature/google-play-product-setup)[<br>](https://orban-tech-organization.gitbook.io/fast-vpn-doc/subscription/subscription-feature/configuration-product)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://orban-tech.gitbook.io/v2ray-vpn/app-guide/in-app-purchase/configure-revenuecat.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
