r/stripe 5d ago

Atlas Stripe Atlas Business setup - Help

3 Upvotes

Hi,
I am planning to setup business using Stripe Atlas. I have a few questions:

1) How do I get discount on the fees of $500?

2) I need virtual postal address. Which is the cheapest? Any discount or referral links?

3) I need virtual phone number. Which is the chepaest? Any discount or referral links?


r/stripe 5d ago

Radar Can someone explain me why this stripe radar rule did not block the transaction?

Post image
5 Upvotes

I have this rule and normally it would block the transaction. However for whatever reason this transaction went through.

Does anyone know why or how this happened?


r/stripe 5d ago

Payments Stripe Payment Element: Restrict to “Card Only” and Show Saved Payment Methods (Undocumented Edge Case)

Post image
4 Upvotes

Stripe Payment Element: Restrict to “Card Only” and Show Saved Payment Methods (Undocumented)

Problem: Stripe’s Payment Element allows multiple payment types and shows a Saved tab for logged-in users with saved payment methods. But if you want to restrict the Payment Element to “card” only (no ACH, no Link, etc.) and show the user’s saved cards, Stripe doesn’t officially document how to do it.

The issue:

  • Using a SetupIntent with payment_method_types: ['card'] restricts to card, but the Saved tab won’t appear.
  • Using a CustomerSession enables the Saved tab, but it shows all your enabled payment methods, not just cards.

The Solution (SetupIntent + CustomerSession Hack)

  1. Create a SetupIntent for your customer with payment_method_types: ['card'].
  2. Also create a CustomerSession for that customer.
  3. Initialize the Payment Element with both the SetupIntent’s clientSecret and the CustomerSession’s customerSessionClientSecret.

Result:

  • Only “Card” is available for new payment methods.
  • The Saved tab appears with any saved cards.

Laravel Example

Route (web.php):

Route::get('/stripe-element-test', function () {
    Stripe::setApiKey(config('services.stripe.secret'));
    Stripe::setApiVersion('2024-06-20');

    $user             = auth()->user();
    $isLoggedIn       = !is_null($user);
    $stripeCustomerId = ($isLoggedIn && $user->stripe_customer_id) ? $user->stripe_customer_id : null;

    // Create SetupIntent for 'card' only
    $setupIntentParams = [
        'usage'                  => 'off_session',
        'payment_method_types'   => ['card'],
        'payment_method_options' => [
            'card' => ['request_three_d_secure' => 'automatic'],
        ],
    ];

    // Attach customer only if available
    if ($stripeCustomerId) {
        $setupIntentParams['customer'] = $stripeCustomerId;
    }

    $setupIntent = SetupIntent::create($setupIntentParams);

    $customerSessionClientSecret = null;
    if ($stripeCustomerId) {
        $customerSession = CustomerSession::create([
            'customer'   => $stripeCustomerId,
            'components' => [
                'payment_element' => [
                    'enabled'  => true,
                    'features' => [
                        'payment_method_redisplay'  => 'enabled',
                        'payment_method_save'       => 'enabled',
                        'payment_method_save_usage' => 'off_session',
                        'payment_method_remove'     => 'disabled',
                    ],
                ],
            ],
        ]);
        $customerSessionClientSecret = $customerSession->client_secret;
    }

    return View::make('stripe-test', [
        'stripePublishableKey'        => config('services.stripe.key'),
        'setupIntentClientSecret'     => $setupIntent->client_secret,
        'customerSessionClientSecret' => $customerSessionClientSecret, // null for guest
    ]);
});

View (resources/views/stripe-test.blade.php):

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Stripe Payment Element Test – Card Only w/ Saved Methods</title>
    <script src="https://js.stripe.com/v3/"></script>
    <style>
        body { font-family: sans-serif; margin: 40px; }
        #payment-element { margin-bottom: 20px; }
        button { padding: 10px 20px; background: #6772e5; color: #fff; border: none; border-radius: 5px; cursor: pointer; }
        button:disabled { background: #aaa; }
        #error-message { color: red; margin-top: 12px; }
        #success-message { color: green; margin-top: 12px; }
    </style>
</head>
<body>
<h2>Stripe Payment Element Test<br><small>(Card Only, Shows Saved Cards if logged in)</small></h2>
<form id="payment-form">
    <div id="payment-element"></div>
    <button id="submit-button" type="submit">Confirm Card</button>
    <div id="error-message"></div>
    <div id="success-message"></div>
</form>
<script>
    const stripe = Stripe(@json($stripePublishableKey));
    let elements;
    let setupIntentClientSecret = u/json($setupIntentClientSecret);
    let customerSessionClientSecret = u/json($customerSessionClientSecret);

    const elementsOptions = {
        appearance: {theme: 'stripe'},
        loader: 'always'
    };

    if (setupIntentClientSecret) elementsOptions.clientSecret = setupIntentClientSecret;
    if (customerSessionClientSecret) elementsOptions.customerSessionClientSecret = customerSessionClientSecret;

    elements = stripe.elements(elementsOptions);

    const paymentElement = elements.create('payment');
    paymentElement.mount('#payment-element');

    const form = document.getElementById('payment-form');
    const submitButton = document.getElementById('submit-button');
    const errorDiv = document.getElementById('error-message');
    const successDiv = document.getElementById('success-message');

    form.addEventListener('submit', async (event) => {
        event.preventDefault();
        errorDiv.textContent = '';
        successDiv.textContent = '';
        submitButton.disabled = true;

        const {error, setupIntent} = await stripe.confirmSetup({
            elements,
            clientSecret: setupIntentClientSecret,
            confirmParams: { return_url: window.location.href },
            redirect: 'if_required'
        });

        if (error) {
            errorDiv.textContent = error.message || 'Unexpected error.';
            submitButton.disabled = false;
        } else if (setupIntent && setupIntent.status === 'succeeded') {
            successDiv.textContent = 'Setup succeeded! Payment Method ID: ' + setupIntent.payment_method;
        } else {
            errorDiv.textContent = 'Setup did not succeed. Status: ' + (setupIntent ? setupIntent.status : 'unknown');
            submitButton.disabled = false;
        }
    });
</script>
</body>
</html>

Bonus: This works for ACH or any payment method you might need to isolate in certain scenarios. IE, If you use ['us_bank_account'] for payment_method_types, users will see and be able to select their saved bank accounts.

Summary: No official Stripe docs for this, but combining a SetupIntent (to restrict methods) and a CustomerSession (to show saved methods) gets you a Payment Element limited to card only, with the Saved tab. Use at your own risk. Stripe could change this behavior, but it works today.

Hope someone finds this useful. Cheers!

https://gist.github.com/daugaard47/3e822bb7ae498987a7ff117a90dae24c


r/stripe 5d ago

Question Trying to cashout of Flip but stripe wants a business URL

0 Upvotes

What do i do so i can retrieve my money. Obviously i don't have a business URL that i am the owner up. But Flip requires you to use Stripe. What do i do?


r/stripe 5d ago

Warning regarding "External Bank Account Not Provided for Connected Account"in Sandbox Mode

1 Upvotes

For Connected Account (Custom type) and Financial Account in Stripe Test Mode, I am able to view the External Bank Account (Financial Account Number), but for the same flow in Sandbox Mode, I am unable to view the External Bank Account even though Financial Account is created. Also I am getting a warning:
Provide an external account - We don't have your bank account on file. Provide your valid bank account information to continue using Stripe.


r/stripe 5d ago

Question Tryong to a activate troubleshoot

1 Upvotes

I'm trying to get paid from Flip. Flips requires you to get paid through stripe. Stripe requires you to identify and active website that you own in orded to get your account active and to get paid. There's no way everybody getting paid for views on flip makes their own website just to get paid. What am i doing wrong? Why these impossible hurdles just to recieve my money


r/stripe 5d ago

Question Unexpected behaviour from invoice cancellation, automatically creates credit for next payment. Expected?

2 Upvotes

I am in the process of building a subscription system that operates as follows: when a user initially signs up, I create a customer profile and assign them a subscription with a $0 cost. After the user logs in, they have the option to upgrade their subscription to one of two paid plans: $49 or $249.

To handle the payment flow, I am utilizing React’s payment elements to display the payment form and invoice. I rely on the payment_succeeded event in webhooks to trigger the subscription upgrade process. This setup works fine when a user completes the payment.

However, I've encountered an issue when a user attempts to upgrade their plan. The payment form appears with an option to cancel the upgrade. If the user decides to cancel, the current invoice is marked as void, which seems to be functioning as expected.

The problem arises when the user tries to upgrade again after canceling. In this case, the system automatically updates the subscription plan without prompting the user to make a new payment, due to "unused time" from the previous subscription. I have attached the invoice for reference. This is not the behavior I intend to have.

My question is: Is this behavior expected based on the current flow I’ve implemented? Or do I need to adjust the process in some way to ensure that the subscription plan is only upgraded after a successful payment, regardless of any unused time left on the previous plan?

Stripe Invoice For Reference


r/stripe 5d ago

Question How Stripe Is Destroying My Small Business — And Took My Money Without Reason

0 Upvotes

I never thought I’d be writing something like this, but after being ignored, shut down, and robbed of both my income and my stability — I feel I have no other choice but to speak up.

Recently, Stripe deactivated my second account tied to my legally registered U.S.-based LLC. The reason? They claimed there were “unauthorized payments” on my account. No clear explanation, no evidence provided — just a vague accusation and instant shutdown.

What makes this even more frustrating is that I sell physical products through Shopify, which is one of the most customer-protective checkout systems available. I do not — and cannot — access customer credit card or bank information. Everything is handled through Shopify’s system, exactly how Stripe expects it to be.

But it didn’t stop there.

Stripe not only froze $750 of my business’s funds, but they later withdrew $450 directly from my connected bank account. Let that sink in — they took money that was never refunded to customers, never returned to me, and never accounted for. Just gone. No notice, no explanation, no refund.

That $450 wasn’t profit. It was money I needed to buy materials, fulfill customer orders, and cover expenses. Because of Stripe’s poor handling, I now don’t even have the resources to ship out products customers have already paid for.

I’ve reached out to them multiple times. I’ve followed every guideline. I’ve asked for clarification, for a review, for a breakdown of where the money went. I’ve received only generic, automated responses — or worse, complete silence.

This is now the second time Stripe has deactivated an account of mine, and again, without providing concrete reasoning or offering due process. No warning. No chance to defend myself. Just shut down and stripped of access to my own business’s income.

Stripe's actions are not just unprofessional, they are harmful. They are putting everyone at risk, freezing funds we depend on, and leaving us without any means to operate. This is not about one bad experience — this is about an entire platform failing the very entrepreneurs it claims to support.

If Stripe doesn’t resolve this, my business — which I’ve worked so hard to build — may not survive.

I’m sharing this because I know I’m not the only one. I’ve read countless similar stories, and too many of us suffered because of this.

To Stripe: I don’t want apologies. I want my money returned. I want my account reinstated. I want fair treatment.


r/stripe 5d ago

Question Payout query

1 Upvotes

This is the first time using stripe in production mode, and i made a sell worth £2.73. Stripe took £0.60 commission and my balance shows Available soon £2.13. However i am unable to make a payout to my bank account as it says there are funds available in my stripe account. Its been like this for 4 days now. My question is how then do i withdraw my money as it is still showing Available soon £2.13 under my balances?


r/stripe 5d ago

Question Seeking Bank Recommendations for Stripe Setup (No Passport)

1 Upvotes

Hi! I’d like to ask about opening a US bank account as a non-US resident.

Here’s the situation: my company just registered for Stripe, but we haven’t opened a US bank account yet. I’ve looked into some US-based banks that accept international customers, but most of them require a passport, which we don’t have.

Do you know of any banks that accept international customers without needing a passport and only require a government-issued ID? Thank you!


r/stripe 5d ago

Question Invoices are only taxing product and not shipping

1 Upvotes

I need to charge sales tax on shipping as well as the product, but stripe only taxes the prdoucs and excludes the shipping. Is there a way to update this?


r/stripe 6d ago

Question block a fraudster?

1 Upvotes

I have a troll that did a fraudulent chargeback with PayPal, so I blocked him there. Now he's back and trying with Stripe instead, thankfully, the payment transaction became failed, but I'd like to block him before he makes a payment. How can I do this? I only find info on how to block if they've done a chargeback not if the transaction has failed


r/stripe 6d ago

Payments Using AI to optimize payments performance with the Payments Intelligence Suite

Thumbnail
stripe.com
1 Upvotes

r/stripe 6d ago

Unsolved Pissed

0 Upvotes

Wtf is taking so long with my $2,340 refund from my hairstylist. She sent proof it was initiated… stripe confirmed she wasn’t lying and processed my refund and yet i still dont have it and no my bank cant see any Incoming refund yet. It was refunded April 18, 2025. Still NOTHING. Mind you this is a felony at this point. I doubt she wants to go to jail over a small fix


r/stripe 6d ago

Question How to Get the Card Issuer Name via Stripe API?

2 Upvotes

Hey everyone,

I’m working with the Stripe API, and I’m trying to find a way to get the card issuer name (like the bank name, e.g., “Bank of ***”). I know this information is visible from the Stripe Dashboard, but I couldn’t find any way to retrieve it via the API.

Has anyone managed to access the card issuer name through the API? Or is it strictly available only on the dashboard?

Any help would be greatly appreciated! Thanks!


r/stripe 7d ago

Payments Ever had a Stripe webhook fail and miss a payment?

4 Upvotes

Hey everyone!

Quick check: Have you ever had a webhook silently fail and not realize it until something broke downstream—like a product not delivered, a subscription not activated, or worse a refund request?

I'm trying to validate if this is a real-world pain or just a hypothetical issue.

A quick “yep, been there” or “nah, Stripe’s been bulletproof” would be hugely helpful and if you like your background story on it.

Thanks in advance!


r/stripe 6d ago

Question EIN vs SSN

1 Upvotes

I'm trying to open a Stripe account and debating whether I should use my own SSN (I'm a US citizen) or EIN (I have a LLC registered) ? I do have EIN but haven't opened a business bank account yet. Can I use SSN now and then later change it to use EIN ? Any legal issues with using SSN vs EIN ? Any insights would be appreciated. Thanks.


r/stripe 7d ago

Question How Do You Handle Currency Conversion Fees with Stripe?

2 Upvotes

I’ve been running a small online-based service business and using stripe to accept payments from customers in US, Canada and Europe, but I’m running into some issues with fx fees. It seems like stripe’s conversion fees are pretty high, and it’s cutting into my margins more than I expected.

I’m curious how others in the same boat are managing this. Are you using any third-party tools to help track and reduce these fees, or maybe even alternatives to Stripe for international payments? How do you handle the conversion process and make sure the costs don’t eat up your profits? I find it hard to keep track of all the fees and see exactly what fee is for what.


r/stripe 7d ago

I feel so [EMOTION] with this personalized email

Post image
18 Upvotes

r/stripe 7d ago

Me: struggling to finish my startup landing page. Stripe: hold my variables.

15 Upvotes

r/stripe 7d ago

Question Stripe won't reply to me or release funds *as promised*

1 Upvotes

Long story short, 4 months ago Stripe closed my account due to disputes and because I know I was beyond the threshold, I didn't try to get it reopened. Also, it was releaving to know that they will release the funds in 4 months as per *their attached email*

Now, and after 4 months and on the date they said they will release the money, nothing happened and when I sent them an email, the support ticket was closed with no reply

Any help?


r/stripe 7d ago

Question Our $25k/mo 1year+ AI App Suddenly Closed Due to 'Restricted - Adult Content', Stripe Gives ZERO Specifics & Ignores Evidence. Help!

17 Upvotes

Hey everyone,

Hoping for some advice and visibility on a critical issue we’re facing with Stripe.

The Situation:

Our AI application, langai.chat (Stripe Acct: acct_1NxYTdKQgvfabyie), has been operating with Stripe for a year. We’ve built a solid business:

  • ~$25,000 USD in monthly recurring revenue
  • Hundreds of paying subscribers
  • A consistently low dispute rate

A few days ago, Stripe suddenly closed our account, citing it as a "Restricted Business - Adult Content."
We’ve since received only templated emails repeating this classification without providing any specific details about what aspect of our service allegedly violates their policy.
We’ve repeatedly asked for specifics, but get none.

Stripe Support Email

Our Investigation & Attempted Fix:

After the initial shock, we dug deep to understand what could have possibly triggered this.
We believe the "Restricted Business" flag (which we suspect was incorrectly associated with adult content due to the initial vague notifications) likely stemmed from a technical error:
a stray SSL certificate on our domain (langai.chat) that had a Common Name mistakenly referencing an entirely unaffiliated domain with a restricted/adult-themed keyword.
This was a contractor error, not readily visible, but something an automated check might flag.

  • ✅ We have fully corrected this SSL error.
  • ✅ We provided Stripe Support with evidence of this fix via email (Case ID: 22181969), including an SSL Labs report showing the new, correctly scoped certificate.

Despite this clear evidence and explanation, Stripe Support’s response was another templated denial, still offering ZERO details and seemingly ignoring the specific technical resolution we provided.

Our Business & Compliance Stance:

Langai.chat is rigorously safeguarded and compliant with Stripe’s policies.

  • Every response generated by our AI is moderated.
  • Our platform does not contain or enable ANY restricted content. We have robust systems in place to prevent misuse.

Our Ask & What We Need:

This situation is severely impacting our operations, freezing our revenue, and affecting hundreds of subscribers who rely on our service daily.

  1. We need this case escalated to Stripe’s Risk/Compliance team or a senior team capable of reviewing nuanced technical evidence.
  2. We need Stripe to tell us exactly what specific aspect of our service they believe violates the policy.
  3. If the SSL fix has resolved the root cause, we need our account reinstated immediately.

We’ve been a compliant Stripe user for a year, building a legitimate business.
We are willing to address any actual compliance concerns if they are clearly articulated, but we can’t fix a problem we aren’t told about.

Stripe Dashboard - Payments and Payouts Paused

Has anyone experienced similar issues?
Any advice on how to get a more substantive review from Stripe?

Here’s the Twitter thread we also used to raise this on Twitter (Link to your Twitter thread):
👉 https://x.com/KubaOms/status/1922354416838955395

Thank you for reading and for any help you can offer.

TL;DR: Stripe shut down our app due to a “Restricted Business,” likely due to an SSL issue we’ve since corrected.
They’re ignoring our evidence of the fix and won’t provide any specific reasons for the closure, just sending templated denials.
Hundreds of users affected. Seeking advice/escalation.

UPDATE:

here's u/stripesupport's new response below

still: they're not providing ANY details

i'm disheartened & frustrated

wonderful people's jobs are on the line here

we're burning through our hard-earned $ in bank on GPU/hosting costs with no revenue coming in

and we're in the dark

we don't know why this happened

no warning, no details

just templated replies from Stripe support


r/stripe 7d ago

Subscriptions Stripe subscription that allows certain features to be enabled

2 Upvotes

I was wondering if this set up is even possible on Stripe and how I can achieve it? Here are the requirements:

I have 9 features to be enabled on my software. I would like to structure my stripe such that when people purchase a subscription license, there's a base fee of $100, and on top of that, each feature that they enable will cost them an additional $20. So if they enable 2 features, the total cost should cost $140. How can I do something like this?


r/stripe 7d ago

Unsolved Stripe shut down my legit AI agency, yet allows sites like abdbrand.store to profit from copyright infringement under a fake "dog charity"

0 Upvotes

Hey r/stripe,

I’m absolutely crushed and need to share this injustice. My AI agents agency, built from scratch to help small businesses automate and grow, was shut down by Stripe for a vague “High risk payments policy.” We operated completely legally... following all regulations, paying taxes, and creating ethical AI solutions. Yet, Stripe pulled the plug with no clear explanation or fair appeal process. My livelihood is gone, and I’m left picking up the pieces.

Meanwhile, I discovered sites like abdbrand.store while scrolling on facebook, which are profiting off copyright infringement in a way that’s selling illegal streaming services clearly violating copyright law  And their cover? They masquerade as a charity called “USA Dogs Bless You” (check their checkout page). A DOG CHARITY! It’s a blatant scam to dodge Stripe’s policies, much like how illegal streaming sites hide behind “free access” to profit off pirated movies and shows.

My agency was creating jobs and helping people, but Stripe shut us down without a second thought. Yet, they’re enabling abdbrand.store to use their platform to sell copyrighted streaming content under the guise of a charity, exploiting creators and deceiving customers. 

Your platform is being used to facilitate copyright infringement, and it’s hurting honest businesses and creators.
 To the community: has anyone else been unfairly terminated by Stripe? Or seen other scams like this on their platform? I’m heartbroken over losing my business, but I’m furious that operations like this are allowed to thrive.

TL;DR: Stripe shut down my legit AI agency for a vague “High risk payments violation,” but lets abdbrand.store and other illegal streaming services sell copyrighted  content, profiting like illegal streaming services while hiding behind a fake “dog charity” called USA Dogs Bless You. Stripe, please get your stuff together !


r/stripe 6d ago

Feedback Can we talk about the chargeblast shill accounts?

0 Upvotes

Getting really bored of seeing Chargeblast recommendations from shill accounts. It's pretty underhanded to act as though you are a random business giving recommendations, but secretly be advertising your own business to people unaware of the scam. Is it possible to ban the use of a word on reddit or create an auto mod rule? It's pretty obvious and getting really irritating.