WordPress
WordPress + WooCommerce for European E-Commerce: A Practical Setup Guide

Selling products online from Europe comes with requirements that American-focused guides simply do not cover. EU VAT rules across 27 member states. GDPR compliance for every customer interaction. Payment preferences that vary by country. Invoice formatting requirements that differ from what US-based tutorials describe. If you have tried following a generic “How to Set Up WooCommerce” guide and ended up confused about tax configuration, you are not alone.
WooCommerce powers roughly 36% of all online stores globally, making it the most widely used e-commerce platform. For European small and medium businesses, it offers a compelling combination: low entry cost, high flexibility, and a plugin ecosystem that addresses EU-specific requirements. But “compelling” does not mean “simple.” The setup requires thoughtful decisions at every step.
This guide covers the practical, European-specific aspects of setting up WooCommerce. We assume you already have a WordPress website (or are planning one) and want to add e-commerce functionality. If you are still deciding between platforms, that is a different conversation.
Why WooCommerce Works for European SMB E-Commerce
Before getting into the setup details, here is why WooCommerce deserves consideration over alternatives like Shopify, Wix e-commerce, or Squarespace Commerce.
Cost structure favors SMBs. WooCommerce itself is free. You pay for hosting (EUR 50-200/year), your domain, and whatever premium extensions you need. Compare this to Shopify’s EUR 36-384/month plans, and the long-term cost difference is significant, especially for businesses just getting started with e-commerce.
EU-specific plugins exist. The WooCommerce ecosystem includes purpose-built solutions for EU VAT, European payment methods, European invoice formats, and GDPR compliance. These are not afterthoughts – they are actively maintained plugins used by thousands of European stores.
Full data control. Under GDPR, you are responsible for customer data. With WooCommerce on your own hosting, you control where that data is stored, who can access it, and how it is processed. With SaaS platforms, you are trusting a third party with your compliance obligations.
WordPress integration. If you already have a WordPress website (or are planning one), adding WooCommerce means your content and your store share one platform, one admin panel, and one SEO strategy. No iframes, no subdomain workarounds, no disconnected systems.
Payment Gateways: What European Customers Actually Use
Payment preferences vary dramatically across Europe. A payment setup that works perfectly for UK customers will miss half your potential sales in the Netherlands or Germany. Here is what you need to know.
Stripe (Recommended Baseline)
Stripe supports cards (Visa, Mastercard, Amex) and an expanding set of European payment methods including SEPA Direct Debit, iDEAL (Netherlands), Bancontact (Belgium), and Przelewy24 (Poland). Setup is straightforward with the WooCommerce Stripe plugin, and Stripe handles PSD2/Strong Customer Authentication (SCA) requirements automatically.
Transaction fees are typically 1.5% + EUR 0.25 for European cards, 2.5% + EUR 0.25 for non-European cards. No monthly fee.
For most European SMBs starting with e-commerce, Stripe alone covers the majority of payment scenarios. Start here and add specialized gateways only if you see significant cart abandonment from specific countries.
PayPal
Still widely used and trusted across Europe. WooCommerce supports PayPal through WooCommerce PayPal Payments (the official integration). Transaction fees are roughly 2.49% + fixed fee per transaction for domestic payments, higher for international.
PayPal is particularly important for customers who do not want to enter card details on a site they have not purchased from before. The trust factor of the PayPal brand can meaningfully reduce cart abandonment for new stores.
Country-Specific Payment Methods
If a significant portion of your customers come from a specific country, consider adding their preferred local payment method:
- Netherlands: iDEAL (via Stripe or Mollie). Over 60% of Dutch online payments use iDEAL. If you sell to Dutch customers and do not support iDEAL, you are losing sales.
- Germany: PayPal, Klarna (including Pay Now), or Wero. Germans historically prefer direct bank transfers. Note that giropay was discontinued at the end of 2024, and SOFORT has been consolidated into Klarna’s Pay Now.
- Nordics: Klarna (buy now, pay later). Popular across Sweden, Norway, Finland, and Denmark. The Klarna Payments plugin integrates with WooCommerce.
- Baltics: Local bank links. In Latvia, Lithuania, and Estonia, bank link payments (direct integration with local banks like Swedbank, SEB, Luminor) are common. Providers like Montonio or Kevin. offer WooCommerce plugins that aggregate Baltic bank payments.
- Poland: Przelewy24, BLIK (via Stripe or dedicated plugins).
Mollie as an Alternative Aggregator
If you need to support multiple European payment methods without managing separate integrations, Mollie is worth considering. Mollie aggregates iDEAL, Bancontact, EPS, Klarna, and others through a single WooCommerce plugin. Pricing is per transaction with no monthly fees. It is particularly popular among Benelux and DACH-region stores.
EU VAT: The Part Everyone Gets Wrong
VAT is where most European WooCommerce setups go from “easy” to “I need professional help.” The rules are genuinely complex, and getting them wrong has financial and legal consequences.
The Basic Setup
WooCommerce has built-in tax calculation. For a business selling physical goods only within your own country, the basic setup is straightforward:
- Enable taxes in WooCommerce settings
- Set your base country and tax rate (e.g., 21% for Latvia, 19% for Germany, 25% for Denmark)
- Configure whether prices in your catalog include or exclude VAT (B2C stores in Europe typically display prices including VAT)
- Set up tax classes if you sell products with different VAT rates (standard rate, reduced rate for food or books, etc.)
Cross-Border EU Sales and OSS
This is where it gets complicated. If you sell to consumers in other EU countries, you need to understand the One-Stop-Shop (OSS) scheme.
Before OSS, if you exceeded the distance selling threshold in another EU country (which varied by country), you had to register for VAT in that country. OSS simplifies this: you register for OSS in your home country and report all EU cross-border B2C sales through a single quarterly return. Your home country’s tax authority distributes the VAT to the destination countries.
But here is the critical detail: you must charge the VAT rate of the customer’s country, not yours. A Latvian store selling to a German consumer must charge 19% (Germany’s rate), not 21% (Latvia’s rate). A Latvian store selling to a Swedish consumer must charge 25%.
WooCommerce does not handle this automatically out of the box. You need one of these approaches:
- Manual setup: Configure tax rates for each EU country in WooCommerce’s tax table. This works but requires maintaining rates manually and updating whenever a country changes its rates.
- Automated tax calculation: Use a plugin like WooCommerce Tax (powered by Jetpack) or a service like TaxJar or Avalara that automatically applies the correct rate based on the customer’s location.
- EU VAT Number plugin: For B2B sales, the EU VAT Number plugin validates the buyer’s VAT number and applies a 0% rate for intra-community B2B transactions (reverse charge mechanism).
Practical Recommendation
For a new European store selling B2C across the EU, use automated tax calculation from the start. The cost of a tax automation plugin (often free or under EUR 100/year) is negligible compared to the headache of incorrectly calculated VAT on hundreds of orders.
Register for OSS with your country’s tax authority before you start selling cross-border. The registration is free and the quarterly reporting is manageable for small volumes.
GDPR Compliance for Your WooCommerce Store
GDPR compliance for an e-commerce store is more involved than for a brochure website because you are collecting personal data at every step: account creation, checkout, order processing, shipping, payment, and marketing.
Cookie Consent
Install a proper cookie consent plugin that blocks non-essential cookies until consent is given. CookieYes and Complianz are the most popular options for WooCommerce. They scan your site for cookies, categorize them (necessary, analytics, marketing), and provide a consent banner that complies with GDPR requirements.
Key detail: Google Analytics, Facebook Pixel, and any marketing tracking must not fire until the customer explicitly consents to marketing/analytics cookies. “By continuing to browse, you accept cookies” banners are not compliant.
Privātuma politika
Your privacy policy must specifically describe:
- What personal data you collect during checkout (name, email, address, phone, payment data)
- Why you collect it (order fulfillment, legal obligations)
- How long you retain it (tax law may require keeping invoice data for 5-10 years depending on country)
- Who you share it with (payment processor, shipping provider, tax authority)
- The customer’s rights (access, rectification, erasure, portability, objection)
WooCommerce generates a basic privacy policy template, but you should review and customize it for your specific setup.
Checkout Data Minimization
Only collect data you genuinely need. If you do not need a phone number, do not require it. If you ship only within one country, you do not need a country selector. Every field you add is personal data you must protect, store, and potentially delete on request.
Account and Data Handling
WooCommerce supports guest checkout (no account required). For GDPR compliance, allow guest checkout by default. If customers want to create accounts for convenience, make it optional and clearly explain what data you retain and why.
Implement a process for handling data deletion requests. WooCommerce includes privacy tools (Tools > Export/Erase Personal Data) that help, but you may need to also delete data from payment processors, shipping integrations, and email marketing systems.
Shipping Configuration for European Stores
Shipping Zones
WooCommerce lets you define shipping zones with different rates and methods. A typical European store might configure:
- Domestic: Your home country, lowest rates, fastest delivery
- EU/EEA: Other European Economic Area countries, moderate rates
- Rest of World: Everything else, highest rates, longest delivery times
Within each zone, you can offer multiple shipping methods: flat rate, free shipping above a threshold, calculated rates from a carrier, or local pickup.
Carrier Integration
For calculated shipping rates (where the cost depends on package weight and destination), carrier-specific plugins connect WooCommerce to:
- DPD: Popular across Central and Eastern Europe
- DHL: Strong in Germany, Benelux, and for international shipments
- GLS: Common in Southern and Central Europe
- Omniva: Baltic States (Latvia, Lithuania, Estonia) parcel machines and courier
- PostNord: Nordic countries
- Royal Mail: United Kingdom
Each carrier plugin pulls real-time rates into the checkout, so customers see accurate shipping costs before completing their purchase.
Practical Tip: Start Simple
If you are launching e-commerce for the first time, start with flat-rate shipping rather than calculated rates. Set a domestic flat rate and an EU flat rate based on your average shipping costs. You can refine pricing later once you have real order data showing your actual costs per destination.
Free shipping thresholds (e.g., “Free shipping on orders over EUR 50”) are effective for increasing average order value. WooCommerce supports these natively without additional plugins.
European Invoicing Requirements
European invoicing requirements are stricter than what WooCommerce provides by default. Most EU countries require invoices to include:
- Sequential invoice numbers (no gaps in the sequence)
- Your business name, address, and VAT number
- The customer’s name and address (and VAT number for B2B)
- Invoice date
- Description of goods/services
- Net amount, VAT rate, VAT amount, and gross total
- Payment terms
WooCommerce PDF Invoices & Packing Slips (free plugin) or WooCommerce PDF Invoices (premium, by Aelia) handle this. Configure them to generate compliant invoices automatically when orders are completed, and attach them as PDF to the order confirmation email.
Multi-Language for Your Store
If you serve customers in multiple languages, your store needs to work in multiple languages too. This includes:
- Product names and descriptions
- Category and tag names
- Checkout fields and button labels
- Email notifications (order confirmation, shipping notification)
- Legal pages (terms and conditions, privacy policy, returns policy)
TranslatePress is our preferred solution. It provides a visual translation interface where you can translate your store pages in context – you see the page as customers see it, and you click on elements to translate them. It handles WooCommerce elements (product pages, cart, checkout) and creates proper URL structures for each language (/en/product-name, /lv/produkta-nosaukums).
WPML is the other major option, with deeper WooCommerce integration but a steeper learning curve and higher cost (EUR 99+/year for their Multilingual CMS plan).
For smaller stores just getting started, TranslatePress’s free version covers the basics. You can upgrade to the premium version when you need WooCommerce-specific features or additional languages.
Veiktspējas optimizācija
WooCommerce adds database queries and processing overhead to WordPress. An unoptimized WooCommerce store can feel sluggish, especially as your product catalog grows. Here are the essentials.
Caching
Install a caching plugin (WP-Optimize, WP Super Cache, or W3 Total Cache). Critical detail: configure the cache to exclude cart, checkout, and account pages. These pages must be dynamic (showing the current user’s cart contents), and caching them will cause incorrect data to display.
Image Optimization
Product images are typically the largest files on your pages. Compress them before upload (TinyPNG or ShortPixel), and use lazy loading so images below the fold load only when the user scrolls to them. WordPress 5.5+ includes native lazy loading, and WooCommerce respects it.
Database Optimization
WooCommerce stores generate significant database entries: orders, order items, order meta, product variations, transients, and revision history. As your store grows, periodic database optimization (cleaning up expired transients, limiting post revisions, removing spam and trashed items) keeps queries fast.
CDN (Content Delivery Network)
A CDN serves your static files (images, CSS, JavaScript) from servers geographically close to your visitors. For a European store serving customers across the continent, a CDN with European edge servers (Cloudflare’s free tier is sufficient for most SMBs) noticeably improves page load times for visitors in distant countries.
When WooCommerce Is Enough (and When It Is Not)
WooCommerce handles the needs of most European SMB e-commerce stores comfortably:
- Up to roughly 10,000 products with proper hosting
- Moderate traffic (hundreds to low thousands of daily visitors)
- Standard product types (simple, variable, grouped, digital)
- Standard checkout flows
- A manageable number of payment and shipping integrations
Where WooCommerce starts to strain:
- 50,000+ products: Database queries slow down. You need optimized hosting, possibly custom database indexing.
- Complex B2B pricing: Customer-specific pricing, tiered discounts, quote-based workflows. Possible with plugins, but WooCommerce was not designed for complex B2B from the ground up.
- Multi-warehouse inventory: Managing stock across multiple warehouses with automated allocation requires significant plugin investment or custom development.
- High-concurrency sales events: Flash sales or limited drops with thousands of simultaneous users can overwhelm WooCommerce without serious infrastructure preparation.
If you are hitting these limits, consider Shopify Plus (managed, strong for high-volume retail) or, for enterprise-scale operations, SAP Commerce Cloud (which we also work with for enterprise clients).
Realistic Cost Breakdown
Here is what a European WooCommerce store actually costs to set up and run in the first year.
Setup Costs
| Component | Cost Range |
|---|---|
| WordPress + WooCommerce setup | EUR 800-3,000 (developer) |
| Theme / visual builder | EUR 0-250 |
| Payment gateway setup | EUR 0 (free plugins for Stripe, PayPal) |
| EU VAT automation | EUR 0-100/year |
| GDPR compliance plugin | EUR 0-100/year |
| Invoicing plugin | EUR 0-80/year |
| Multi-language plugin | EUR 0-100/year |
| Setup total | EUR 800-3,630 |
Annual Running Costs
| Component | Cost Range |
|---|---|
| Hosting | EUR 80-250/year |
| Domain | EUR 10-20/year |
| Plugin renewals (premium) | EUR 100-400/year |
| Maintenance (updates, backups) | EUR 360-1,200/year (if outsourced) |
| SSL certificate | EUR 0 (included with most hosting) |
| Annual total | EUR 550-1,870/year |
Our Professional Expansion package at EUR 1,100 includes WooCommerce setup as part of the build, along with 7-10 pages, SEO, analytics, and 90 days of support. For many European SMBs, this is the most cost-effective way to launch e-commerce: professional setup with the flexibility to grow. You can see the full breakdown in our WordPress packages.
Getting Started: The Practical First Steps
- Sort out your legal requirements first. VAT registration, OSS registration (if selling cross-border), and business bank account. These take time and should not be last-minute.
- Choose hosting with EU data centers. Server location matters for GDPR and for page speed for European visitors.
- Start with a small product catalog. Launch with your top 10-20 products. Validate that orders flow correctly before adding your full catalog.
- Set up Stripe + PayPal. These two cover the majority of European payment preferences. Add country-specific methods later based on where your orders come from.
- Configure VAT correctly from day one. Fixing incorrect VAT on past orders is painful. Get this right before your first sale.
- Install GDPR compliance tools before launch. Cookie consent, privacy policy, and data handling processes must be in place from the moment your store goes live.
E-commerce on WordPress is not the simplest path, but for European SMBs that want control, flexibility, and a platform that grows with them, WooCommerce remains the most practical choice. The key is getting the European-specific setup right from the start rather than retrofitting it later.
Have questions about WooCommerce for your European business? Our FAQ answers common concerns, or browse our portfolio to see real examples of what we build.



