The EU One Stop Shop (OSS) scheme is the tax framework every digital-goods seller into the EU must understand. If you’re using Stripe to collect payments from European customers, OSS directly affects you — whether you’re based in the EU or not.
What is OSS?
OSS replaced the old MOSS (Mini One Stop Shop) system in July 2021. Instead of registering for VAT separately in each country where you have customers, OSS lets you file a single quarterly return covering all 27 EU member states.
Before OSS, selling to customers in Germany, France, and the Netherlands potentially required three separate VAT registrations. OSS collapses that into one filing with your home country tax authority.
Who needs to comply?
You need to register and file under OSS if all three of these are true:
- You sell digital services or goods to end consumers (B2C)
- You have customers in EU countries other than your own
- Your total cross-border EU B2C sales exceed €10,000 per year (cumulative across all EU countries)
“Digital services” covers a wide range:
- SaaS subscriptions and software licenses
- E-books, online courses, and digital downloads
- Streaming services and API access
- Anything delivered and consumed digitally
Filing deadlines
OSS returns are filed quarterly. Missing these triggers interest charges and can escalate to penalties from multiple EU authorities simultaneously:
- Q1: April 30
- Q2: July 31
- Q3: October 31
- Q4: January 31
What happens if you ignore it?
Non-compliance carries real consequences. EU tax authorities share data, and Stripe already reports transaction data to certain jurisdictions. Common penalties include:
- Back-taxes for every year you were technically liable
- Interest on unpaid VAT (typically 2–10% annually)
- Fixed penalties per late filing in each affected country
- In serious cases: forced registration in individual member states
For a bootstrapped SaaS doing €100k/year in EU revenue, a two-year audit can result in a €15–25k+ bill.
The classification problem
OSS doesn’t just require you to report total EU revenue. For each transaction you need to:
- Identify the customer’s country (not just their billing address)
- Classify as B2B (zero VAT via reverse charge) or B2C (full local VAT rate applies)
- Validate any VAT IDs against the official VIES registry
- Apply the correct rate for that specific country
Doing this manually in a spreadsheet becomes a part-time job once you have more than a few hundred transactions per quarter.
The automated solution
vidaReady connects to your Stripe account, classifies every transaction automatically (B2B / B2C / Reverse Charge) with live VIES validation, and generates an OSS-ready CSV broken down by country — in minutes, not hours.