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

How to verify your Stripe account

Verify your Stripe account by completing the KYC (Know Your Customer) requirements in the Dashboard. Go to Settings → Account details and follow the prompts to provide your legal name, date of birth, address, government-issued ID, and business details. Stripe needs this information to comply with financial regulations before you can receive payouts.

What you'll learn

  • What information Stripe requires for account verification
  • How to upload identity documents in the Dashboard
  • How to complete business verification
  • How to check your verification progress
Book a free consultation
4.9Clutch rating
600+Happy partners
17+Countries served
190+Team members
Beginner5 min read15 minutesAll Stripe accounts, all countriesMarch 2026RapidDev Engineering Team
TL;DR

Verify your Stripe account by completing the KYC (Know Your Customer) requirements in the Dashboard. Go to Settings → Account details and follow the prompts to provide your legal name, date of birth, address, government-issued ID, and business details. Stripe needs this information to comply with financial regulations before you can receive payouts.

Completing Stripe Account Verification (KYC)

Stripe is required by financial regulations to verify the identity of account holders. This Know Your Customer (KYC) process involves providing personal information, business details, and sometimes identity documents. Until verification is complete, your account may have limited functionality — such as restricted payouts or charge limits. This guide walks you through every step.

Prerequisites

  • A Stripe account
  • A government-issued photo ID (passport, driver's license, or national ID)
  • Your business registration documents (if applicable)
  • Your bank account details for payouts

Step-by-step guide

1

Check what verification is needed

Log in to the Stripe Dashboard. If verification is required, you will see a banner at the top or a notification in Settings → Account details. The requirements section lists exactly what information Stripe needs.

Expected result: You see a list of required items such as personal information, business details, or document uploads.

2

Provide personal information

Navigate to Settings → Account details → Personal details. Enter your legal first name, last name, date of birth, and home address. This information must match your government-issued ID exactly.

Expected result: Your personal details are saved and Stripe begins verifying them.

3

Upload identity documents

If Stripe requests identity verification, go to Settings → Account details and click the document upload prompt. Upload a clear photo of the front (and back if applicable) of your government-issued ID. Accepted documents include passports, driver's licenses, and national ID cards.

Expected result: Your document is uploaded. Stripe typically reviews it within 1-2 business days.

4

Provide business information

For business accounts, go to Settings → Account details → Business details. Enter your business legal name, tax ID or EIN, business address, and industry. If you are a sole proprietor, you may use your personal details.

Expected result: Your business details are saved. Stripe may request additional documents like articles of incorporation for certain business types.

5

Add a bank account for payouts

Go to Settings → Payouts → Bank accounts and add your bank account. Stripe needs this to send you your funds. In some countries, Stripe may verify the bank account with a small test deposit.

Expected result: Your bank account is added and verified. Payouts are enabled once all other requirements are also met.

6

Monitor verification progress

After submitting all required information, check Settings → Account details for verification status. You can also check programmatically using the Accounts API. Stripe sends email notifications when verification is complete or if additional information is needed.

typescript
1const Stripe = require('stripe');
2const stripe = Stripe(process.env.STRIPE_SECRET_KEY);
3
4async function checkVerification() {
5 const account = await stripe.accounts.retrieve();
6 console.log('Charges enabled:', account.charges_enabled);
7 console.log('Payouts enabled:', account.payouts_enabled);
8 console.log('Currently due:', account.requirements.currently_due);
9 console.log('Pending verification:', account.requirements.pending_verification);
10}
11
12checkVerification();

Expected result: All requirements are met, charges_enabled and payouts_enabled are both true.

Complete working example

check-verification.js
1// check-verification.js
2// Monitor Stripe account verification status
3
4const Stripe = require('stripe');
5const stripe = Stripe(process.env.STRIPE_SECRET_KEY);
6
7async function checkVerification() {
8 try {
9 const account = await stripe.accounts.retrieve();
10
11 console.log('=== Verification Status ===');
12 console.log('');
13 console.log('Account:', account.id);
14 console.log('Charges enabled:', account.charges_enabled);
15 console.log('Payouts enabled:', account.payouts_enabled);
16 console.log('');
17
18 const reqs = account.requirements;
19
20 if (reqs.pending_verification.length > 0) {
21 console.log('Pending verification (Stripe is reviewing):');
22 reqs.pending_verification.forEach(r => console.log(' -', r));
23 }
24
25 if (reqs.currently_due.length > 0) {
26 console.log('Action required:');
27 reqs.currently_due.forEach(r => console.log(' -', r));
28 if (reqs.current_deadline) {
29 const deadline = new Date(reqs.current_deadline * 1000);
30 console.log(' Deadline:', deadline.toLocaleDateString());
31 }
32 }
33
34 if (reqs.errors && reqs.errors.length > 0) {
35 console.log('Verification errors:');
36 reqs.errors.forEach(e => {
37 console.log(` - ${e.requirement}: ${e.reason}`);
38 });
39 }
40
41 if (
42 reqs.currently_due.length === 0 &&
43 reqs.pending_verification.length === 0 &&
44 account.charges_enabled &&
45 account.payouts_enabled
46 ) {
47 console.log('Account is fully verified and active.');
48 }
49
50 return account;
51 } catch (err) {
52 console.error('Error:', err.message);
53 }
54}
55
56checkVerification();

Common mistakes when verifying your Stripe account

Why it's a problem: Uploading a blurry or cropped photo of the ID

How to avoid: Ensure the entire document is visible, well-lit, and in focus. All four corners must be visible in the photo.

Why it's a problem: Using a nickname or abbreviated name instead of the legal name on the ID

How to avoid: Enter your name exactly as it appears on your government-issued ID — including middle names if present.

Why it's a problem: Waiting too long to complete verification

How to avoid: Complete requirements before their deadline. Stripe may restrict charges or payouts if deadlines are missed.

Why it's a problem: Providing business information for a personal account or vice versa

How to avoid: Select the correct account type (individual or company) in Settings. If you chose the wrong type, see the guide on switching account types.

Best practices

  • Complete verification as soon as you create your account to avoid delays when you start processing payments
  • Keep your government-issued ID handy — Stripe may request re-verification periodically
  • Monitor the account.updated webhook for real-time verification status changes
  • If verification fails, read the error reason carefully and resubmit with corrected information
  • For business accounts, prepare your tax ID, registration number, and proof of address in advance
  • If you encounter complex verification issues with multiple accounts or entity structures, RapidDev can help navigate the process

Still stuck?

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

ChatGPT Prompt

Walk me through the Stripe account verification (KYC) process step by step. What personal and business information does Stripe need? What documents are accepted? How long does verification take? Also show me a Node.js script to check my verification status via the API.

Stripe Prompt

Write a Node.js script that checks my Stripe account verification status, lists any pending requirements, shows verification errors, and indicates whether my account is fully active for charges and payouts.

Frequently asked questions

How long does Stripe verification take?

Most verifications complete within minutes to a few hours. Document reviews may take 1-2 business days. In rare cases, additional review can take up to a week.

What documents does Stripe accept for identity verification?

Stripe accepts passports, driver's licenses, and government-issued national ID cards. The document must be valid (not expired) and clearly readable.

Can I accept payments before verification is complete?

In many countries, Stripe allows you to accept a limited amount of payments before full verification. However, payouts are typically held until verification is complete.

What happens if my verification fails?

Stripe will tell you the specific reason for failure in the Dashboard or via the API requirements.errors field. Common reasons include blurry documents, name mismatches, or expired IDs. Fix the issue and resubmit.

Do I need to verify again if I change my business information?

Significant changes like a new legal name, business type, or ownership structure may trigger re-verification. Minor updates like address changes usually do not.

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.