Tutorial12 min readAlberto García

MwSt. für Entwickler: Der vollständige Implementierungsleitfaden 2026

Die Mehrwertsteuer ist eine Verbrauchssteuer, die auf jeder Stufe der Lieferkette erhoben wird. Für Entwickler bedeutet das: Steuersatzabfrage, Kundenklassifizierung, USt-IdNr.-Validierung und konforme Rechnungserstellung.

vattutorialdevelopersapiguide

Die Mehrwertsteuer (MwSt.) ist eine Verbrauchssteuer, die auf Waren und Dienstleistungen auf jeder Produktions- und Vertriebsstufe erhoben wird. Für Entwickler, die Abrechnungssysteme oder SaaS-Produkte für EU-Kunden bauen, bedeutet MwSt.-Compliance, vier Dinge richtig zu machen: den anwendbaren Steuersatz kennen, den Steuerstatus des Kunden validieren, die korrekte Steuerbehandlung anwenden und konforme Rechnungen generieren.

Was MwSt. wirklich für Ihren Code bedeutet

EntscheidungWas Ihr Code bestimmen muss
LeistungsartHandelt es sich um eine Ware, Dienstleistung oder digitale Dienstleistung?
KundenstandortWelche MwSt.-Regeln welches Landes gelten?
KundentypB2B mit gültiger USt-IdNr. oder B2C-Verbraucher?
SteuersatzNormalsatz, ermäßigt oder Nullsatz?
MechanismusNormale MwSt., Reverse Charge oder OSS?

B2B vs B2C: Die grundlegende Unterscheidung

Die wichtigste Klassifizierung im EU-MwSt.-Recht ist, ob Sie an ein Unternehmen (B2B) oder einen Verbraucher (B2C) verkaufen. Bei B2B-Verkäufen mit einer gültigen USt-IdNr. gilt in der Regel das Reverse-Charge-Verfahren: Der Käufer rechnet die MwSt. in seinem eigenen Land ab, und Sie stellen eine Nullsatz-Rechnung aus.

Warning

Gewähren Sie niemals Steuerbefreiung allein aufgrund der Eigenerklärung eines Kunden als Unternehmen. Validieren Sie die USt-IdNr. immer über VIES oder eine API.

javascriptvat-core.js
// MwSt.-Sätze für ein Land abrufen
async function getMwStSaetze(laenderCode) {
  const res = await fetch(`https://api.taxid.dev/v1/rates?country=${laenderCode}`, {
    headers: { 'Authorization': `Bearer ${process.env.TAXID_API_KEY}` }
  });
  return res.json(); // { standard_rate: 19, reduced_rates: [7] }
}

// USt-IdNr. validieren
async function validateUstIdNr(ustIdNr) {
  const res = await fetch('https://api.taxid.dev/v1/validate', {
    method: 'POST',
    headers: { 'Authorization': `Bearer ${process.env.TAXID_API_KEY}`, 'Content-Type': 'application/json' },
    body: JSON.stringify({ taxId: ustIdNr })
  });
  return res.json(); // { valid: true, companyName: 'Muster GmbH' }
}

Start validating EU VAT numbers

Free plan — 100 validations/month. No credit card required.

AG
Alberto García

Founder, TaxID

Building EU VAT validation tools for developers. Obsessed with compliance automation and developer experience.