WebToffee Logo
WebToffee Logo
  • Home
  • Plugins
  • Shopify apps
  • Bundles
  • Resources
    • Blog

      Explore expert guides, how-tos & insights to grow your eCommerce business.

    • Info Library

      Explore short reads on WordPress, eCommerce & privacy topics.

    • Infographics

      Easy-to-share visuals that explain eCommerce and privacy concepts.

    • Customer Stories

      Read inspiring stories of our customers and their successful business.

    • Customer Testimonials

      See what customers say about using WebToffee tools and plugins.

  • Help
    • Documentation

      Get started with step-by-step guides for our WordPress & Shopify solutions.

    • Frequently Asked Questions

      Find quick answers to commonly asked questions about our solutions.

    • Support

      Reach out for plugin setup, technical issues, licenses, or billing help.

    • Free Plugin Documentation

      Setup guides for all our free WordPress plugins to help you get started.

Login
cart 0

Upgrade Your Stripe Integration to OAuth 2.0 for Enhanced Security

Last updated on March 25, 2025

As part of enhancing security, Stripe is adopting OAuth 2.0 authentication for account integrations. By moving away from secret API keys, which provide unrestricted access to sensitive data, merchants can enjoy more secure and controlled interactions, aligning with Stripe’s latest security standards. With WebToffee’s WooCommerce Stripe Payment Gateway plugin, store owners can easily transition their existing account integration to the new OAuth 2.0 method using a Stripe App. New users can integrate their Stripe accounts using the OAuth 2.0 method only. Below are the brief steps for authentication:

  1. Access the Plugin Settings.
  2. Initiate OAuth 2.0 Authentication.
  3. Redirect to the Stripe Sign-in Page.
  4. Install WebToffee’s Stripe App.
  5. Confirmation of Successful Authentication.
  6. Test Your Integration.

Connect Stripe Account Using OAuth 2.0

Step 1: Access the Plugin Settings

  • Navigate to WebToffee Stripe > General Settings from the WordPress dashboard.

Step 2: Initiate OAuth 2.0 Authentication

  • As soon as you open the General Settings page, a banner will be visible at the top.
  • Inside the banner, you’ll find the Connect Now button.
  • Switch to the live mode to accept live payments.
Image highlighting the option to switch between modes
Image highlighting the option to switch between modes
  • Click on Connect Now to initiate the connection.
Image indicating the Connect Now button
Image indicating the Connect Now button

Step 3: Redirect to the Stripe Sign-in Page (Conditional)

  • This step appears for users who are not already logged in to their Stripe account.
  • Complete the sign-in process to continue with the integration.

Step 4: Install WebToffee’s Stripe App

  • On the Stripe Apps page, continue installing the WebToffee Stripe App.
  • Select an account.
  • Review the app’s access permissions.
  • Click on Install app in live/test mode.
GIF indicating the installation of WebToffee Stripe App

Step 5: Confirmation of Successful Authentication

After successful installation, you’ll see a Connected message on the plugin page confirming that your Stripe account has been successfully linked.

Stripe Account connected successfully

Step 6: Test your Integration

Use the test mode feature in your Stripe account to conduct a test transaction and ensure that everything is in place.

Disconnecting the Stripe Account

To disconnect your stripe account:

  1. Click on the Disconnect button. A pop-up appears to confirm the disconnection.
Disconnect button
Disconnect button
  1. Click on Disconnect.
  2. To fully remove the WebToffee App, head to the Stripe dashboard.
  3. Navigate to Settings > Team and security > Installed apps.
  4. Uninstall the WebToffee Stripe App.
Uninstalling the WebToffee Stripe app
Uninstalling the WebToffee Stripe app
📚

Discover More:

  • Capture Stripe Payments and Process Refunds
  • Local Payment Gateways Offered by the Plugin

Avatar

Written by

Sanjai Valsan

Technical Content Writer at WebToffee, simplifying complex concepts for seamless user experiences.

Comments (16)

  1. Julio

    May 14, 2025

    fatal error when trying to save settings after connecting OAuth 2.0

    Reply
    • Sanjai Valsan

      May 16, 2025

      Hi Julio,
      Thank you for reaching out.
      Sorry to hear you’re encountering a fatal error when saving settings after connecting via OAuth 2.0.
      To help us troubleshoot the issue effectively, we recommend reaching out to our customer support team with a few more details — such as any error messages, logs, or screenshots you can provide.

      Reply
  2. Michael

    May 7, 2025

    Bonjour,

    Même problème que tout les commentaires du dessus. Au bout d’un certain temps de 30 à 60 minutes.
    Lors d’un paiement, manque clé API ! Délai dépassé !

    Ovh ne veut pas s’occuper de rallonger le temps d’attente de 10000ms ! … puisque pour eux ce n’est pas le problème !

    C’est un problème de mise à jour token !

    Que proposer vous ?

    Dans stripe, paramètres autorisations Oauth lecture, écriture,…
    Doit on vérifier ou modifier un paramètre ?
    Je souhaiterais la liste des réglages a mettre pour contrôler les miens.

    Je rappelle que je peux faire un paiement, mais ensuite, pour un autre paiement ” manque clé API ”

    Merci

    Reply
    • Sanjai Valsan

      May 12, 2025

      Hi Michael,
      Thank you for reaching out,
      From what you’ve described, it seems the problem may be related to access token expiration and renewal after the initial Stripe OAuth 2.0 connection. While the first payment goes through successfully, the error you’re encountering afterward (“missing API key”) typically points to a token refresh issue. To resolve this quickly and ensure your setup is working as expected, we recommend reaching out to our customer support team directly.

      Reply
  3. Sihin Tsegaye

    March 12, 2025

    I got the below error message while I tried to connect with WebToffee.

    An error occurred while connecting to your site. Details: {“access_token”:”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”,”refresh_token”:”rt_Rvnq47pbSBhGsdL6yE5nwHmS0QNTokBBFanHdpdrvmUkzYNn”,”account_id”:”acct_1HZL5UAq3pss1QaZ”,”stripe_publishable_key”:”pk_live_51HZL5UAq3pss1QaZPyWpOFjxgyjXWmdrtTX3nmKib2AAkbti4GTH1N6gG5xKJVQlrLGtiTOAs7oWJ2bohZH8TTDy00Nskw6fgY”}

    Reply
    • Sanjai Valsan

      March 14, 2025

      Hi Sihin Tsegaye,
      Thanks for reaching out.
      The message you received is not actually an error – it’s a standard response when connecting to your Stripe account. This is expected behavior and occurs for all users during the connection process.
      If you experience any issues while trying to connect, please contact our customer support team, and they’ll be happy to assist you.

      Reply
  4. QUILLO Web

    February 2, 2025

    There is still the expiration bug!

    I have to re-activate every few days it loses the connection and CUSTOMER PAYMENTS ARE NOT PROCESSED!!! Dangerous!

    Reply
    • Sanjai Valsan

      February 4, 2025

      Hi Quillo,
      Thank you for reaching out. We truly appreciate your patience.
      We understand the urgency of this issue and sincerely apologize for any inconvenience caused. To investigate this further and find a permanent solution, we kindly request more details. Please reach out to our customer support team, and we’ll be happy to assist you promptly.

      Reply
  5. QUILLO Web

    February 2, 2025

    Hi,
    This has not been properly fixed. Same issue, I re-connect to Stripe, and then after a few days or a while it simply STOPS working and REJECTS payments, and loses the connection to Stripe, even though your plugin says it is ACTIVE.
    The fix is to DISCONNECT and RE-CONNECT again, but this is not expected as a proper solution for PAYMENT.
    Please fix!

    Reply
    • Sanjai Valsan

      February 4, 2025

      Hi Quillo,
      Thank you for reaching out,
      We understand how frustrating this issue can be. To properly diagnose and resolve this, we recommend reaching out to our customer support team with more details.

      Reply
  6. Petr

    January 2, 2025

    Hello, I have this error after installing the app in the Stripe and redirecting back to the website: An error occurred while connecting to Stripe. http_status_code403.

    I use Cloudflare.

    Reply
    • Sanjai Valsan

      January 5, 2025

      Hi Petr,
      Thank you for reaching out,
      The error you’re experiencing requires technical assistance to diagnose and resolve effectively. We recommend contacting our customer support team directly. They will be able to assist you in identifying the cause of the issue and guide you through the resolution process.

      Reply
  7. Paul

    November 23, 2024

    I’ve tried dozens of times, but it always fails with “An error occurred while connecting to Stripe. WP error – cURL error 28: Connection timed out after 10000 milliseconds.”

    Reply
    • Sanjai Valsan

      November 25, 2024

      Hi Paul,
      Thank you for reaching out!
      The error message you’re seeing indicates a server timeout issue, which typically occurs when the server cannot complete the connection to Stripe within the allotted time. To resolve this, you’ll need to increase the timeout limit on the server side.

      Reply
  8. Tom

    October 21, 2024

    This update worked seamlessly but stops working after a while. I have no issues connecting using this new method, but after a day or two this error occurs to my customers: Expired API Key provided: rk_live_******aBcDe. Platform access may have been revoked. Is there a solution to this Sanjai?

    Reply
    • Sanjai Valsan

      October 23, 2024

      Hi Tom,
      Thank you for bringing this up! We’ve resolved this issue in our latest release, version 4.0.1. Please update to this version, which includes a fix for the API key expiration bug. If you have connected your Stripe account using an older version, disconnect it and reconnect after the update to ensure everything works smoothly. Additionally, check the wt_stripe_oauth log file under WooCommerce > Status > Logs for any issues. If you encounter any problems, feel free to reach out to our support team for assistance.

      Reply

Got any query? Please leave a comment or reach out to our support

Cancel reply

Your email address will not be published. Required fields are marked *

Product icon

Stripe Payment Plugin for WooCommerce

Get free plugin

On this page

  • Connect Stripe Account Using OAuth 2.0
  • Step 1: Access the Plugin Settings
  • Step 2: Initiate OAuth 2.0 Authentication
  • Step 3: Redirect to the Stripe Sign-in Page (Conditional)
  • Step 4: Install WebToffee’s Stripe App
  • Step 5: Confirmation of Successful Authentication
  • Step 6: Test your Integration
  • Disconnecting the Stripe Account

Get started with your WebToffee plugin!

Your plugin will be downloaded in a few seconds...

All you need to do is add the plugin to your WordPress website.

To install and activate the plugin, view our installation guide.

download now
Webtoffee
Facebook
Twitter
Youtube
Linkedin
WordPress

We develop awesome WordPress and WooCommerce plugins and Shopify apps to help build successful online businesses.

© 2025 WebToffee. All rights reserved.

Our plugins

  • GDPR Cookie Consent
  • PDF Invoices & Packings Slips
  • Product Import Export Plugin
  • User & Customer Import Export
  • Import Export Suite
  • Sequential Order Numbers
  • Smart Coupons for WooCommerce
  • URL Coupons for WooCommerce
  • PayPal Express Checkout
  • Stripe Payment Gateway
  • Subscriptions for Woocommerce
  • WooCommerce Product Feed & Sync Manager
  • PrintNode for PDF Invoices
  • Order, coupon, subscriptions for WooCommerce
View more +

Get Started

  • Plugins
  • Testimonials
  • Customer Stories
  • Affiliates
  • We're hiring

Help & Support

  • Installation Guides
  • Documentation
  • Documentation (Basic)
  • Info Library
  • Infographics
  • FAQ
  • Support

Company

  • About Us
  • Terms & Conditions
  • Privacy Policy
  • Cookie Policy
  • Refund Policy
  • Support Policy

© 2025 WebToffee. All rights reserved.

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies. However you may visit Cookie Settings to provide a controlled consent.
Cookie settingsReject allAccept all
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of the basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website, to store user preferences and provide you with content and advertisements that are relevant. Such cookies will be stored on your browser but only upon procuring consent.

You will also have the option to opt-out of these cookies should you want to. But opting out of some of these cookies may have an effect on your browsing experience as per the descriptions elucidated against the respective categories below.

Necessary
Always Enabled
The cookies defined under this category are absolutely essential for the website to function. Hence they are loaded by default irrespective if user consent.
CookieDescription
__cfruidCloudflare sets this cookie to identify trusted web traffic.
__stripe_midStripe sets this cookie cookie to process payments.
__stripe_sidStripe sets this cookie cookie to process payments.
cookielawinfo-checkbox-advertisementSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-analyticsSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category .
cookielawinfo-checkbox-necessarySet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Necessary" category .
cookielawinfo-checkbox-preferencesThis cookie is set by the GDPR Cookie Consent plugin to check if the user has given consent to use cookies under the "Preferences" category.
CookieLawInfoConsentRecords the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.
PHPSESSIDThis cookie is native to PHP applications. The cookie is used to store and identify a users' unique session ID for the purpose of managing user sessions on the website. The cookie is a session cookie and is deleted when all the browser windows are closed.
viewed_cookie_policyThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not a user has consented to the use of cookies. It does not store any personal data.
Analytics
Analytics cookies help us understand how our visitors interact with the website. It helps us understand the number of visitors, where the visitors are coming from, and the pages they navigate. The cookies collect this data and are reported anonymously.
CookieDescription
_gaThis cookie is installed by Google Analytics. The cookie is used to calculate visitor, session, campaign data and keep track of site usage for the site's analytics report. The cookies store information anonymously and assigns a randomly generated number to identify unique visitors.
_ga_BQH8MSKD4MThis cookie is installed by Google Analytics.
_gat_gtagIdentification code of website for tracking visits.
_gidThis cookie is installed by Google Analytics. The cookie is used to store information on how visitors use a website and helps in creating an analytics report of how the website is doing. The data collected including the number visitors, the source where they have come from, and the pages visited in an anonymous form.
_hjAbsoluteSessionInProgressHotjar sets this cookie to detect the first pageview session of a user. This is a True/False flag set by the cookie.
_hjFirstSeenHotjar sets this cookie to identify a new user’s first session. It stores a true/false value, indicating whether it was the first time Hotjar saw this user.
_hjidHotjar cookie. This cookie is set when the customer first lands on a page with the Hotjar script. It is used to persist the random user ID, unique to that site on the browser. This ensures that behavior in subsequent visits to the same site will be attributed to the same user ID.
_hjIncludedInPageviewSampleHotjar sets this cookie to know whether a user is included in the data sampling defined by the site's pageview limit.
_hjIncludedInSampleThis cookie is set to let Hotjar know whether that visitor is included in the sample which is used to generate heatmaps, funnels, recordings, etc.
_hjIncludedInSessionSampleHotjar sets this cookie to know whether a user is included in the data sampling defined by the site's daily session limit.
_hjSessionUser_1376571No description
_hjTLDTestTo determine the most generic cookie path that has to be used instead of the page hostname, Hotjar sets the _hjTLDTest cookie to store different URL substring alternatives until it fails.
CONSENTYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
has_recent_activityThis cookie is used to signal to the code repository website if the user has browsed other website resources during the current session.
tk_aiGathers information for our own first-party analytics tool about how our services are used. A collection of internal metrics for user activity and is used to improve user experience.
tk_lrThis cookie is set by the JetPack plugin on sites using WooCommerce. This is a referral cookie used for analyzing referrer behavior for Jetpack.
tk_orThis cookie is set by the JetPack plugin on sites using WooCommerce. This is a referral cookie used for analyzing referrer behavior for Jetpack.
tk_qsGathers information for our own first-party analytics tool about how our services are used. A collection of internal metrics for user activity and is used to improve user experience.
tk_r3dThe cookie is installed by JetPack. Used for the internal metrics for user activities to improve user experience.
Advertisement
Advertisement cookies help us provide our visitors with relevant ads and marketing campaigns.
CookieDescription
_fbpThis cookie is set by Facebook to deliver advertisements when they are on Facebook or on a digital platform powered by Facebook advertising after visiting this website.
frThe cookie is set by Facebook to show relevant advertisements to the users and measure and improve the advertisements. The cookie also tracks the behavior of the user across the web on sites that have Facebook Pixel or Facebook social plugin.
VISITOR_INFO1_LIVEA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
Preferences
Preference cookies are used to store user preferences to provide them with content that is customized accordingly. This includes the language of the website or the location of the visitor.
CookieDescription
_gh_sessThis cookie is used to preserve users' states across page requests.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDurationDescription
_hjSession_137657130 minutesNo description
_octo1 yearNo description available.
_zendesk_authenticatedpastNo description
_zendesk_sessionsessionNo description available.
_zendesk_shared_sessionsessionNo description available.
edd_wp_session12 hoursNo description available.
logged_in1 yearNo description available.
m2 yearsNo description available.