# Setting up your Stripe API key

The twosided platform requires a Stripe Secret API key in order to fully operate. You can use the Stripe integration using the account connection only, however you will have to deal with missing data:

* No personal data of suppliers and customers (only placeholders & customer IDs)
* Multi-split payments can't be supported
* No insights into aggregate supplier and customer locations

As this makes the twosided integration less effective, we recommend supplying an API key, or alternatively looking into substituting this information through our [REST API](https://docs.twosided.io/api-reference).

### Setting up a restricted key

Stripe allows you to set up a restricted key in their [developer section](https://dashboard.stripe.com/apikeys).

<figure><img src="https://2988553862-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhlGts5vD0VSiAoUfdUZ7%2Fuploads%2FY9aKa0663XxTKX5racFe%2FCleanShot%202024-08-23%20at%2013.59.05%402x.png?alt=media&#x26;token=be72583f-b6eb-4a97-9f6f-2f66d878525c" alt=""><figcaption></figcaption></figure>

It can be a good option to give looser restrictions to this key, to avoid breaking any integration when the twosided platform updates. At a high-level, we require the following permissions:

* All core resources – Read
* All core resources (Connect permissions) – Read
* All Connect resources – Read

You can restrict the key further to only allow for required resources to be accessible. However, note that this can lead to issues with platform updates later on.

<details>

<summary>All required resources (Detailed, Latest)</summary>

* Balance transaction sources (Permissions & Connect Permissions) – Read
* Balance Transfers (Permissions & Connect Permissions) – Read
* Charges (Permissions & Connect Permissions) – Read
* Customers (Permissions & Connect Permissions) – Read
* PaymentIntents (Permissions & Connect Permissions) – Read
* Products (Permissions & Connect Permissions) – Read
* All Connect resources – Read

</details>
