希腊增值税validation号码

希腊增值税validation号码,第1张

概述希腊增值税validation号码

有没有人可以帮助我在VB.NET visual studio 2010中valIDation希腊税号(VAT)的代码。

应用程序不工作没有pipe理权限

如何检查.NET框架是否安装

如何在windows中运行应用程序?

如何测量用于.NET远程处理的IP端口的进/出字节数?

读取/写入多个启动的进程的命令行

9位数字不是欧盟法律,这取决于国家。

不幸的是,我不知道你是否可以在任何地方得到算法,即使你可以,仍然不意味着这是一个有效的增值税号码。 我知道确保它是一个有效的增值税号码的唯一方法是根据Rup的评论中提到的对web服务进行验证。 所以如果你打算使用这个验证来决定是否要收取增值税,我不会相信只是一个计算,因为那样你最终可能会违反规定(可能还需要支付你所避税的增值税收集…)。

有一个代码项目文章展示了如何使用它(C#,但应该是相对容易转换为VB.Net,如果需要): VIES – 增值税号码检查器

虽然显然可能首先检查9位数字来排除任何明显无效的数字。

正如在这里提到的,你不会得到完整的验证,因为“欧盟委员会不能透露这些算法” 。 然而,希腊增值税必须有一个9位数字块。 所以用正则表达式来检查就足够了:

Dim text As String = Me.TxtVAT.Text Dim regex As New System.Text.RegularExpressions.Regex("^d{9}$",System.Text.RegularExpressions.RegexOptions.Compiled) If regex.IsMatch(text) Then 'do something' Else 'do something else' End If

我发现一个引用这个站点 的校验和算法的JavaScript实现作为原始算法源:

function ELVATCheckDigit (vatnumber) { // Checks the check digits of a Greek VAT number. var total = 0; var multiplIErs = [256,128,64,32,16,8,4,2]; //eight character numbers should be prefixed with an 0. if (vatnumber.length == 8) {vatnumber = "0" + vatnumber}; // Extract the next digit and multiply by the counter. for (var i = 0; i < 8; i++) total = total + Number(vatnumber.charat(i)) * multiplIErs[i]; // Establish check digit. total = total % 11; if (total > 9) {total = 0;}; // Compare it with the last character of the VAT number. If it is the same,// then it's a valID check digit. if (total == vatnumber.slice (8,9)) return true else return false; }

但是只检查它是否是有效的格式,而不是数字是否已经被分配。 如上所述,您可以使用以下Web服务:

用鼠标右键单击您的项目和“添加服务引用”; 输入URL http://ec.europa.eu/taxation_customs/vIEs/checkVatService.wsdl和命名空间名&#x79F0;

从该名称空间实例化一个checkVatPortTypeClIEnt

调用clIEnt.checkVat 。 您需要将国家代码和VAT号码放入字符串变量中供其参考,并为验证标志,公司名称和地址提供输出变量。

总结

以上是内存溢出为你收集整理的希腊增值税validation号码全部内容,希望文章能够帮你解决希腊增值税validation号码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1291494.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存