# Stripe: invoice_payment_intent_requires_action

> Stripe returns invoice_payment_intent_requires_action when paying an invoice needs the customer to authenticate. Finish it with the invoice’s PaymentIntent.

Canonical: https://app369.com/fix/stripe-invoice-payment-intent-requires-action/
Last updated: 2026-11-10

invoice_payment_intent_requires_action is the Stripe error for an invoice payment that needs an extra customer step, such as 3D Secure, before it can succeed. Stripe says the payment can still be completed with the invoice’s PaymentIntent.

**Short answer**

Get the PaymentIntent on the invoice and have the customer complete it on your site, for example by confirming it with Stripe.js while they are present. For off-session renewals, turn on “Send a Stripe-hosted link for customers to confirm their payments when required” in the Billing email settings.

Rather not fix it yourself? [**Stripe Billing Fix and Setup**](https://app369.com/fixed-price/stripe-billing-setup/) handles it at a fixed price, agreed before work starts.

## **Why the invoice payment needs action, and the fix**

1. 01 ### **The card issuer asked for authentication**
  > “Payment can be completed using the PaymentIntent associated with the invoice.” [**Stripe, Error codes (invoice_payment_intent_requires_action)**](https://docs.stripe.com/error-codes) The customer has to complete the extra step themselves. Pass the client secret of the PaymentIntent on the invoice to the front end and let the customer complete it there.
2. 02 ### **The app doesn’t handle next actions**
  > “Verify that you’re handling next actions, such as authentication.” [**Stripe, Strong Customer Authentication (failed payments)**](https://docs.stripe.com/billing/migration/strong-customer-authentication) If the code treats requires_action as a failure, the customer never gets the authentication step. Handle the next action instead of retrying the same charge.
3. 03 ### **The renewal ran while the customer was away**
  > “Some payments might require manual customer intervention, like those that use 3D Secure or the Boleto payment method.” [**Stripe, Customer emails (payment confirmation notifications)**](https://docs.stripe.com/billing/revenue-recovery/customer-emails) Renewals are charged off-session, so the customer has to be reached another way. Turn on “Send a Stripe-hosted link for customers to confirm their payments when required” in the Billing email settings.
4. 04 ### **The customer abandoned checkout**
  > “Make sure your customer isn’t actively authenticating an on-session payment.” [**Stripe, Strong Customer Authentication (failed payments)**](https://docs.stripe.com/billing/migration/strong-customer-authentication) Also check: the payment can sit in requires_action because the customer is still authenticating or left the checkout flow. Wait or ask them to finish before charging again.

Checked against the vendor’s docs on November 10, 2026: [Stripe docs: Error codes](https://docs.stripe.com/error-codes); [Stripe docs: Strong Customer Authentication for Billing](https://docs.stripe.com/billing/migration/strong-customer-authentication); [Stripe docs: Customer emails](https://docs.stripe.com/billing/revenue-recovery/customer-emails).

## **Rather hand it over?**

Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.

- [$950**Stripe Billing Fix and Setup**Subscriptions, webhooks, customer portal and failed payments set up or fixed, tested in Stripe test mode.**See scope and start**](https://app369.com/fixed-price/stripe-billing-setup/)
- [from $450**App Fix Ticket**One reproducible bug in an existing mobile or web app, diagnosed and fixed.**See scope and start**](https://app369.com/fixed-price/flutter-firebase-bug-fix/)
- [from $450**AI-Built App Rescue**A Lovable, Bolt or Cursor app checked end to end in 3 days, then its worst problems fixed at a fixed price.****No issues worth fixing, no charge.**** If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.**See scope and start**](https://app369.com/fixed-price/ai-app-rescue/)

[**All 127 Fiverr reviews**](https://app369.com/reviews/)

Related: [**Stripe subscription incomplete (requires_action)**](https://app369.com/fix/stripe-subscription-incomplete-requires-action/) · [**Stripe authentication_required**](https://app369.com/fix/stripe-authentication-required/) · [**Stripe payment_intent_authentication_failure**](https://app369.com/fix/stripe-payment-intent-authentication-failure/) · [**Stripe customer_max_payment_methods**](https://app369.com/fix/stripe-customer-max-payment-methods/)

Questions

## **More on this error**

<details>

<summary>**Is the invoice lost? **+</summary>

No. Stripe’s error message says the payment can be completed with the PaymentIntent associated with the invoice.

</details>

<details>

<summary>**Which payments can need manual customer action? **+</summary>

Stripe’s customer email docs say some payments need manual customer intervention, such as those using 3D Secure or the Boleto payment method.

</details>

<details>

<summary>**Can you fix it for me? **+</summary>

If one bug is the whole problem, the App Fix Ticket covers it: a written diagnosis first, then the fix. If the app has more going on, the Launch Check is a written check of the whole app. Each issue found is rated critical, high, medium or low, with where it is and how it was confirmed. No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.

</details>

A different error?

## **Describe it and get a written quote**

Send the error and what you were doing. You get a written scope, a fixed price and a timeline; Simon replies by email, usually within one business day.

[**Describe your problem **→](https://app369.com/contact/) [**All fixes**](https://app369.com/fix/)