Skip to main content
This guide shows you how to register your own Stripe App to obtain your OAuth credentials (client id & secret). These are required to let your users grant your app access to their Stripe account. Stripe App Sandbox is a test environment that simulates real installs and OAuth flows without affecting live data, so use it for development and testing before you publish your app. You’ll need an activated Stripe account (business info submitted, no charges required) to get started.
1

Create a Stripe account

If you don’t already have one, sign up for a Stripe account.
2

Install Stripe CLI

  1. If you haven’t already, install the Stripe CLI.
  2. Log in using your Stripe account:
3

Install the Stripe Apps CLI plugin

  1. Run the following command to install the Stripe Apps plugin:
  2. Verify the plugin version is 1.5.12 or newer:
4

Create your Stripe App

  1. Create a new app project using the CLI:
  2. This creates a local project folder with a manifest and app code.
5

Edit the app manifest

Open the stripe-app.json file and update these fields:
  • stripe_api_access_type: Set to oauth
  • distribution_type: Set to public
  • allowed_redirect_uris: Add your redirect URI as https://api.nango.dev/oauth/callback
  • sandbox_install_compatible: Set to true Example:
6

Add required permissions and UI (optional)

  1. Add permissions your app requires to access Stripe resources in the manifest (e.g., read_only, customers:read, etc.).
  1. Optionally add a settings view or other UI extensions if your app has a user-facing configuration.
7

Upload your app to Stripe (requires live account)

  1. Ensure you’re logged into a fully activated (non-sandbox) Stripe account.
  2. Upload your app to Stripe:
Sandbox accounts cannot upload apps. You must activate your account first.
8

Obtain your Client ID and Client Secret

  1. Go to your app’s details page in the Stripe Dashboard.
  2. Open the External test tab.
  3. Click Get started if you haven’t already configured the external test OAuth setup.
  4. After setup, Stripe will generate OAuth installation links in the Test OAuth section. Your Client ID will be included in the Sandbox link as a query parameter (e.g., client_id=…).
  5. To obtain your Client Secret, go to the API Keys page in the Stripe Dashboard and copy your Secret key (starts with sk_test_…).
⚠️ Make sure that your client_id and secret key come from the same Stripe sandbox account and environment. Mixing keys from different environments or accounts will result in authorization errors like “Authorization code provided does not belong to you.” Save these credentials securely as you’ll need them when configuring your integration in Nango.
9

Find your App Domain

Your App Domain comes from the same Test OAuth section you used to find your Client ID — see Finding your App Domain for the lookup steps.This value is the same for every connection made through this integration, so set it once on the integration itself rather than per connection: enter it in the App Domain field when creating the stripe-app-sandbox integration in Nango, or later from the integration’s settings page. If you skip it here, Connect falls back to asking each end user for it instead.
10

Next

Follow the Quickstart.
Need help getting started? Get help in the community.
For more on building Stripe Apps, see Stripe’s Apps documentation.