Releases

Version

Datum

Hinweise

Kompatibilität

1.0.020.01.2023Erste veröffentlichte Fassungab Nuclos 4.2022.25.1

Überblick

Bei Warensendungen an gewerbliche Kunden ins Ausland ist eine Prüfung der Umsatzsteuer-ID notwendig. Das Bundeszentralamt für Steuern stellt dafür einen Webservice zur Verfügung: https://www.bzst.de/DE/Unternehmen/Identifikationsnummern/Umsatzsteuer-Identifikationsnummer/AuslaendischeUSt-IdNr/auslaendische_ust_idnr_node.html

Diese Prüfung muss bei Bestätigung eines Auftrags und beim Verladen eines Lieferscheins durchgeführt werden.

Version 1.0

Beschreibung von Version 1.0.0

Thema

Beschreibung

USt-ID-ProtokollDas BO System > USt-ID-Protokoll protokolliert alle vom Nuclet generierten Prüfungen
Protokolle USt-ID-PrüfungÜber das dynamische BO Protokolle USt-ID-Prüfung können die Prüfungsprotokolle über eine generische Referenz-ID zu jedem BO sichtbar gemacht werden (z.B. im Auftrag, Lieferschein, Kunden, etc.)
Verwendung in RegelnDie Klasse PruefungUStIDUtils stellt dazu mehrere Methoden bereit

Verwendung in der Regelprogrammierung von Version 1.0.0

Klasse PruefungUStIDUtils


static UStIDProtokoll execute(PruefungUStIDObjekt pruefungsObjekt)
Führt einen Request durch, mit den in pruefungsObjekt angegebenen Eigenschaften
Beispiel GLS Versandauftrag (JSON)

PruefungUStIDObjekt result = new PruefungUStIDObjekt();

if (!testIsNecessary(kunde)) {
throw new BusinessException("Die Prüfung der UST-ID ist nur für Nicht-Privat-Kunden aus dem EU-Ausland notwendig/möglich.");
} else {
Adresse adresse = getRechnungsadresse(kunde);

result.setUrl(ParameterProvider.getNucletParameter(PruefungUSTIDNucletParameter.URLPruefung));
result.setReferenzObjekt("Kunde");
result.setIdReferenz(kunde.getId());
result.setPruefling(kunde.getKundennr() + " - " + kunde.getKundenname());
result.setIdAdresse(adresse.getId());
result.setValue(PruefungUStIDUtils.Parameter.UST_ID_1, "<Eigene USt-ID>");
result.setValue(PruefungUStIDUtils.Parameter.UST_ID_2, getUStID(kunde));
result.setValue(PruefungUStIDUtils.Parameter.FIRMENNAME, kunde.getKundenname());
result.setValue(PruefungUStIDUtils.Parameter.ORT, adresse.getOrt());
result.setValue(PruefungUStIDUtils.Parameter.PLZ, adresse.getPlz());
result.setValue(PruefungUStIDUtils.Parameter.STRASSE, adresse.getStrasse());
   
    UStIDProtokoll protokoll = PruefungUStIDUtils.getTestResult(pruefungsObjekt);
    if (protokoll != null && !protokoll.getErfolg()) {
throw new BusinessException("Der Test der USt-ID " + kunde.getUstid()
+ " des Kunden \"" + kunde.getKundennr() + " - " + kunde.getKundenname()
+ "\" war nicht erfolgreich: \n" + protokoll.getErgebnistext());
}
}


Integration von Version 1.0.0

Die Integration nach erfolgtem Nuclet-Import (siehe Nuclet Import) ist wie folgt vorzunehmen.

Schritt

Beschreibung

Screenshot

1Führen Sie einmalig die Jobs Initialisiere Nuclet REST-Client-Utils und Initialisiere Nuclet PruefungUStID (unter Administration > Jobsteuerung) aus
  • No labels