TBeCbVATVerification
TBeCbVATVerification
Klasse zur qualifizierten Prüfung von Umstatzsteuer-Nummern (USt-ID) mit integriertem Caching.
Zur qualifizierten Prüfung wird der externe Service des Bundeszentralamt für Steuern (http://evatr.bff-online.de/eVatR/) verwendet.
Für die Prüfung von deutschen USt-IDs oder wenn der Service nicht verfügbar ist, wird eine normale Prüfung über den externen Service der Europäischen Kommission (https://ec.europa.eu/taxation_customs/vies/#/vat-validation) ausgeführt.
Eigenschaften
Eigenschaft | Beschreibung |
---|---|
CbSenderVATID:C | Eigene USt-ID (engl.: VAT-No.) |
CbRequestVATID:C | USt-ID die geprüft werden soll |
CbRequestName:C | Name der Firma die geprüft werden soll (Pflicht für qual. Prüfung) |
CbRequestCity:C | Ort der Firma die gepüft werden soll (Pflicht für qual. Prüfung, kann auch die PLZ enthalten) |
CbRequestPostCode:C | Postleitzahl der Firma die geprüft werden soll |
CbRequestStreet:C | Straße der Firma die gepüft werden soll |
CbRequestPrintedProtocol:L | Protokoll der Anfrage wird auch als gedruckte Version per Post an die hinterlegte Adresse der CbSenderVATID geschickt |
CbTimeOut:N | Zeit in Millisekunden bis die Abfrage abbricht, wenn keine Antwort erfolgt |
CbUseSimpleVerificationAfterTimeOut:L | Einfache Prüfung verwenden, falls qualifizierte Prüfung nicht möglich war |
CbValidCacheDays:N | Anzahl der Tage wie lange eine bereits erfolgte Prüfung nicht online abgefragt wird |
CbUseCache:L | Cache-Logik verwenden |
CbCacheDataSet:O | Tabelle in welcher die Cache-Einträge gespeichert werden VATID C NAME C ORT C PLZ C STRASSE C ERG_NAME N ERG_ORT N ERG_PLZ N ERG_STR N GUELTIGAB D GUELTIGBIS D PRUEFDATUM T ERR_CODE N |
CbResult_ErrorCode:N | Ergebnis der Prüfung, siehe http://evatr.bff-online.de/eVatR/xmlrpc/codes |
CbResultCode_Name:N | Ergebnis der Überprüfung des Firmen-Namens vatrcUnkown nicht definiert vatrcValid stimmt überein vatrcInvalid stimmt nicht überein vatrcNotRequested nicht angefragt vatrcNotSupported vom EU-Mitgliedsstaat nicht mitgeteilt Diese können mittels der Funktion VATResultCodeToText() auch in übersetzbaren Text umgewandelt werden. |
CbResultCode_City:N | Ergebnis der Überprüfung des Firmen-Orts |
CbResultCode_PostCode:N | Ergebnis der Überprüfung der Firmen-Postleitzahl |
CbResultCode_Street:N | Ergebnis der Überprüfung der Firmen-Straße |
CbResult_RequestDateTime:D | Zeitpunkt der Prüfung |
CbResult_ValidFrom:D | Zeitpunkt ab welchem die zu prüfende USt-ID gültig ist |
CbResult_ValidUntil:D | Zeitpunkt bis zu welchem die zu prüfende USt-ID gültig ist |
Funktionen und Methoden
Funktion / Methode | Beschreibung |
---|---|
CbVerify():L | Prüfung ausführen. Rückgabe logisch, ob USt-ID generell gültig |
CbClearCache() | kompletten Cache löschen (Achtung: bei zugewiesenem CacheDataSet wird dieses geleert!) |
Beispiel
|oVerify, lResult|
oVerify := CreateObject('TBeCbVATVerification'),
StartSeq
oVerify.CbTimeOut := 3000,
oVerify.CbValidCacheDays := 1,
oVerify.CbUseCache := True,
oVerify.CbUseSimpleVerificationAfterTimeOut := True,
oVerify.CbRequestPrintedProtocol := False,
oVerify.CbSenderVATID := '', // hier die eigene USt-Id eintragen
oVerify.CbRequestVATID := 'IT00348170101',
oVerify.CbRequestName := 'UniCredit S.p.A.',
oVerify.CbRequestCity := '00186 Roma',
oVerify.CbRequestPostCode := '00186',
oVerify.CbRequestStreet := 'Via A. Specchi 16',
lResult := oVerify.CbVerify(),
WriteLn('*** USt-ID generell gültig ***'),
WriteLn('Gültig: ', lResult),
WriteLn('*** Gültigkeits-Informationen ***'),
WriteLn('Code: ', oVerify.CbResult_ErrorCode),
WriteLn('Name: ', oVerify.CbResultCode_Name),
WriteLn('Ort: ', oVerify.CbResultCode_City),
WriteLn('PLZ: ', oVerify.CbResultCode_PostCode),
WriteLn('Strasse: ', oVerify.CbResultCode_Street),
WriteLn('Abfrage Datum: ', oVerify.CbResult_RequestDateTime),
WriteLn('Gültig ab: ', oVerify.CbResult_ValidFrom),
WriteLn('Gültig bis: ', oVerify.CbResult_ValidUntil),
Always
DestroyObject(oVerify),
StopSeq,