Umsatzsteuer-(USTID)-Validierung PRO für B2B (Shopware 6)

Nutzbar in: Self-Managed

Validiere die Umsatzsteuer-ID Deiner Kunden einfach mit unserem Plugin mit vielen Optionen, um Deinen Pflichten nach dem EU-Steuerrecht ausreichend nachzukommen.

Umsatzsteuer-(USTID)-Validierung PRO für B2B Plugin für Shopware 6 im Shopware Community Store

Funktionalitäten bis Shopware 6.3.5.4

  • Die USTID wird im Checkout geprüft.
  • Direkte Schnittstellenanbindung an DE- /EU-API.
  • Jede Anfrage an eine Schnittstelle wird geloggt und in der Datenbank gespeichert.
  • Bei jeder Adressanlage/-änderung wird die Validierung für Unternehmen in der  EU vorgenommen.
  • Bei der Eingabe falscher Daten werden Vorschläge zur Verbesserung angezeigt.
  • Bei der Absendung jeder Bestellung wird die USTID erneut geprüft.
  • Bei der Absendung der Bestellung wird optional geprüft, ob Liefer- und Rechnungsadresse bzw. Liefer- und Rechnungsland identisch sind.

Funktionalitäten ab Shopware 6.4.0.0

  • Prüft die USTID von EU-Unternehmen.
  • Direkte Schnittstellenanbindung an DE- /EU-API
  • Jede Anfrage an eine Schnittstelle wird geloggt und in der Datenbank gespeichert.
  • Validierung erfolgt automatisch 1x pro Tag oder bei Änderung der Adresse.
  • Validierung bei Registrierung möglich.
  • Beim Hinterlegen der USTID im Kundenaccount wird diese validiert.
  • Beim Bestellabschluss werden Lösungsvorschläge in einer Übersicht angezeigt, wenn die USTID nicht korrekt war.
  • Für steuerfreie Länder wird die Bestellung ohne MwSt angezeigt.
  • Zu Beachten gilt: Deutsche USTIDs werden nicht validiert.

Einstellungsmöglichkeiten / Konfiguration bis Shopware 6.3.5.4

Ihre USTID
Gib hier Deine Umsatzsteuer-ID ein, damit unser Plugin die Umsatzsteuer-IDs Deiner Kunden prüfen kann.

Online-Validierungstyp
Es gibt die Online-Validierungstypen "Offline", "Einfach" und "Erweitert". Bei "Keiner" wird nur der Offline-Plausibilitätscheck (mehr als drei Zeichen und weniger als 15 Zeichen) durchgeführt. Bei "Einfach" wird geprüft, ob die Umsatzsteuer-ID gültig ist. Bei "Erweitert" wird geprüft, ob USTID und Adresse zueinander passen.

Zusätzliche Bestell-Validierung
Hier kannst Du zwischen den Optionen "Gleiche Adresse" oder "Gleiches Land bei Rechnungs- und Lieferadresse" wählen.
Bei der Wahl "Gleiches Land bei Rechnungs- und Lieferadresse" aktivierst du eine weitere Überprüfung die verhindert, dass ausländische Kunden nicht die USTID einer Firma angeben können und dann an Ihre private Adresse steuerfrei liefern können.
Bei der Wahl "Gleiche Adresse" müssen Rechnungs- und Lieferadresse übereinstimmen.

Steuerfreie Länder bei Eingabe einer USTID
Hinterlege hier Länder, in die Du steuerfrei liefern möchtest, wenn der Kunde eine USTID angibt.

Einstellungsmöglichkeiten / Konfiguration ab Shopware 6.4.0.0

Ihre Umsatzsteuer-ID
Gib hier Deine Umsatzsteuer-ID ein, damit unser Plugin die Umsatzsteuer-IDs Deiner Kunden prüfen kann.

Adresse für Validierung
Du kannst festlegen welche Adresse als Grundlage für die Validierung dienen soll. Zur Auswahl stehen die Rechnungs- oder Lieferadresse. Wir empfehlen stets die Lieferadresse zu verwenden.

Validierung bei Registrierung
Die Validierung der UST-ID erfolgt bei der Registrierung. Unter den Validierungstypen "Keine", "Offline", "Einfach" und "Erweitert" kann gewählt werden. Bei "Offline" wird nur der Offline-Plausibilitätscheck (mehr als drei Zeichen und weniger als 15 Zeichen) durchgeführt. Bei "Einfach" wird geprüft, ob die Umsatzsteuer-ID gültig ist. Bei "Erweitert" wird geprüft, ob USTID und Adresse zueinander passen sowie passende Vorschläge zur Korrektur werden angezeigt.

Validierung bei Profil-Update
Die Validierung der UST-ID erfolgt bei der Änderung der USTID im Profil Deines Kunden. Die Validierungstypen "Keine", "Offline" und "Einfach" stehen zur Auswahl. Bei "Offline" wird nur der Offline-Plausibilitätscheck (mehr als drei Zeichen und weniger als 15 Zeichen) durchgeführt. Bei "Einfach" wird geprüft, ob die Umsatzsteuer-ID gültig ist.

Validierung bei Steuerfreiheit + Bestellabschluss
Du kannst festlegen, welcher Validierungstyp für Deine Kunden gewählt wird, die aufgrund ihres Landes steuerfrei bestellen können. Zur Auswahl stehen die Validierungstypen "Offline", "Einfach" und "Erweitert". Bei "Offline" wird nur der Offline-Plausibilitätscheck (mehr als drei Zeichen und weniger als 15 Zeichen) durchgeführt. Bei "Einfach" wird geprüft, ob die Umsatzsteuer-ID gültig ist. Bei "Erweitert" wird geprüft, ob USTID und Adresse zueinander passen sowie passende Vorschläge zur Korrektur werden angezeigt.

Validierung als "valide" durchgehen lassen, wenn von allen APIs ein Fehler zurückgegeben wird:
aktiv / inaktiv

Zusätzliche Validierung für steuerfreie Lieferung:
Es gibt die Validierungstypen "Keine", "gleiche Adresse" und "Gleiches Land bei Rechnungs- und Lieferadresse". Das Plugin überprüft bei "Gleiche Adresse", ob die ausgewählte Adresse mit der Adresse der USTID übereinstimmt. So kannst Du verhindern, dass ausländische Kunden die USTID einer Firma angeben können und dann die Ware steuerfrei an ihre private Adresse geliefert bekommen. Bei "Gleiches Land bei Rechnungs- und Lieferadresse" wird überprüft ob das Lieferland von Liefer- und Rechnungsadresse identisch ist.

Hinweis auf /checkout/confirm anzeigen, wenn bei Land mit "Steuerfreiheit (B2B)" keine USTID hinterlegt ist
aktiv / inaktiv

Adressvorschläge ins lateinische Alphabet übersetzen?
aktiv / inaktiv

Bestellung blockieren, wenn USTID-Prüfung nicht gültig ist?
Mit dieser Funktion kannst Du verhindern, dass Bestellungen abgeschlossen werden können, wenn die USTID-Prüfung nicht gültig ist. Erst wenn die USTID-Prüfung valide ist, kann die Bestellung abgeschlossen werden.

Installationsanleitung

  1. Installiere und aktiviere das Plugin.
  2. Nun kannst Du das Plugin konfigurieren. Folgende Einstellungen sind nötig, damit das Plugin richtig funktioniert.
    • Die USTID muss eingetragen werden.
    • Die Validierung bei Adressänderung muss aktiv sein.
    • Die Validierung bevor Bestellung gespeichert wird muss aktiv sein.
  3. Unter "Einstellungen" → "Shop" → "Login/Registrierung" muss die Option "Auswahl zwischen Firmen- und Kundenkonto anzeigen" aktiviert werden.
  4. ab 6.4.0.0: Für Länder, die steuerfrei sind (bspw. Frankreich), müssen unter Einstellungen → Shop → Länder "Steuerfrei für Unternehmen" aktiviert werden.
  5. Fertig

Zu Beachten bei einem Update auf 6.4.0.0:
Nach dem Update ist eine Neukonfiguration des Plugins notwendig. Bitte öffne die Konfiguration des Plugins und lege die Einstellungen wie gewünscht fest.
Unsere Empfehlung:

  • Validierung bei Registrierung: Erweitert
  • Validierung bei Profil-Update: Einfach
  • Validierung bei Steuerfreiheit + Bestellabschluss: Erweitert
  • Validierung als "valide" durchgehen lassen, wenn von allen APIs ein Fehler zurückgegeben wird: aktiv
  • Zusätzliche Validierung für steuerfreie Lieferung: Gleiches Land bei Rechnungs- und Lieferadresse


Nach dem Update müssen die Länder, die steuerfrei sind, unter Einstellungen -> Shop -> Länder für jedes Land eingestellt werden. Dies war davor im Plugin möglich und ist jetzt in den Shopware Standard gewechselt.

Voraussetzungen

  • php-soap

Changelog

Version 2.0.19
BUGFIX | Verbessertes Handling von API-Fehlern.

Version 2.0.18
IMPROVEMENT | Twig-Blöcke zu Bestellübersichtsseite hinzugefügt.

Version 2.0.17
FEATURE | Zeige USTID in Bestell-Detailseite (Adminbereich)

Version 2.0.16
BUGFIX | Fehler bei Privatkunden-Registrierung behoben.

Version 2.0.15
TASK | Kompatibilität mit Shopware >= 6.4.12.0

Version 2.0.14
BUGFIX | Verhindert, dass falsche USTIDs mit den Zeichen , . - (Leerzeichen) als valide validiert werden.

Version 2.0.13
IMPROVEMENT | Validierung für XI (Nordirland) hinzugefügt.
Hinweis:
- Wir empfehlen Nordirland als eigenes Land anzulegen und nur dort Steuerfrei für Unternehmen anzuhaken.
- Als Länder-ISO für Nordirland muss GB oder XI hinterlegt werden.

Version 2.0.12
TASK | Fehlende Übersetzungen in englischen Snippets hinzugefügt.

Version 2.0.11
BUGFIX | Steuerfreiheit wurde nicht korrekt ermittelt, bei Einstellungen der Validierungsadresse auf Rechnungsadresse. (Wenn Rechnungsadresse ohne Steuerfreiheit und Lieferadresse mit Steuerfreiheit für B2B eingestellt war.)

Version 2.0.10
IMPROVEMENT | Option hinzugefügt, um Bestellungen bei ungültigen USTID-Check zu verhindern.

Version 2.0.9
IMPROVEMENT | Option hinzugefügt, um Adressvorschläge ins lateinische Alphabet zu übersetzen.

Version 2.0.8
BUGFIX | Verbessertes Handling für leere USTID.
IMPROVEMENT | Option auf /checkout/confirm-Seite hinzugefügt, um einen Hinweis anzuzeigen/zu verstecken, wenn ein steuerfreies Land gewählt ist, aber keine USTID eingegeben wurde.
TASK | Text von Snippet ``checkout.lenzVatIdValidation.header`` geändert.

Version 2.0.7
IMPROVEMENT | Verbesserte Kompatibilität mit Third-Party-Plugins.
BUGFIX | Adressdatenerkennung für SI-Adressdaten aktualisiert.
IMPROVEMENT | Event beim Logging hinzugefügt.

Version 2.0.6
IMPROVEMENT | Einstellung hinzugefügt, um Adresse für Validierung zu wählen (Rechnung oder Lieferung).
IMPROVEMENT | Benutze immer Rechnungsadresse, um die USTID bei der Registrierung zu prüfen.
TASK | Kompatibilität mit Shopware 6.5.x.x.
BUGFIX | Steuer wurde in manchen Fällen nicht korrekt berechnet, wenn eine private Adresse verwendet wurde.

Version 2.0.5
BUGFIX | Validierungshinweis auf /checkout/confirm wurde angezeigt, auch wenn keine Validierung möglich war (z.B. Schweiz).
TASK | Code in TaxDetector aufgeräumt.

Version 2.0.4
BUGFIX | Behebt einen Bug (von Shopware), der die Registrierung verhindert hat, wenn ein Validierungsfehler bei einer Registrierungsadresse auftrat.

Version 2.0.3
IMPROVEMENT | PL Regex aktualisiert

Version 2.0.2
IMPROVEMENT | Verhindert Validierung von Schweizer UIDs (CHE-XXX.XXX.XXX).

Version 2.0.1
BUGFIX | Validierung für Privatkunden / Privatkunden-Adressen deaktiviert.

Version 2.0.0
TASK | Neuentwicklung des Plugins für Shopware 6.4.0.0, da Shopware die USTID nun nicht mehr bei den Adressen speichert, sondern beim Kundenkonto.
ACHTUNG: Nach dem Update ist eine Neukonfiguration des Plugins notwendig. Bitte öffnen Sie die Konfiguration des Plugins und stellen Sie die Einstellungen wie gewünscht ein. Unsere Empfehlung:
Validierung bei Registrierung: Erweitert
Validierung bei Profil-Update: Einfach
Validierung bei Steuerfreiheit + Bestellabschluss: Erweitert
Validierung als "valide" durchgehen lassen, wenn von allen APIs ein Fehler zurückgegeben wird: aktiv
Zusätzliche Validierung für steuerfreie Lieferung: Gleiches Land bei Rechnungs- und Lieferadresse
ACHTUNG: Nach dem Update müssen die Länder, die steuerfrei sind, unter Einstellungen -> Shop -> Länder für jedes Land eingestellt werden. Dies war davor im Plugin möglich und ist jetzt in den Shopware Standard gewechselt.
Neue Features:

- Validierung wird nun 1x pro Tag automatisch ausgeführt, wenn Kunde im Shop ist.

- Validierungen werden nun so gespeichert und verarbeitet, dass nur noch bei Änderungen der Adresse oder max. 1x pro Tag bei gleichlautenden Adressdaten validiert wird. Ausnahme: Kunde wechselt die Lieferadresse. Dann wird die neue Lieferadresse sofort geprüft.

- Kunde bekommt auf Bestellbestätigungsseite (/checkout/confirm) eine Übersicht angezeigt, ob die Validierung der USTID funktioniert hat und sieht dort direkt, welche Validierungsfehler es gibt.

- Validierung bei Registrierung kann eingestellt werden.

- Validierung bei Hinterlegung der USTID im Kundenaccount kann auf Gültigkeit geprüft werden.

- Validierung vor Absenden der Bestellung, mit Hinweis auf innergemeinschaftliche Lieferung

- Steuerfrei für Firmen muss nun unter Einstellungen -> Shop -> Länder für jedes Land eingestellt werden, davor war dies auch im Plugin möglich.

- Infos zur Validierung: https://www.frankfurt-main.ihk.de/recht/steuerrecht/umsatzsteuer_international/innergemeinschaftliche_lieferungen/

Version 1.0.18
TASK | plugin.png aktualisiert.
IMPROVEMENT | Kompatibilität mit Shopware 6.5.3.x.

Version 1.0.17
BUGFIX | Registrierung mit fehlerhafter Validierung führte zu einem kaputten Formular nach dem Absenden.
BUGFIX | Es wurde ein Fehler geworfen, wenn eine API eine leere Antwort zurückgab.

Version 1.0.16
IMPROVEMENT | Option hinzugefügt, um die Validierung zu umgehen, wenn alle APIs nicht erreichbar sind.
TASK | Code aufgeräumt.

Version 1.0.15
IMPROVEMENT | Neue API-Antwort zu den Antworten hinzugefügt, die als API nicht erreichbar gekennzeichnet werden.

Version 1.0.14
BUGFIX | Registrierung mit fehlerhafter Validierung führte zu einem kaputten Formular nach dem Absenden.

Version 1.0.13
TASK | GB wegen Brexit entfernt.
TASK | Option "Erweitert + Brief" entfernt, da nicht mehr möglich.
Bitte die Option "Online-Validierungstyp" nach dem Update prüfen und neu einstellen.

Version 1.0.12
IMPROVEMENT | Offline-Validierung prüft, ob Land zu USTID passt.
TASK | USTID-Validierung bei Ajaxx-Adress-Editor deaktiviert, da Shopware hier keine Fehlermeldungen ausgeben kann.
IMPROVEMENT | Eingegebene Werte für Straße, PLZ und Stadt werden nun bei fehlerhafter Validierung gefüllt.
TASK | Fehlerbehebung für einen Shopware-Fehler ist nicht mehr notwendig und daher entfernt.
Bitte immer "Validierung bevor Bestellung gespeichert wird" aktivieren.

Version 1.0.11
TASK | Behebt einen Fehler, der von Shopware kommt und dafür sorgt, dass nach einer falschen Validierung die Registrierung nicht abgeschickt werden kann.

Version 1.0.10
IMPROVEMENT | EU-API-Validierung für französische Adressen ignoriert nun Teile der Adresse, die nicht relevant sind.

Version 1.0.9
BUGFIX | Behebt einen Fehler, der aus v1.0.8 kommt.

Version 1.0.8
TASK | Behebt einen Fehler, der von Shopware kommt und dafür sorgt, dass nach einer falschen Validierung die Registrierung nicht abgeschickt werden kann.

Version 1.0.7
BUGFIX | Behebt einen Fehler, wenn kein Wert bei Plugin-Konfiguration  "taxFreeCountriesWithVatId" gesetzt ist.
IMPROVEMENT | Optionen hinzugefügt, um wählen zu können, wo die Validierung aktiv ist (Adressänderung, bevor Bestellung gespeichert wird).
TASK | Code cleanup.

Version 1.0.6
IMPROVEMENT | Option hinzugefügt, um steuerfrei in ausgewählte Länder zu versenden, wenn eine USTID eingegeben wurde.
Nach der Installation des Updates können in den Plugin-Einstellungen Länder definiert werden, die eine steuerfreie Lieferung erlauben. Wenn ein Kunde eine Bestellung mit USTID in der Lieferadresse und Lieferadresse in ein hinterlegtes Land tätigt, wird die Bestellung steuerfrei.

Version 1.0.5
BUGFIX | Erlaubt HTML in bestimmten Datenbankfeldern.

Version 1.0.4
TASK | Anpassungen für Shopware 6.3.0.0.
BUGFIX | Fehler im Account auf der "Personal"-Seite behoben.
BUGFIX | Behebt einen Fehler der durch einen falsch benannten block von Shopware entstand (component_address_personal_account_type).
IMPROVEMENT | Formluare behalten nun die Firmendaten, auch wenn die Validierung fehlschlägt.

Version 1.0.3
BUGFIX | Behebt einen Tippfehler im Twig-Template.

Version 1.0.2
BUGFIX | Debug code entfernt.

Version 1.0.1
IMPROVEMENT | Behebt einen Fehler in Shopware, der das "Ich bin"-Feld auf der Registrierungsseite nicht korrekt ausgefüllt hat, wenn ein Validierungsfehler besteht.

Version 1.0.0
BUGFIX | Problem auf der Registrierungsseite behoben, das auftrat, wenn eine alternative Lieferadresse mit USTID gewählt wurde.

Version 0.0.2
BUGFIX | Debug-Ausgabe nach Checkout entfernt.
IMPROVEMENT | Offline-Validierung refaktoriert.

Version 0.0.1
Erste Version des Plugins für Shopware 6.

Fragen & Antworten zu Umsatzsteuer-(USTID)-Validierung PRO für B2B (SW6)

An welchen Stellen im Shop wird die USTID validiert?

  1. Rechnungsadresse bei der Registrierung
  2. Adressänderung
  3. Bestellabschluss

Wie erfolgt die Prüfung der USTID?

Bei der Registrierung, beim Ändern einer Adresse oder beim Bestellabschluss prüft das Plugin, ob eine USTID angegeben ist. Sobald eine USTID angegeben ist, sendet das Plugin als erstes eine Anfrage an die deutsche Schnittstelle. Ist die USTID gültig, wird die Adresse gespeichert. Ist die USTID ungültig wird per EU-API geprüft. Die EU-API hat den Vorteil, dass sie bei vielen Ländern die erwarteten Daten ausgibt, sodass das Plugin dem Kunden direkt vorschlägt, was fehlerhaft ist. Ist alles korrekt, wird die Adresse gespeichert.

Bei welchen Ländern wird die Validierung der USTID ausgeführt?

Voraussetzungen: 1) EU-Land 2) Land als steuerfrei für Unternehmen markiert