Magento no valida el iva intra-eu

Magento no valida el IVA intracomunitario

Un error destacado en Magento v.1.9.x.x es la forma de validar el IVA intracomunirario. Este tema seguro que a más de uno nos ha provocado dolor de cabeza, porque despues de configurar Magento para validar el CIF intracomunitario, resulta que no funciona, los clientes no son asignados al grupo correspondiente de forma automatica.

Direción de facturación Magento

Por defecto Magento valida los números de identificación fiscal sin el código de pais. Es decir si un cliente Alemán introduce DE147223734 Magento no lo dara como un CIF intracomunitario valido y no le pondrá dentro del grupo de clientes correspondiente que le aplique la tasa cero. El problema es que el usuario no tiene por qué saber que el número debe introducirlo sin letras (código de pais).

Por supuesto, podemos poner un mensaje de advertencia, pero aún así seguramente tengamos problemas.

Como hacer que Magento valide el IVA intracomunitario

La solución se trata de eliminar el código de pais del valor introducido por el cliente en el formulario.

Para conseguirlo tenemos que editar el archivo /app/code/core/Mage/Customer/Helper/Data.php, buscar la función checkVatNumber() agregar la siguiente línea al principio de la misma:

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

Ahora Magento deberia validar correctamente el IVA intracomunitario independientemente de como lo escriban nuestros clientes.

2 comentarios en “Magento no valida el IVA intracomunitario

  • Buenas, no logro encontrar esa ruta en magento 2. Lo mas cercano es /vendor/magento/module-customer/Helper pero no existe data.php podrías ayudarme? gracias..

    • La verdad es que en Magento 2 todo ha cambiado radicalmente, por el momento no he trabajado con esta versión, a si que no puedo ayudarte.
      Siento no poder ser de gran ayuda.

Comentarios y opiniones

Puede que tarde en responder, se paciente.

*
*