# Create an app in the InfluTo dashboard

> Add your app to InfluTo — organization, store lookup or manual entry, the slug in referral links, the API key, purchase validation and the first settings.

An app is the container InfluTo attributes installs and purchases to. One app covers your iOS and Android versions together and owns the API key your SDK uses, the slug in every referral link, the purchase-validation choice and the settings creators see. Create it once, before you install the SDK.

Your app doesn't need to be live in a store yet — you can add it by bundle ID or package name and connect the store listing after launch.

## Add the app

<!-- steps -->

### Create your organization (first time only)

The first time you add an app, the dashboard asks you to **Create Your Organization**. Enter an **Organization Name** (your company, brand or your own name) and click **Create Organization & Continue**. The organization owns your apps, your [wallet](https://docs.influ.to/platform/wallet.md) and your billing details.

### Open My Apps → Add App

In the sidebar, click **My Apps**, then **Add App**. You can also use **+ Create New App** in the app switcher at the top of the sidebar.

### Find the app in each store

The **Add New App** page has two sections, **iOS App Store** and **Google Play Store**. Both are optional, but you need at least one.

- In each section, paste the app name, the store URL, or the bundle ID / package name, then click **Find iOS App** or **Find Android App** and pick the right result.
- Not released yet? Click **App not released yet? Add it manually** and enter the bundle ID (plus the numeric App Store ID, if you have one) or the package name, then **Use these details**. Store details such as the icon and screenshots fill in after launch.

### Review the combined details

Under **Combined App Details**, check the organization, the app name, the **Short Description** (creators read it on your join pages) and the icon. When an app is on both stores, choose which store's name, description and icon to use, or type your own.

You can leave **Shared Secret (In-App Purchase)** empty. Neither validation path uses it.

### Choose the slug and create

Pick the **App Slug (for referral links)** (rules below), then click **Create App**. The dialog that follows shows your API key and your RevenueCat webhook URL.

<!-- /steps -->

If you already have an app with the same bundle ID or package name, the dashboard asks whether you meant to add a platform to it. Choose **Add platform to …** unless you really want two separate programs — a package name can belong to only one app on InfluTo.

## The app slug

The slug is the first part of every referral link your creators share:

```text
https://influ.to/{app_slug}/{CODE}     e.g. https://influ.to/fitnow/MAYA
```

- 3–20 characters: lowercase letters, numbers and dashes.
- Unique across all of InfluTo. The dashboard checks availability as you type and suggests one from your app name.
- Some words are reserved because they are already routes or language codes, for example `join`, `api`, `dashboard` or `en`.
- It can't be changed later. **Settings → General** shows it read-only, with **Copy URL Pattern**.

## The API key

Every app has one API key. It starts with `it_` and works for both sandbox and production — InfluTo tells test purchases apart from real ones by the store environment, not by the key.

- The SDK sends it on every request. Pass it to `initialize()` — see [Choose an SDK](https://docs.influ.to/sdk.md).
- The success dialog says the key won't be shown again, but you can copy it any time from **Setup & SDK → Your API Key**.
- There are no separate test and live keys.

## Add a platform later

Launching on the other store later? Don't create a second app — attribution, campaigns and creators belong to the app, so both platforms should share one.

Open **Settings → General**. Under **Platforms**, click **Add iOS** or **Add Android**, paste the store URL, bundle ID or package name and click **Look up** (or enter the identifier manually if the app isn't released yet), then **Add platform**.

## Choose how purchases are validated

InfluTo only credits commission for purchases it has verified with the store. Each platform of your app uses exactly one path:

- **RevenueCat** (the default) — RevenueCat sends purchase events to your app's webhook.
- **Store-direct** — InfluTo checks purchases with Apple and Google directly, using your App Store Server API key and a Google Play service account.

Set it in **Settings → Validation** under **How should InfluTo validate purchases?**: **RevenueCat (default)**, **Apple — direct**, **Google — direct** or **Both stores — direct**. Mixing is allowed — for example Apple-direct on iOS while Android stays on RevenueCat. A platform switches to store-direct only after its credentials pass validation (the green check).

Help choosing: [Validate purchases](https://docs.influ.to/integrations.md). Setup guides: [RevenueCat](https://docs.influ.to/integrations/revenuecat.md) · [Store-direct](https://docs.influ.to/integrations/store-direct.md).

## Settings worth setting now

| Setting | Where | What it does |
|---|---|---|
| **Support email for creators** | Settings → Advanced | Shown to creators in their campaign FAQ, and used as the reply-to address on invitation emails, so questions reach you. Empty sends them to InfluTo support. |
| **My app has the ReferralCodeInput UI component** | Settings → Advanced | Tells creators they can share a spoken code. Turn it on once your app has a code field — the ready-made component or your own. Required for creator access codes. See [Referral codes](https://docs.influ.to/guides/referral-codes.md). |
| **Auto-issue creator access codes** + **Unlock duration (days)** | Settings → Advanced | Gives every creator who joins a personal one-time `INFLU-` code that unlocks your app so they can make content. See [Creator access codes](https://docs.influ.to/platform/creator-access-codes.md). |
| **Web app URL** | Settings → General | For PWAs and web apps. Desktop visitors who open a referral link go here with `influto_code` and `influto_click` attached, and `@influto/web` claims the referral. Capacitor and Ionic apps use the store links instead. |
| **App icon, store URLs** | Settings → General | Used on join pages and in the program directory. |
| **Localization** | Settings → Localization | Your app's name, description and tagline in 11 languages for creators. Missing and outdated translations are generated with one button. |

Save the General and Advanced tabs with **Save Changes**. The Validation and Localization tabs save on their own.

### Attribution window

Link-click matching looks back 72 hours, the same for every app — there's nothing to set. Codes typed into your app and links that carry the code into the app aren't limited by it. More in [Attribution](https://docs.influ.to/advanced/attribution.md).

## With an AI agent

An agent connected over MCP can do all of this for you: `influto_provision` creates the organization, app, API key and a first campaign in one call; `influto_check_slug` checks a slug; `influto_update_app` changes the support email, web app URL, manual code entry and creator access codes; `influto_localize_app` translates the app's copy. Store credentials never pass through the agent — it hands you a dashboard link instead. See [Agent tools](https://docs.influ.to/agents/tools.md).

## Next

<!-- cards -->
- [Install the SDK](https://docs.influ.to/sdk.md) — Pick React Native, iOS, Android, Flutter or web, and initialize it with your API key.
- [Validate purchases](https://docs.influ.to/integrations.md) — Connect RevenueCat or the stores directly.
- [Create a campaign](https://docs.influ.to/platform/create-campaign.md) — Set the commission and open the program to creators.
<!-- /cards -->
