php – Magento欧盟增值税税务验证失败,客户群更改未应用

我们公司已注册增值税,并从已提供有效增值税号的欧盟B2B销售中移除增值税. Magento版本为1.9,其中包括对此税务问题的支持,一旦验证了增值税号,就会自动分配客户组.

最初有一个问题,Magento显示了两个增值税号输入表格的实例,其中一个有效,另一个没有,因此结果不可靠.我随后隐藏了不起作用的增值税表,似乎一切正常.如果客户没有阅读从增值税号中删除国家/地区代码的说明,则仍然存在问题,这可以防止增值税号验证,但总体而言是有效的.
最近,欧盟增值税登记客户尚未取消增值税,即使手动调整客户帐户组到增值税免税组也未取消增值税.

似乎没有对相应的增值税数据库检查增值税号码.我们已尝试使用我们所知的有效增值税号码和错误“您的税号无法验证.如果您认为这是一个错误,请通过[电子邮件地址]与我们联系”

据推测,使用欧盟增值税规则功能的每个人都有同样的问题,或许正如改变超链接这样简单的原因,但搜索没有发现其他近期类似的问题.

有人可以告知Magento在哪里进行增值税检查和授权的代码吗?

在此先感谢您的帮助.
RobH

解决方法:

Magento内有2个增值税ID字段.第一个与客户实体相关,不会根据增值税验证服务“VIES”进行检查.它只有一些信息特征,但对客户组分配没有影响.

第二个增值税ID字段与客户地址实体相关,将根据VIES服务进行检查.如果增值税号有效,您的客户将被分配到您定义的客户群(例如“有效增值税号”等).重要提示:Magento不接受含国家代码前缀的增值税号.例如. “ATU69014309”不是Magento的有效税号.相反,没有国家/地区前缀“U69014309”的增值税ID有效.如果扩展Mage_Customer_Helper_Data类的以下方法,则可以轻松解决此问题:

/**
 * Send request to VAT validation service and return validation result
 *
 * @param string $countryCode
 * @param string $vatNumber
 * @param string $requesterCountryCode
 * @param string $requesterVatNumber
 *
 * @return Varien_Object
 */
public function checkVatNumber($countryCode, $vatNumber, $requesterCountryCode = '', $requesterVatNumber = '')
{

    // Remove the country code prefix from the vat number
    $vatNumber = preg_replace("/^[a-z]{2}/i", "", $vatNumber); 

    ...

同样重要的是:用户在地址内结账时输入的增值税号也将被忽略(已知Magento Issue).

亲切的问候,
罗伯特

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...