CountryValidator.DataAnnotations
1.1.0
See the version list below for details.
dotnet add package CountryValidator.DataAnnotations --version 1.1.0
NuGet\Install-Package CountryValidator.DataAnnotations -Version 1.1.0
<PackageReference Include="CountryValidator.DataAnnotations" Version="1.1.0" />
paket add CountryValidator.DataAnnotations --version 1.1.0
#r "nuget: CountryValidator.DataAnnotations, 1.1.0"
// Install CountryValidator.DataAnnotations as a Cake Addin #addin nuget:?package=CountryValidator.DataAnnotations&version=1.1.0 // Install CountryValidator.DataAnnotations as a Cake Tool #tool nuget:?package=CountryValidator.DataAnnotations&version=1.1.0
Country Validator
Country Validator is a .NET library that can validate VAT codes, national identification numbers and tax identification numbers for individuals and companies
Features
- Validate Social Security Numbers/Personal Identity Numbers
- Validate VAT Codes
- Validate Tax Indentification Numbers for Individuals
- Validate Tax Identification Numbers For Companies
Install
Nuget Package CountryValidator Nuget Package CountryValidator.DataAnnotations
Install-Package CountryValidator
Install-Package CountryValidator.DataAnnotations
How to use Country Validator
Using Validator Class
CountryValidator validator = new CountryValidator();
ValidationResult validationResult = validator.ValidateNationalIdentityCode(ssn, Country.US);
if (validationResult.IsValid)
{
Console.WriteLine("Valid");
}
else
{
Console.WriteLine(validationResult.ErrorMessage);
}
Using Data Annotations
[HttpPost]
public IActionResult ValidateSSN([Required, SSNAttribute(Country.US)]string ssn)
{
if (!ModelState.IsValid)
{
//log exception
}
return Ok();
}
Live Demo
Social Security Number Validation
Supported Countries
Supported Country | Alpha Code 2 | National Identification Number Name | VAT Code |
---|---|---|---|
Austria | AT | Versicherungsnummer (VNR, SVNR, VSNR) | UID (Umsatzsteuer-Identifikationsnummer) |
Belgium | BE | Rijksregisternummer | BTW, TVA, NWSt, ondernemingsnummer (Belgian enterprise number). |
Bulgaria | BG | Edinen grazhdanski nomer (EGN) | Идентификационен номер по ДДС |
Croatia | HR | OIB (Osobni identifikacijski broj, Croatian identification number) | OIB (Osobni identifikacijski broj, Croatian identification number) |
Cyprus | CY | Identity Number | ΦΠΑ |
Czechia | CZ | Rodné Císlo (RČ) | Danove Identifikacni Cislo (DIC/VAT) |
Denmark | DK | Det Centrale Personregister (CPR) | Momsregistreringsnummer (CVR/VAT) |
Estonia | EE | Personal Id - Isikukood | Kaibemaksukohuslase (KMKR) |
Finland | FI | Henkilötunnus (HETU) | Arvonlisaveronumero (ALV) |
France | FR | INSEE/NIR (French personal identification number) | Taxe sur la Valeur Ajoutee (TVA) |
Germany | DE | Steueridentifikationsnummer | Umsatzsteur Identifikationnummer (VAT) |
Greece | GR | AMKA (Αριθμός Μητρώου Κοινωνικής Ασφάλισης, Greek social security number) | VAT Number (FPA) |
Great Britain | GB | NINO or NHS | VAT Reg No |
Hungary | HU | Szemelyi Szam Ellenorzese | Kozossegi Adoszam (ANUM) |
Ireland | IE | PPS No (Personal Public Service Number, Irish personal number). | Irish Tax Reference Number (VAT) |
Italy | IT | Codice fiscale - Fiscal Code | Partita IVA |
Latvia | LV | Personal Code - Personas kods | PVN (Pievienotās vērtības nodokļa, Latvian VAT number) |
Lithuania | LT | Personal Code - Asmens kodas | PVM (Pridėtinės vertės mokestis mokėtojo kodas, Lithuanian VAT number) |
Luxembourg | LU | Personal identification code (PIC) | TVA (taxe sur la valeur ajoutée, Luxembourgian VAT number) |
Malta | MT | Identity Card Number | VAT Number |
Netherlands | NL | Burgerservicenummer (BSN) - Citizen Service Number or Onderwijsnummer | Omzetbelastingnummer (BTW) |
Poland | PL | Polish National Identification Number (PESEL) | Numer Identyfikacji Podatkowej (NIP) |
Portugal | PT | Número de identificação civil - NIC | Numero de Identificacao Fiscal (NIF) |
Romania | RO | Cod Numeric Personal - Personal Numerical Code (CNP) | Cod fiscal TVA |
Slovakia | SK | Rodné Císlo (RČ) | Identifikačné číslo pre daň z pridanej hodnoty (IČ DPH) |
Slovenia | SI | Unique Master Citizen Number JMBG | Identifikacijska številka za DDV |
Spain | ES | DNI/NIF/NIE | NIF / CIF |
Switzerland | CH | AHV (Sozialversicherungsnummer) | VAT, MWST, TVA, IVA, TPV (Mehrwertsteuernummer, the Swiss VAT number). |
Sweden | SE | Personnummer - Personal Identity Number | VAT-nummer or momsnummer |
United States | US | Social Security Number | Not Supported |
License
Copyright 2020 Anghel Valentin
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0
Special thanks
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp1.0 was computed. netcoreapp1.1 was computed. netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard1.2 is compatible. netstandard1.3 was computed. netstandard1.4 was computed. netstandard1.5 was computed. netstandard1.6 is compatible. netstandard2.0 is compatible. netstandard2.1 is compatible. |
.NET Framework | net45 is compatible. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 is compatible. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen30 was computed. tizen40 was computed. tizen60 was computed. |
Universal Windows Platform | uap was computed. uap10.0 was computed. |
Windows Phone | wpa81 was computed. |
Windows Store | netcore451 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.5
- CountryValidator (>= 1.1.0)
- System.ComponentModel.Annotations (>= 4.7.0)
-
.NETFramework 4.7
- CountryValidator (>= 1.1.0)
- System.ComponentModel.Annotations (>= 4.7.0)
-
.NETStandard 1.2
- CountryValidator (>= 1.1.0)
- NETStandard.Library (>= 1.6.1)
- System.ComponentModel.Annotations (>= 4.7.0)
-
.NETStandard 1.6
- CountryValidator (>= 1.1.0)
- NETStandard.Library (>= 1.6.1)
- System.ComponentModel.Annotations (>= 4.7.0)
-
.NETStandard 2.0
- CountryValidator (>= 1.1.0)
- System.ComponentModel.Annotations (>= 4.7.0)
-
.NETStandard 2.1
- CountryValidator (>= 1.1.0)
- System.ComponentModel.Annotations (>= 4.7.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CountryValidator.DataAnnotations:
Package | Downloads |
---|---|
ObjectValidation-CountryValidator
ObjectValidator item validation attributes for CountryValidator.DataAnnotations |
GitHub repositories
This package is not used by any popular GitHub repositories.