Hola,
Con Virtuemart 1.1.9 tenemos muchos productos ya en la base de datos y quisiéramos cambiar el IVA evitando de hacerlo uno a uno.
¿ Hay alguna manera de hacerlo masivamente? Igual a través de la base de datos…..
Gracias.
Marco
Hola Marco,
Tienes que tener en cuenta que en la base de datos de Virtuemart siempre se guardan la base imponible, es decir, los precios sin IVA. Por lo tanto, bastará con que modifiques el importe del impuesto en la administración de Virtuemart para que los precios con impuestos queden actualizados de forma automática.
En Virtuemart 1.1 tendrás que ir a la administración de Virtuemart y en el menú lateral entrar en el apartado Impuesto->Listar Tarifas de Impuesto. Se mostrará un listado con los impuestos creados. Tienes que editar el que tenga una tarifa de impuesto del 0.18000. Una vez editado, cambia el valor del campo Tarifas de Impuesto por 0.21 y guarda los cambios.
Para Virtuemart 2 hay que ir a la administración de Virtuemart y en el menú lateral entrar en el apartado Productos->Regla de impuesto y cálculos. Aquí edita la regla que aplica el IVA del 18% (se verá en la columna Valor el 18). Una vez editado, cambia el parámetro Valor del 18 al 21 y guarda los cambios.
Saludos
Hola Jordi,
perdona pero me he expicado mal: no han sidos introducidos ningun tipo de iva en los productos (no se le ha asignado ningun porcentaje).
Este es el problema.
Gracias.
Marco
Hola,
Por lo que dices, entiendo que en el precio base ya tienes incluidos los impuestos, lo que no se puede considerar algo correcto.
Si lo tienes así, cuando se muestre el resumen del pedido o se finaliza en los impuestos tendrá que salir un valor 0, lo cuál no sería válido.
En tal caso, si quieres hacer cambios en los precios se podría ejecutar alguna consulta en la base de datos para hacerlo pero, insisto, lo correcto sería tener impuestos aplicados a los productos.
Indícanos la url de tu web y la versión de Joomla y Virtuemart que estás utilizando.
Hola,
no los precios no tienen incluido el IVA, simplemente no le asignaron ningun IVA.
Ahora hay que asignarle a toso un tipo de IVA.
El Joomla es el 1.5.26, Virtuemart 1.1.9 y la url es:
http://dental-andalusi.webempresa.eu
Muchas gracias.
Marco
Hola Johnny,
he añdadido el impuesto pero no me lo añade a la hora de realizar la compra.
¿A que te refieres cuando dices "al momento de seleccionar el país"?
Muchas gracias.
Marco
Hola Marco
Cuando defines un impuesto lo defines para un pais específico, esto se validará con el pais al que pertenece el usuario y se aplicará el impuesto.
Pero también es necesario que definas a nivel del producto el impuesto aplicado, desde la pantalla de detalle de producto, tal como se ve en la imagen adjunta.
Saludos.
Entiendo,
pero el problema es que hay memorizados muchos productos (posiblemente mas de 1.000) y no se le ha asignado el impuesto. Lo que quiero averiguar si es posible evitar de asignarle el impuesto uno a uno a cada producto.
Marco
Hola Marco,
Parece ser que el problema es de base, es decir, cuando comenzaste inicialmente a introducir productos en VirtueMart no tomaste en cuenta el parámetro del impuesto, por lo que ahora, que parece ser que necesitas implementarlo, quieres que este sea un proceso "masivo" y de una sola vez, lo que inicialmente no parece posible y tendrás que editar los productos y determinar que impuesto se aplica para cada uno de ellos, para que quede almacenado en la tabla de productos de VirtueMart independientemente de que a nivel global, en VirtueMart establezcas un tipo de impuesto, algo que debes realizar antes de proceder a modificarlo en cada producto.
Por este motivo las casas siempre se construyen por los cimientos. 🙂
Saludos
Hola Luis,
tienes toda la razón pero es la situación que nos hemos encontrado con un cliente que estamos ayudando a pasar su tienda virtual de una aplicación en asp a Virtuemart.
Efectivamente sabe que ha cometido un error de base a no introducir el IVA a cada producto en el momento de su memorización.
Lo que intentamos es ayudarle para que el “remedio” sea lo mas leve posible.
Por este motivo pensaba en la posibilidad de introducir los códigos de IVA directamente en la base de datos (aun sea manualmente), probablemente es mas rápido que a través del backend entrando en todos los producto uno a uno.
Marco
Hola,
Las indicaciones que aquí hago son válidas para Virtuemart 1.1.X.
En la base de datos podrías aplicar un cambio masivo del IVA que se aplica a los productos. En primer lugar tendrías que crear el impuesto del 21% en Virtuemart. Una vez creado, tendrás que anotar el id del impuesto creado. Para saber el id del impuesto, edita el impuesto en la administración de Virtuemart. Te tendrá que cargar una url del siguiente tipo:
www.nombredetuweb.com/administrator/index.php?page=tax.tax_form&limitstart=0&keyword=&tax_rate_id=3&option=com_virtuemart
El valor que viene después del tax_rate_id= es el id del impuesto. Para el ejemplo anterior ese id sería 3.
Después, tendrías que ir a editar la base de datos. Lo puedes hacer desde el PhpMyAdmin. Antes de aplicar ningún cambios es muy importante que hagas una copia de seguridad de la base datos. Después tendrías que ejecutar una consulta sql como la siguiente:
UPDATE #_vm_product SET product_tax_id = 3
En esta consulta tienes que sustituir el # por el prefijo que estés utilizando para tus tablas y el 3 por el id del impuesto que hayas creado.
Ten en cuenta que tras el cambio de impuesto todos los precios finales de los productos se verán alterados por esta modificación del precio.
Muchas gracias Pablo,
justamente esto es lo que necesitamos.
Para realizar la consulta sql tengo que poner el código "UPDATE #_vm_product SET product_tax_id = 3" (debidamente configurado) en el recuadro "Consulta a la base de datos dentalan_db" y darle a "ejecutar consulta" verdad?
Adjunto imagen.
Gracias otra vez.
Marco
Hola,
Las captura de pantalla que adjuntas no parece del phpmyadmin. Antes de ejecutar la consulta tienes que realizar la copia de seguridad de la web.
Luego, sí que deberías de poder ejecutar la consulta en el lugar que indicas, pero recuerda que debes sustituir el # por el prefijo que estés utilizando para tus tablas y el 3 por el id del impuesto que hayas creado.