How UK merchants connect Stripe to Shopware 6: plugin or API, API keys, webhooks, SCA, testing and going live, plus current UK card fees according to Stripe.
Making sure your shop can accept payments smoothly and securely is non-negotiable, and UK shoppers expect a fast checkout with cards, Apple Pay and Google Pay. In this walkthrough, we take you from shop owner to developer to a fully hands-on Stripe integration for your Shopware 6 site (or a similar setup). You will learn exactly how to:
Follow along step by step and you will end up with a battle-tested Stripe integration that delivers a frictionless checkout for every customer.
At its simplest, Stripe is the toolkit you use to accept payments online, whether that is a one-off charge, a subscription or marketplace payouts. Beyond charging cards, Stripe offers:
Whether you sell across the UK only or worldwide, Stripe covers 135+ currencies and all the major regional payment methods to help you maximise conversions. Since the UK left the EU, many UK shops also sell into Europe, and Stripe lets you offer EU payment methods from the same account.
Because card data is handled by Stripe’s hosted pages or secure iframes, your PCI DSS scope shrinks considerably; Stripe takes care of most of the heavy lifting, including Strong Customer Authentication (SCA) with 3D Secure, which is required for many UK and EU card payments.
Radar analyses global transaction patterns on your behalf, automatically flagging or blocking high-risk charges so you can sleep easier.
If you run a membership or SaaS business, Stripe’s Billing tools automate invoices, trials, proration and even tax calculation, so you spend more time growing and less time wrangling spreadsheets.
payment_succeeded , payment_failed , and charge.refunded .For headless or heavily customised shops:
stripe/stripe-php via Composer and create PaymentIntents, confirm charges and manage subscriptions right in your controllers.payment_intent.succeeded , invoice.payment_failed , or charge.refunded and update your Shopware order status automatically.composer require stripe/shopware-payment
payment_intent.succeededpayment_intent.payment_failedcharge.refundedinvoice.payment_succeeded4242 4242 4242 4242 , any future expiry, and any CVC.<form id="payment-form"> <div id="card-element"></div> <button id="submit">Pay</button> </form>
const stripe = Stripe('YOUR_PUBLISHABLE_KEY'); const elements = stripe.elements(); const card = elements.create('card'); card.mount('#card-element');
const {error, paymentIntent} = await stripe.confirmCardPayment( clientSecret, { payment_method: { card } } );
Stripe sends webhook notifications whenever key events happen. Here are the most common ones you’ll want to catch:
payment_intent.succeeded – mark the order as paid and send a confirmation email.payment_intent.payment_failed – notify the shopper and ask for another payment method.charge.refunded – update the order to “Refunded” and email a refund receipt.invoice.payment_succeeded – extend the customer’s subscription and send a receipt.// Example (pseudo-code) if (signatureIsValid(request, STRIPE_SECRET)) { switch (event.type) { case 'payment_intent.succeeded': markOrderPaid(event.data.object.metadata.order_id); break; case 'payment_intent.payment_failed': notifyCustomer(event.data.object.metadata.order_id); break; // … } }
var/log/dev-*.log ) to catch exceptions.stripe listen --forward-to https://your-site.com/webhook
With Stripe Checkout or Elements, sensitive card data is handled by Stripe’s servers rather than yours, which greatly reduces your PCI burden. Always serve checkout pages over HTTPS.
Turn on Stripe Radar’s default rules, review flagged payments and refine velocity limits to cut down on fraud.
Attach order IDs, customer IDs and basket summaries as metadata on each PaymentIntent so you can reconcile transactions easily. Never log full card details, and only store the personal data you need, in line with UK GDPR.
How can I swap API keys without taking my site offline?
Most Stripe plugins let you enter test and live keys side by side. Simply paste in your new live keys and switch modes in the interface, no reinstallation needed. For custom setups, deploy your changes during a quiet traffic window so customers are not affected.
Can I offer instalment payments?
Yes. In your Stripe Dashboard under Payments, you can enable buy now, pay later options such as Klarna or Clearpay (known as Afterpay outside the UK). Then switch on those payment methods in your Shopware plugin settings so they appear at checkout.
How do I issue refunds?
Full refunds: Open the order in Shopware and click Refund; the plugin calls Stripe’s refund API automatically.
Partial refunds: You can issue these either in the Stripe Dashboard (just enter the amount) or via the API by specifying the refund amount in pence.
How much does Stripe charge in the UK?
According to the provider’s UK pricing page, the standard rate is 1.5% + 20p for standard UK cards and 2.8% + 20p for premium UK cards. EEA cards cost 2.5% + 20p, international cards 3.15% + 20p, and currency conversion adds 2%. Check your Stripe Dashboard for the exact pricing on your account. If you would like help setting up Stripe in your UK Shopware shop, solution25 is happy to support you.