/stripe-guides

How to resolve “account under review” in Stripe?

Learn how to resolve a Stripe "account under review" by understanding the reasons, completing verification, addressing concerns, and communicating effectively with Stripe support.

Matt Graham, CEO of Rapid Developers

Book a call with an Expert

Starting a new venture? Need to upgrade your web app? RapidDev builds application with your growth in mind.

Book a free consultation

How to resolve “account under review” in Stripe?

How to Resolve "Account Under Review" in Stripe

 

When your Stripe account is placed under review, it can disrupt your business operations and payment processing capabilities. This comprehensive guide will walk you through the necessary steps to effectively address and resolve this situation.

 

Step 1: Understand Why Your Account Is Under Review

 

Before taking any action, it's important to understand why Stripe might place an account under review:

  • Suspicious transaction patterns
  • High chargeback rates
  • Selling prohibited products or services
  • Incomplete account verification
  • Rapid increase in transaction volume
  • Compliance with financial regulations

 

Step 2: Check Your Email and Stripe Dashboard

 

Stripe typically notifies you about account reviews through multiple channels:

  • Check your email (including spam/junk folders) for communications from Stripe
  • Log in to your Stripe Dashboard
  • Look for notifications or alerts in the dashboard header
  • Check the "Overview" section for any warnings or status indicators

 

Step 3: Review the Specific Requirements from Stripe

 

Stripe usually provides specific information about what they need from you:

  • Navigate to the "Account" section in your Stripe Dashboard
  • Look for any incomplete verification steps or requirements
  • Check for specific documentation requests
  • Review any compliance-related issues highlighted by Stripe

 

Step 4: Complete Verification Requirements

 

If your account is under review due to incomplete verification:

  • Go to Dashboard > Settings > Business Settings
  • Ensure all business information is accurate and complete
  • Provide any requested identity verification documents
  • Verify your business address with supporting documentation
  • Complete any outstanding financial information requirements

You may need to upload documents through the Stripe Dashboard. Here's how to access the upload functionality:


// This is a JavaScript example for a custom implementation
// Note: Most users should use Stripe's built-in dashboard for uploads

const stripe = require('stripe')('sk_test_YOUR_SECRET_KEY');

// Example of programmatically uploading a file to Stripe
const file = await stripe.files.create({
  purpose: 'identity\_document',
  file: {
    data: fs.readFileSync('/path/to/your/document.jpg'),
    name: 'document.jpg',
    type: 'application/octet-stream',
  },
});

// Then link the file to the account
const accountUpdate = await stripe.accounts.update(
  'acct\_123456789',
  {
    individual: {
      verification: {
        document: {
          front: file.id,
        },
      },
    },
  }
);

 

Step 5: Address Business Model Concerns

 

If Stripe has concerns about your business model:

  • Review Stripe's Restricted Businesses policy
  • Prepare a detailed explanation of your business model
  • Gather evidence of compliance with industry regulations
  • Document your products/services with clear descriptions
  • Prepare examples of your customer agreements/terms of service

 

Step 6: Improve Chargeback Management

 

If high chargebacks triggered the review:

  • Implement Stripe Radar for fraud prevention
  • Set up appropriate risk rules
  • Improve product descriptions and policies
  • Enhance customer service response times
  • Document your chargeback management strategy

Here's a code snippet for implementing basic Stripe Radar rules:


// Server-side implementation of custom Radar rules
const stripe = require('stripe')('sk_test_YOUR_SECRET_KEY');

// Create a rule to block high-risk transactions
const rule = await stripe.radar.rules.create({
  action: 'block',
  predicate: 'evaluation(risk\_score >= 80)',
  block\_message: 'This payment has been identified as high-risk.'
});

// Example of creating a payment session with enhanced fraud detection
const paymentIntent = await stripe.paymentIntents.create({
  amount: 2000,
  currency: 'usd',
  payment_method_types: ['card'],
  // Enable additional fraud detection
  setup_future_usage: 'off\_session',
  metadata: {
    order\_id: '6735',
    customer\_name: 'John Doe'
  }
});

 

Step 7: Contact Stripe Support Directly

 

If you've addressed all apparent issues or need clarification:

  • Log in to your Stripe Dashboard
  • Click on the "Support" link (usually in the bottom left)
  • Create a new support request specifically about your account review
  • Include your account ID and any reference numbers from previous communications
  • Be concise but thorough in explaining the steps you've taken

 

Step 8: Prepare a Detailed Response

 

When communicating with Stripe:

  • Address each concern point by point
  • Provide all requested documentation in the specified format
  • Explain any changes you've made to address concerns
  • Include evidence of compliance with Stripe's policies
  • Be professional and factual in all communications

 

Step 9: Implement Suggested Changes

 

Stripe may recommend specific changes to your business practices:

  • Update your Terms of Service and refund policies
  • Improve transaction descriptors for clarity
  • Enhance customer verification processes
  • Modify your checkout flow for better transparency
  • Implement stronger authentication measures

Here's an example of implementing 3D Secure authentication:


// Client-side implementation of 3D Secure
const stripe = require('stripe')('pk_test_YOUR_PUBLISHABLE_KEY');
const elements = stripe.elements();

// Set up card element
const card = elements.create('card');
card.mount('#card-element');

// Handle form submission
document.getElementById('payment-form').addEventListener('submit', async (event) => {
  event.preventDefault();
  
  const {paymentMethod, error} = await stripe.createPaymentMethod({
    type: 'card',
    card: card,
  });
  
  if (error) {
    // Handle error
    console.error(error);
  } else {
    // Send paymentMethod.id to your server
    const response = await fetch('/create-payment-intent', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      body: JSON.stringify({
        payment_method_id: paymentMethod.id,
        amount: 1000, // Amount in cents
      }),
    });
    
    const result = await response.json();
    
    // Handle 3D Secure authentication if required
    if (result.requires\_action) {
      const { error, paymentIntent } = await stripe.confirmCardPayment(
        result.client\_secret
      );
      
      if (error) {
        // Payment failed
        console.error(error);
      } else if (paymentIntent.status === 'succeeded') {
        // Payment succeeded
        console.log('Payment successful!');
      }
    }
  }
});

 

Step 10: Follow Up Regularly

 

The review process may take time:

  • Set a calendar reminder to follow up every 3-5 business days
  • Keep all communications in the same support thread
  • Be patient but persistent in seeking updates
  • Provide any additional information promptly
  • Document all communications for future reference

 

Step 11: Consider Alternative Payment Processors

 

While working to resolve the Stripe review:

  • Research alternative payment processors that fit your business model
  • Set up backup payment methods for business continuity
  • Consider services like PayPal, Square, or Braintree
  • Evaluate the pros and cons of each alternative
  • Prepare for implementation if the Stripe review is prolonged

 

Step 12: Prevent Future Reviews

 

Once your account is restored:

  • Regularly monitor your account health in the Stripe Dashboard
  • Keep your business information up-to-date
  • Implement proactive fraud prevention measures
  • Maintain clear communication with customers to reduce disputes
  • Stay informed about Stripe's policies and terms of service updates

 

Conclusion

 

Resolving a "Account Under Review" status in Stripe requires patience, thorough documentation, and clear communication. By following these steps and addressing Stripe's concerns systematically, you can work toward restoring your account to good standing and resuming normal payment processing operations.

Want to explore opportunities to work with us?

Connect with our team to unlock the full potential of no-code solutions with a no-commitment consultation!

Book a Free Consultation

Client trust and success are our top priorities

When it comes to serving you, we sweat the little things. That’s why our work makes a big impact.

Rapid Dev was an exceptional project management organization and the best development collaborators I've had the pleasure of working with. They do complex work on extremely fast timelines and effectively manage the testing and pre-launch process to deliver the best possible product. I'm extremely impressed with their execution ability.

CPO, Praction - Arkady Sokolov

May 2, 2023

Working with Matt was comparable to having another co-founder on the team, but without the commitment or cost. He has a strategic mindset and willing to change the scope of the project in real time based on the needs of the client. A true strategic thought partner!

Co-Founder, Arc - Donald Muir

Dec 27, 2022

Rapid Dev are 10/10, excellent communicators - the best I've ever encountered in the tech dev space. They always go the extra mile, they genuinely care, they respond quickly, they're flexible, adaptable and their enthusiasm is amazing.

Co-CEO, Grantify - Mat Westergreen-Thorne

Oct 15, 2022

Rapid Dev is an excellent developer for no-code and low-code solutions.
We’ve had great success since launching the platform in November 2023. In a few months, we’ve gained over 1,000 new active users. We’ve also secured several dozen bookings on the platform and seen about 70% new user month-over-month growth since the launch.

Co-Founder, Church Real Estate Marketplace - Emmanuel Brown

May 1, 2024 

Matt’s dedication to executing our vision and his commitment to the project deadline were impressive. 
This was such a specific project, and Matt really delivered. We worked with a really fast turnaround, and he always delivered. The site was a perfect prop for us!

Production Manager, Media Production Company - Samantha Fekete

Sep 23, 2022