Walter.Vat 2021.11.9.2021

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Walter.Vat --version 2021.11.9.2021
                    
NuGet\Install-Package Walter.Vat -Version 2021.11.9.2021
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Walter.Vat" Version="2021.11.9.2021" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Walter.Vat" Version="2021.11.9.2021" />
                    
Directory.Packages.props
<PackageReference Include="Walter.Vat" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Walter.Vat --version 2021.11.9.2021
                    
#r "nuget: Walter.Vat, 2021.11.9.2021"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Walter.Vat&version=2021.11.9.2021
                    
Install Walter.Vat as a Cake Addin
#tool nuget:?package=Walter.Vat&version=2021.11.9.2021
                    
Install Walter.Vat as a Cake Tool

About this package

Allows you to query the VAT interface for the European union or the united kingdom


var vies = await Walter.Vat.EuropeanVatInformationQuery.GetAsync("LU12345678").ConfigureAwait(false);

You can do UK VAT validation (even after brexit) using UK as county code and the 9 or 12 number VAT ID


var vies = await Walter.Vat.EuropeanVatInformationQuery.GetAsync("UK123456789").ConfigureAwait(false);

You could integrate this in a controller using the Walter.Bom NuGet package testing if a country is in the EU


[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> ProcessOrder(Order model)
{
    if (!ModelState.IsValid)
        return View(model);

    if (model.Country.IsInTheEuropeanUnion())
    {
        var vies = await Walter.Vat.EuropeanVatInformationQuery.GetAsync(model.VATNumber).ConfigureAwait(false);
        if (!vies.IsValid || !vies.CompanyName.Equals(model.CompanyName, StringComparison.OrdinalIgnoreCase))
        {
            if (!vies.IsValid)
            {
                if (vies.Exception is null)
                {
                    _logger?.Lazy().LogWarning(vies.Exception, "Query European VAT failed with a for {vat} in {country}", model.VATNumber, model.Country);
                }
                else
                {
                    _logger?.Lazy().LogWarning(vies.Exception, "Query European VAT failed with a {exception} exception error {message}", vies.Exception.GetType().Name, vies.Exception.Message);
                }

                ModelState.AddModelError(nameof(model.VATNumber), "The VAT number is not valid");
            }

            if (!vies.CompanyName.Equals(model.CompanyName, StringComparison.OrdinalIgnoreCase))
            {
                ModelState.AddModelError(nameof(model.VATNumber), $"The VAT ID provided is belongs to another company than the one you specified, did you enter the wrong ID?");
                if (vies.CompanyName.Contains(model.CompanyName, StringComparison.OrdinalIgnoreCase))
                {
                    ModelState.AddModelError(nameof(model.CompanyName), $"The VAT number provided is belongs to {vies.CompanyName}, this sounds like {model.CompanyName} but you should update it to avoid complications.");
                }
                else
                {
                    ModelState.AddModelError(nameof(model.CompanyName), $"The VAT number provided is belongs to {vies.CompanyName} did you provide the wrong name?");
                }
            }

            return View(model);
        }
    }
}
Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  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 tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2023.11.13.1117 799 11/13/2023
2023.10.26.1502 152 10/29/2023
2023.10.22.845 155 10/22/2023
2023.10.12.1926 155 10/12/2023
2023.9.14.812 172 9/14/2023
2023.9.7.1748 148 9/7/2023
2023.9.7.1241 130 9/7/2023
2023.9.6.1001 147 9/6/2023
2023.9.5.1246 146 9/5/2023
2023.9.5.1032 146 9/5/2023
2023.8.31.1522 165 8/31/2023
2023.8.29.1040 174 8/29/2023
2023.8.17.901 170 8/17/2023
2023.8.9.1314 159 8/9/2023
2023.8.2.750 184 8/2/2023
2023.7.12.830 170 7/12/2023
2023.7.5.1419 171 7/6/2023
2023.6.14.1628 170 6/14/2023
2023.6.11.1304 176 6/11/2023
2023.5.30.1640 180 5/30/2023
2023.5.4.1552 212 5/4/2023
2023.5.1.1524 231 5/1/2023
2023.4.29.910 222 4/29/2023
2023.4.12.1236 245 4/12/2023
2023.3.22.1456 265 3/22/2023
2023.3.14.1356 258 3/14/2023
2023.3.1.810 275 3/1/2023
2023.2.25.11857 290 2/25/2023
2023.2.22.27 292 2/22/2023
2023.2.15.1413 294 2/15/2023
2023.2.11.1628 307 2/11/2023
2023.1.11.534 379 1/11/2023
2022.12.30.711 382 12/30/2022
2022.12.15.1108 372 12/15/2022
2022.12.14.648 337 12/14/2022
2022.11.27.1059 381 11/27/2022
2022.11.21.338 407 11/21/2022
2022.11.14.1819 400 11/14/2022
2022.11.13.917 419 11/14/2022
2022.10.31.740 427 11/1/2022
2022.10.15.652 474 10/15/2022
2022.10.1.810 480 10/1/2022
2022.9.26.1444 502 9/26/2022
2022.9.14.1508 555 9/14/2022
2022.9.14.809 586 9/14/2022
2022.9.8.1009 522 9/8/2022
2022.8.20.1007 497 8/20/2022
2022.8.1.1 619 7/31/2022
2022.7.1300 568 7/1/2022
2022.7.31.1016 486 7/31/2022
2022.7.15.841 496 7/15/2022
2022.6.21.647 520 6/21/2022
2022.5.18.638 512 5/19/2022
2022.5.16.853 499 5/19/2022
2022.5.16.816 512 5/16/2022
2022.5.4.1010 522 5/4/2022
2022.4.10.947 541 4/10/2022
2022.4.10.925 524 4/10/2022
2022.4.10.828 548 4/10/2022
2022.4.1.1545 568 4/1/2022
2022.3.31.823 531 3/31/2022
2022.3.26.1103 532 3/26/2022
2022.3.26.820 486 3/26/2022
2022.3.25.840 520 3/26/2022
2022.3.24.1701 530 3/25/2022
2022.2.16.1131 543 2/17/2022
2022.2.16.834 549 2/17/2022
2022.2.5.1114 556 2/5/2022
2022.1.17.1158 563 1/17/2022
2022.1.10.1505 559 1/10/2022
2022.1.10.537 362 1/10/2022
2022.1.5.1139 362 1/8/2022
2021.12.28.1452 406 12/28/2021
2021.12.16.812 430 12/16/2021
2021.11.23.1528 6,637 11/24/2021
2021.11.21.925 364 11/22/2021
2021.11.19.847 468 11/19/2021
2021.11.18.1824 382 11/16/2021
2021.11.10.852 390 11/10/2021
2021.11.9.2021 419 11/9/2021
2021.11.8.2109 417 11/9/2021
2021.11.8.1612 395 11/8/2021
2021.11.7.1021 390 11/8/2021
2021.11.3.1612 397 11/4/2021
2021.11.1.1102 449 11/1/2021
2021.10.25.1206 489 10/25/2021
2021.10.23.1310 441 10/25/2021
2021.10.19.1522 458 10/19/2021
2021.10.16.1325 459 10/18/2021
2021.10.6.1546 716 10/6/2021
2021.10.5.1450 433 10/5/2021
2021.10.4.1155 491 10/5/2021
2021.10.4.807 441 10/5/2021
2021.10.1.753 418 10/1/2021
2021.9.29.1127 428 9/29/2021
2021.9.27.1005 456 9/28/2021
2021.9.26.1913 461 9/26/2021
2021.9.19.1015 472 9/19/2021
2021.9.17.1702 444 9/17/2021
2021.9.17.1449 436 9/17/2021
2021.9.13.1600 443 9/13/2021
2021.9.12.1100 429 9/13/2021
2021.9.11.2004 492 9/11/2021
2021.9.9.1110 465 9/9/2021
2021.9.7.1901 491 9/8/2021
2021.9.6.1518 467 9/7/2021
2021.9.4.1124 436 9/4/2021
2021.9.2.708 446 9/4/2021
2021.9.0.1259 411 9/2/2021
2021.8.2100 438 8/23/2021
2021.8.22.900 427 8/22/2021
2021.8.18.1500 432 8/18/2021
2021.8.18.930 427 8/18/2021
2021.8.14.1600 413 8/16/2021
2021.8.14.829 425 8/14/2021
2021.8.8.1612 422 8/8/2021
2021.8.8.1138 419 8/8/2021
2021.8.6.1044 481 8/6/2021
2021.8.4.1355 478 8/5/2021
2021.7.30.2118 484 7/31/2021
2021.7.27.926 447 7/28/2021
2021.7.23.931 407 7/26/2021
2021.7.22.1456 448 7/23/2021
2021.7.15.1547 444 7/15/2021
2021.7.13.812 477 7/13/2021
2021.7.8.1527 579 7/10/2021
2021.7.5.1649 438 7/5/2021
2021.6.29.1453 508 6/30/2021
2021.6.26.1753 486 6/27/2021
2021.6.25.1849 467 6/25/2021
2021.6.24.1518 475 6/24/2021
2021.6.20.729 485 6/20/2021
2021.6.15.2006 457 6/15/2021
2021.6.14.2025 460 6/15/2021
2021.6.13.2035 441 6/14/2021
2021.6.12.1154 430 6/13/2021
2021.6.9.1120 420 6/9/2021
2021.6.7.2103 413 6/7/2021
2021.6.3.1509 520 6/3/2021
2021.5.31.1533 509 5/31/2021
2021.5.31.1415 470 5/31/2021
2021.5.25.1732 476 5/25/2021
2021.5.24.1128 489 5/24/2021
2021.5.24.1019 459 5/24/2021
2021.5.12.1054 454 5/12/2021
2021.5.12.637 439 5/12/2021
2021.5.10.1442 430 5/11/2021
2021.5.8.1226 442 5/8/2021
2021.5.6.2037 501 5/6/2021
2021.5.5.1901 471 5/6/2021
2021.5.3.1621 444 5/4/2021
2021.5.1.905 488 5/1/2021
2021.4.28.1511 447 4/28/2021
2021.4.20.1520 428 4/21/2021
2021.4.16.738 449 4/21/2021
2021.4.14.1216 445 4/16/2021
2021.4.9.1538 456 4/13/2021
2021.4.8.947 456 4/13/2021
2021.4.6.1235 426 4/6/2021
2021.4.5.1653 464 4/5/2021
2021.4.1.913 436 4/1/2021
2021.3.31.2003 476 4/1/2021
2021.3.18.1622 465 3/18/2021
2021.3.3.1259 508 3/3/2021
2021.3.2.1415 468 3/2/2021
2021.3.1.11 488 2/28/2021
2021.3.1.1 471 2/27/2021
2021.3.1 471 2/27/2021
2021.2.23.6 499 2/23/2021
2021.2.21.1 469 2/21/2021
2021.2.20.1 495 2/20/2021
2021.2.19.2 464 2/19/2021
2021.2.18.6 474 2/19/2021
2021.2.17.1 463 2/17/2021
2021.2.16.1 452 2/16/2021
2021.2.15.3 470 2/15/2021
2021.2.15.1 456 2/14/2021
2021.2.14.3 449 2/14/2021
2021.2.12.6 422 2/12/2021
2021.2.12.2 455 2/12/2021
2021.2.11.1 491 2/11/2021
2021.2.10.1 490 2/10/2021
2021.2.8.1 453 2/9/2021
2021.2.7.1 492 2/6/2021
2020.12.27.6 557 12/27/2020
2020.12.27.1 512 12/27/2020
2020.12.26.7 526 12/27/2020
2020.12.26.5 506 12/27/2020
2020.12.26.3 528 12/27/2020
2020.12.19.1 642 12/19/2020
2020.12.16.1 505 12/16/2020
2020.12.15.1 500 12/15/2020
2020.12.14.5 538 12/14/2020
2020.12.14.4 530 12/14/2020
2020.12.14.3 549 12/14/2020
2020.12.5 587 12/5/2020
2020.12.4.1 512 12/4/2020
2020.12.4 519 12/4/2020
2020.12.2.3 580 12/2/2020
2020.12.1 558 12/1/2020
2020.11.28 553 11/28/2020
2020.11.27.2 536 11/27/2020
2020.11.25.1 524 11/25/2020
2020.11.22.3 764 11/23/2020
2020.11.20.1 565 11/21/2020
2020.11.19.3 532 11/19/2020
2020.11.18.1 574 11/18/2020
2020.11.15.1 545 11/15/2020
2020.11.11.1 531 11/11/2020
2020.11.8.1 9,324 11/8/2020
2020.11.5.1 494 11/5/2020
2020.11.3.1 547 11/3/2020
2020.10.30.1 577 11/1/2020
2020.10.15.3 543 10/15/2020
2020.10.15.2 531 10/15/2020
2020.10.14.1 554 10/14/2020
2020.10.13.1 523 10/13/2020
2020.10.12.2 611 10/12/2020
2020.10.12.1 537 10/12/2020
2020.10.10.1 680 10/10/2020
2020.10.9.6 527 10/9/2020
2020.10.9.5 522 10/9/2020
2020.10.9.2 534 10/9/2020
2020.10.9.1 528 10/9/2020
2020.10.6.8 575 10/7/2020
2020.10.6.7 581 10/7/2020
2020.10.6.6 572 10/7/2020
2020.10.6.5 590 10/7/2020
2020.10.6.4 536 10/7/2020
2020.10.6.3 582 10/7/2020
2020.10.6.1 559 10/7/2020
2020.10.5.1 550 10/6/2020
2020.10.1.3 502 10/1/2020
2020.10.1.2 529 10/1/2020
2020.10.1.1 529 10/1/2020
2020.9.29.10 583 9/29/2020
2020.9.29.9 586 9/29/2020
2020.9.28.1 550 9/28/2020
2020.9.25.1 715 9/26/2020
2020.9.24.2 575 9/24/2020
2020.9.17.2 557 9/17/2020
2020.9.16 608 9/16/2020
2020.9.15 613 9/16/2020
2020.9.14 579 9/14/2020

Major releases that add functionality other than optimization and minor bug fixing
9 November 2021
- Fix package dependency on vulnerable packages from Microsoft by upgrading vulnerable packages

8 November 2021
- Update to .Net NuGet packages .NET 6.0.0, .NET 5.0.403 and core 3.1.415

11 October 2021
- CodeSign the binaries as well as the NuGet package for executing in a trust-platform
- Add support for VAT lookup in Scotland,Norther island and England via country code GeoLocation.UnitedKingdom

19 September
- Update NuGet packages release for .Net 5.0.10

8 Aug 2021
- update to .NET 6.0 SDK (v6.0.100-preview.6)

30 June 2021
- Add .Net 6.0 binaries to the nuget package

15 June 2021
- Update to .Net Core 3.1.17 and .Net 5.0.8 SDK

09 June 2021
- Update to .Net SDK 5.0.301 and 3.1.410

07 June 2021
- Update NuGet Package references

25 May 2021
- Update after .net package updates

12 April 2021
- Update to new code base after .net security violation fix

05 April 2021
- update package references
- Add support for .Net Standard 2.0

22 March 2021
- Performance update

05 March 2021
- Update package reference
- Making it easier to integrate in Walter.Web.Firewall module

19  February 2021
- Add support for 32 bit
- Add AditLog storing the last 50 records

12 February 2021
- Framework extension changes
- Update package references

25 January 2021
- Update package references

02 January 2021
- Updated terms and conditions to REL. 2021.01.02

29 December 2020
- Update package references

19-20 December 2020
- Update package references

14 December 2020
- Update package references

11 December 2020
- Update package references
- Compile with Language version 9.0

04 December 2020
-Update package references

22 November 2020
- Update compiler hints improving .net Core 3.1 and .Net 5.0 compiled binaries

11 November 2020
- Update packages and support .Net 5.0

14 October 2020
- Update to .net core 3.1.4

05 October 2020
- Update NuGet Package References
- Update EULA

26 September 2020
- Add json constructor for ViesReply for easy json serialization

17 September 2020
- Add Exception to View response dataset documenting the reason of a failure without raising it

15 September 2020
- updated documentation
https://firewallapi.asp-waf.com/?topic=html/T-Walter.Vat.EuropeanVatInformationQuery.htm
14 September 2020 initial release