====== std.validate.vat ====== Umsatzsteuer-ID-Validierung (VAT-ID) für alle 26 EU-Mitgliedstaaten gemäß den jeweiligen nationalen Formatregeln. Jedes Land definiert ein eigenes Präfix und eigene Prüfregeln — die Unit implementiert länderspezifische Validierungslogik (z.B. Prüfziffer-Algorithmus für DE, Modulo-Prüfung für FR, Format-Regex für PL). Die Normalisierung bereinigt Leerzeichen und Bindestriche vor der Prüfung. Einsatzbereiche sind E-Commerce (B2B-Steuerbefreiung, Reverse-Charge), Rechnungsstellung, Buchhaltungssoftware, ERP-Systeme und EU-Compliance-Prüfungen. ---- ===== Imports ===== * ''std.country'' ---- ===== Konstanten ===== ^ Name ^ Typ ^ Wert ^ Sichtbarkeit ^ | ''VAT_OK'' | ''int64'' | ''0'' | pub | | ''VAT_ERR_INVALID_LENGTH'' | ''int64'' | ''1'' | pub | | ''VAT_ERR_INVALID_CHAR'' | ''int64'' | ''2'' | pub | | ''VAT_ERR_INVALID_FORMAT'' | ''int64'' | ''3'' | pub | | ''VAT_ERR_UNKNOWN_COUNTRY'' | ''int64'' | ''4'' | pub | ---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''VATStrLen(s: int64): int64'' | pub | Zeichenlänge eines VAT-Strings ermitteln | | ''VATIsDigit(c: int64): int64'' | pub | Prüft ob Zeichen eine Ziffer ist | | ''VATIsAlpha(c: int64): int64'' | pub | Prüft ob Zeichen ein Buchstabe ist | | ''VATIsAlphaNum(c: int64): int64'' | pub | Prüft ob Zeichen alphanumerisch ist | | ''VATToUpper(c: int64): int64'' | pub | Zeichen in Großbuchstabe umwandeln | | ''VATDigitToInt(c: int64): int64'' | pub | Ziffernzeichen in Integer umwandeln | | ''VATNormalize(vat: int64): int64'' | pub | VAT-ID normalisieren, Trennzeichen entfernen | | ''VATCountDigits(vat: int64): int64'' | pub | Anzahl der Ziffern in VAT-ID zählen | | ''VATAllDigits(vat: int64): int64'' | pub | Prüft ob VAT-ID nur Ziffern enthält | | ''VATValidateBE(vat: int64): int64'' | pub | Belgische USt-ID validieren | | ''VATValidateDE(vat: int64): int64'' | pub | Deutsche USt-ID validieren | | ''VATValidateAT(vat: int64): int64'' | pub | Österreichische USt-ID validieren | | ''VATValidateFR(vat: int64): int64'' | pub | Französische USt-ID validieren | | ''VATValidateIT(vat: int64): int64'' | pub | Italienische USt-ID validieren | | ''VATValidateES(vat: int64): int64'' | pub | Spanische USt-ID validieren | | ''VATValidateNL(vat: int64): int64'' | pub | Niederländische USt-ID validieren | | ''VATValidatePL(vat: int64): int64'' | pub | Polnische USt-ID validieren | | ''VATValidatePT(vat: int64): int64'' | pub | Portugiesische USt-ID validieren | | ''VATValidateSE(vat: int64): int64'' | pub | Schwedische USt-ID validieren | | ''VATValidateCZ(vat: int64): int64'' | pub | Tschechische USt-ID validieren | | ''VATValidateSK(vat: int64): int64'' | pub | Slowakische USt-ID validieren | | ''VATValidateIE(vat: int64): int64'' | pub | Irische USt-ID validieren | | ''VATValidateLU(vat: int64): int64'' | pub | Luxemburgische USt-ID validieren | | ''VATValidateFI(vat: int64): int64'' | pub | Finnische USt-ID validieren | | ''VATValidateDK(vat: int64): int64'' | pub | Dänische USt-ID validieren | | ''VATValidateGR(vat: int64): int64'' | pub | Griechische USt-ID validieren | | ''VATValidateCY(vat: int64): int64'' | pub | Zypriotische USt-ID validieren | | ''VATValidateHU(vat: int64): int64'' | pub | Ungarische USt-ID validieren | | ''VATValidateRO(vat: int64): int64'' | pub | Rumänische USt-ID validieren | | ''VATValidateSI(vat: int64): int64'' | pub | Slowenische USt-ID validieren | | ''VATValidateHR(vat: int64): int64'' | pub | Kroatische USt-ID validieren | | ''VATValidateLV(vat: int64): int64'' | pub | Lettische USt-ID validieren | | ''VATValidateLT(vat: int64): int64'' | pub | Litauische USt-ID validieren | | ''VATValidateEE(vat: int64): int64'' | pub | Estnische USt-ID validieren | | ''VATValidateMT(vat: int64): int64'' | pub | Maltesische USt-ID validieren | | ''VATValidate(vat: int64): int64'' | pub | USt-ID länderspezifisch validieren | | ''VATGetCountryName(code: int64): int64'' | pub | Ländername anhand Länderkürzel liefern | | ''VATGetFormat(code: int64): int64'' | pub | Erwartetes Format der USt-ID liefern |