

Stripe Checkout illustration for desktop and mobile.
SA Integration for Stripe Checkout and WooCommerce replaces the standard WooCommerce checkout form with Stripe Checkout for carts requiring payment. Customers can continue from supported cart and mini-cart buttons or visit the store’s checkout page directly, without filling in two checkout forms. They review products and apply WooCommerce coupon codes in the cart, then enter their payment details through Stripe.
Choose a Stripe-hosted payment page, Embedded Checkout on a page in your store, or Embedded Checkout in a popup. All three checkout experiences are free, together with branding controls, WooCommerce cart discounts, payment-method selection, checkout language selection and optional quantity changes for eligible products.
For standard Checkout, the plugin creates a WooCommerce order from the cart and uses its saved totals for payment. The free edition also includes optional Stripe Managed Payments for eligible one-time digital products, with product-level opt-in and Stripe-calculated final tax. Payment confirmations are verified before an order is marked paid. See the FAQ for eligibility, setup and calculation limits.
For standard Checkout, payment-method availability depends on your Stripe account, enabled methods, business and customer countries, currency and order. WooCommerce calculates discounts, shipping, fees and taxes before checkout opens; they are not recalculated in Stripe when an address or quantity changes. See the FAQ before enabling quantity changes.
Managed Payments is a separate, opt-in payment model for eligible automated digital products and supported businesses. Stripe determines eligibility, available payment methods and final tax. This first scope does not support subscriptions, shipping, fee lines or quantity changes inside Stripe. Mixed or unsupported carts are blocked unless you explicitly choose standard Checkout for the entire cart. Product configuration is not Stripe approval, and tax-coverage exceptions apply.
The separate premium edition adds:
Compare editions on the plugin website. Hosted, embedded page and popup checkout, basic branding, cart coupons, payment-method selection, language selection and optional quantity changes do not require premium.
For current setup instructions and checkout options, see the installation guide.
The plugin includes translatable interface strings. Contribute translations through WordPress.org. The Stripe Checkout language is configured separately in the plugin’s Checkout Settings.
For help, use the WordPress.org Support Forum. Before starting a new thread, check the documentation and existing support threads. Describe the issue and include your WordPress, WooCommerce and plugin versions. Do not post API keys or customer payment details.
Report reproducible bugs or contribute code through GitHub. Source files, build instructions and third-party license notices are included with the plugin.
This plugin uses Stripe Checkout to process payments and requires a Stripe account. After you configure Stripe API credentials, the plugin contacts Stripe to verify the account connection and create, retrieve or expire checkout sessions and verify their payment status.
Requests include order and item references, verification metadata, product names and public image URLs when available, quantities, totals, discounts, fees, shipping, taxes, currency, store return URLs and the billing email when available. Enabled branding overrides also send the selected display name, colors, font and corner shape to Stripe; Hosted Checkout can also receive a public logo URL. Stripe retrieves the logo image; WordPress does not download it through this feature. USD bank transfers also require a Stripe customer record associated with the order.
Managed Payments requests also include the opted-in products’ digital tax categories and saved request verification references. Stripe returns final product/tax amounts and may return a separate customer presentment currency/amount. The plugin stores verified values for payment confirmation, order accounting and refund reconciliation. Local eligibility confirmations do not constitute an application for Stripe approval.
For refunds, the plugin retrieves the original Checkout Session, PaymentIntent, Charge and refund records. A confirmed request sends the original payment reference, refund amount, fixed reason requested_by_customer, order ID and a unique refund-operation identifier to Stripe. The optional refund note remains in WooCommerce and is not sent to Stripe. Webhooks and bounded follow-up checks retrieve refund status without creating another refund.
The storefront loads Stripe.js directly from js.stripe.com when checkout is enabled or an existing payment page is opened. This connects the customer’s browser to Stripe to provide its payment interface and payment security services. Customers enter payment details directly into Stripe’s hosted page or Stripe-controlled embedded interface, not a WordPress payment-card form. Stripe may also collect their name, billing address, shipping address and phone number according to the checkout settings. The plugin receives payment status, customer details and, when quantity adjustment is enabled, final line-item quantities and amounts from Stripe to update the WooCommerce order.
See the Stripe Privacy Policy and Stripe Services Agreement.
Readable admin JavaScript and SCSS source is included in node-dev/free-app and node-dev/shared. The storefront checkout controller and styles are in node-dev/frontend/checkout. The package includes node-dev/package.json, node-dev/webpack.config.js and build instructions in README.md. From node-dev, run npm install, then npx cross-env NODE_ENV=production CREATE_ZIP=no npm run build to generate assets/backend and assets/frontend/checkout. Stripe.js is loaded directly from Stripe, not bundled or self-hosted. Third-party license notices are included in THIRD-PARTY-NOTICES.txt and the bundled libraries’ license files. The plugin is licensed under GPLv2 or later; see LICENSE.
The order-level refund panel’s readable JavaScript and CSS are in assets/refunds. The Managed Payments product-editor controls are in assets/managed-payments. These files are canonical runtime sources and are not generated by the admin build.