Skip to main content
RapidDev - Software Development Agency
stripe-guide

How to add a new user to a Stripe account

Add a new team member to your Stripe account by going to Settings → Team in the Dashboard. Click 'Invite member', enter their email address, select a role (Administrator, Developer, Analyst, or custom), and send the invitation. The new user receives an email with a link to accept and set up their access.

What you'll learn

  • How to invite a new team member in the Stripe Dashboard
  • The different user roles and their permissions
  • How to manage and revoke access for team members
  • How to set up custom roles for specific needs
Book a free consultation
4.9Clutch rating
600+Happy partners
17+Countries served
190+Team members
Beginner5 min read5 minutesAll Stripe accounts (some roles require paid plans)March 2026RapidDev Engineering Team
TL;DR

Add a new team member to your Stripe account by going to Settings → Team in the Dashboard. Click 'Invite member', enter their email address, select a role (Administrator, Developer, Analyst, or custom), and send the invitation. The new user receives an email with a link to accept and set up their access.

Adding Team Members to Your Stripe Account

Stripe lets you invite team members with different permission levels so your developers, finance team, and support staff can access the parts of the Dashboard they need. You can assign built-in roles like Administrator, Developer, or Analyst, or create custom roles with specific permissions. This guide covers the invitation process and role management.

Prerequisites

  • Administrator access to the Stripe account
  • The email address of the person you want to invite

Step-by-step guide

1

Navigate to Team settings

Log in to the Stripe Dashboard as an Administrator. Go to Settings → Team (in the left sidebar under Your team). You will see a list of current team members and their roles.

Expected result: The Team settings page shows all current team members and an option to invite new ones.

2

Click Invite member

Click the '+ Invite member' button. Enter the email address of the person you want to invite. You can invite multiple people at once by adding multiple email addresses.

Expected result: An email field appears where you can enter the new team member's email address.

3

Select a role

Choose a role for the new team member. The built-in roles are: Administrator (full access), Developer (API keys, webhooks, logs), Analyst (read-only financial data), and Support Specialist (view payments, issue refunds). Select the role that matches their responsibilities.

Expected result: A role is selected for the new team member.

4

Send the invitation

Click 'Send invite'. The team member receives an email with a link to accept the invitation. They will need to create a Stripe account (or use an existing one) to access your Dashboard.

Expected result: An invitation email is sent. The new member appears in the Team list with a 'Pending' status.

5

Manage or revoke access

To change a team member's role or remove them, go to Settings → Team, find the member, and click the three-dot menu next to their name. You can change their role or remove access entirely.

Expected result: The team member's role is updated or their access is revoked.

Complete working example

list-team-roles.js
1// list-team-roles.js
2// Note: Team member management is primarily done through the Dashboard.
3// The API does not expose team member management directly.
4// This script demonstrates checking API key permissions.
5
6const Stripe = require('stripe');
7const stripe = Stripe(process.env.STRIPE_SECRET_KEY);
8
9async function checkApiAccess() {
10 try {
11 console.log('=== API Access Check ===');
12 console.log('');
13
14 // Verify the current key works
15 const account = await stripe.accounts.retrieve();
16 console.log('Account:', account.id);
17 console.log('Business:', account.business_profile?.name || 'Not set');
18 console.log('');
19
20 // List API keys (restricted keys)
21 // Note: Only the Dashboard shows all team members.
22 // Via API, you can list restricted keys that correspond to roles.
23 console.log('Restricted API keys:');
24 const keys = await stripe.apiKeys?.list?.() || { data: [] };
25
26 // Test basic permissions
27 const tests = [
28 { name: 'Read payments', fn: () => stripe.paymentIntents.list({ limit: 1 }) },
29 { name: 'Read customers', fn: () => stripe.customers.list({ limit: 1 }) },
30 { name: 'Read balance', fn: () => stripe.balance.retrieve() }
31 ];
32
33 console.log('Permission checks:');
34 for (const test of tests) {
35 try {
36 await test.fn();
37 console.log(` ${test.name}: Allowed`);
38 } catch (err) {
39 console.log(` ${test.name}: Denied (${err.code})`);
40 }
41 }
42 } catch (err) {
43 console.error('Access check failed:', err.message);
44 }
45}
46
47checkApiAccess();

Common mistakes when adding a new user to a Stripe account

Why it's a problem: Giving every team member Administrator access

How to avoid: Use the principle of least privilege. Developers need Developer access, finance needs Analyst access, and support needs Support Specialist access.

Why it's a problem: Not removing access when a team member leaves the organization

How to avoid: Immediately revoke access in Settings → Team when someone leaves. Also rotate any API keys they had access to.

Why it's a problem: Sharing your personal Stripe login instead of inviting team members

How to avoid: Each person should have their own account. Shared logins make it impossible to track who did what and create security risks.

Why it's a problem: Forgetting that invited users also get test mode access

How to avoid: Team roles apply to both test and live modes. Be aware that a Developer role in test mode can also access test API keys.

Best practices

  • Use built-in roles when possible — they are maintained by Stripe with appropriate permission sets
  • Regularly audit your team members list and remove anyone who no longer needs access
  • Enable two-factor authentication (2FA) for all team members, especially Administrators
  • Create restricted API keys for automated systems instead of sharing your full secret key
  • Document which role each team member has and review quarterly
  • For organizations with complex access requirements, create custom roles with only the specific permissions needed

Still stuck?

Copy one of these prompts to get a personalized, step-by-step explanation.

ChatGPT Prompt

How do I add a new user to my Stripe account? Explain the different roles (Administrator, Developer, Analyst, Support Specialist), how to send an invitation from the Dashboard, and how to manage or revoke access later.

Stripe Prompt

Explain the Stripe team roles and their permissions. Show how to invite a member via the Dashboard and write a Node.js script that tests what API permissions the current key has access to.

Frequently asked questions

How many team members can I add to a Stripe account?

There is no hard limit on the number of team members. You can add as many users as needed.

What is the difference between Administrator and Developer roles?

Administrators have full access to everything including billing, team management, and account settings. Developers can access API keys, webhooks, and logs but cannot manage billing or team members.

Can I create custom roles?

Yes. Go to Settings → Team → Roles and create a custom role with specific permissions. This lets you tailor access to your organization's needs.

Do team members need their own Stripe account?

Team members need a Stripe login (email and password), but they do not need their own Stripe business account. They log in and then access your business account with their assigned role.

Can team members see live API keys?

Only members with the Administrator or Developer role can view API keys. The secret key is partially masked and must be explicitly revealed. Consider using restricted keys for specific use cases.

RapidDev

Talk to an Expert

Our team has built 600+ apps. Get personalized help with your project.

Book a free consultation

Need help with your project?

Our experts have built 600+ apps and can accelerate your development. Book a free consultation — no strings attached.

Book a free consultation

We put the rapid in RapidDev

Need a dedicated strategic tech and growth partner? Discover what RapidDev can do for your business! Book a call with our team to schedule a free, no-obligation consultation. We'll discuss your project and provide a custom quote at no cost.