Configuración de impuestos en PrestaShop: explicación de las normas del IVA de la UE
Última revisión: junio de 2026. Las rutas del panel de administración y las claves de configuración que aparecen a continuación cubren PrestaShop 1.7, 8 y 9 (las etiquetas cambian ligeramente entre versiones). Los tipos impositivos y las reglas de redondeo dependen de cada jurisdicción y se revisan con el tiempo: confirma los requisitos actuales del país desde el que facturas con tu asesor contable, en lugar de tratar cualquier tipo indicado aquí como definitivo.
Los impuestos son el ajuste de PrestaShop en el que un error silencioso puede acumularse durante meses antes de que alguien lo detecte. Un producto asignado al grupo de reglas fiscales equivocado se envía sin impuestos; si falta un país en un grupo, se cobra el 0% a todos los clientes de ese país; un modo de redondeo que no coincide con el criterio de tu asesor contable genera facturas descuadradas por un céntimo, justo de la forma que sí llama la atención en una auditoría. Nada de esto muestra un error. El carrito sigue permitiendo finalizar la compra, el pedido se confirma igualmente y el desfase solo aparece al conciliar el IVA al cierre del trimestre, o cuando la administración tributaria lo hace por ti.
Esta guía trata de la mecánica: cómo está construido realmente el motor fiscal de PrestaShop, las rutas exactas del panel de administración y las claves de configuración, y cómo montar un IVA de la UE basado en el destino para que funcione bien y luego pase desapercibido. La parte legal, cuándo debes registrarte en OSS, cómo funciona el umbral de 10.000 €, qué pruebas debes conservar. Es un tema aparte; lo tratamos en IVA en la UE: OSS, IOSS y lo que debe gestionar tu tienda. Aquí asumimos que ya sabes qué tipo aplicar y que quieres que PrestaShop lo cobre correctamente siempre.
Cómo modela PrestaShop los impuestos: tres capas, no una
Lo más útil que debes entender antes de tocar nada es esto: PrestaShop no tiene un "tipo impositivo" que configures directamente en un producto. Tiene tres objetos anidados, y el producto apunta al objeto superior.
| Capa | Qué es | Ubicación en el panel de administración | Clase |
|---|---|---|---|
| Impuesto | Un único tipo con nombre: "DE estándar 19%", "FR reducido 5,5%". Solo un número con una etiqueta y un indicador de activo. | Internacional → Impuestos | Tax |
| Regla fiscal | Una línea que dice "para este país (opcionalmente este estado/rango de códigos postales), aplica este impuesto". Es el puente entre un tipo y un lugar. | Dentro del editor de un grupo | TaxRule |
| Grupo de reglas fiscales | Un conjunto con nombre de reglas fiscales: "Tipos estándar UE", "Tipos reducidos UE (libros)". Esto es a lo que apuntan realmente un producto, un transportista o el papel de regalo. | Internacional → Impuestos → Reglas de impuestos | TaxRulesGroup |
¿Qué te aporta esto? Defines cada tipo por país una sola vez como impuesto y luego montas grupos que reutilizan esos tipos. Un producto nunca nombra un país: nombra un grupo, y el grupo decide el tipo según la dirección de entrega del cliente en el momento del cálculo. Cambia el tipo de Alemania una vez en el nivel de impuesto y se actualizarán todos los grupos que lo referencian. Esa indirección es exactamente lo que hace que una configuración de IVA para 27 países de la UE sea mantenible, en lugar de convertirse en una hoja de cálculo que editas a mano.
Cuando se realiza un pedido, PrestaShop resuelve el tipo a partir de la dirección de entrega y del grupo del producto: TaxManagerFactory entrega el trabajo a TaxRulesTaxManager, que compara el país de la dirección (y el estado/código postal cuando corresponde) con una TaxRule y pasa el tipo resultante a un TaxCalculator. Nunca llamas a esto directamente, pero conocer la cadena es lo que te permite depurar una incidencia de "por qué este pedido no tiene impuestos" en dos minutos en lugar de dos horas.
Crear la configuración para la UE, paso a paso

Paso 1: crea un impuesto por cada tipo que cobres realmente
Ve a Internacional → Impuestos y añade un impuesto por cada tipo estándar que vayas a recaudar. Una tienda que envía bienes físicos sujetos al tipo estándar por toda la UE necesita los tipos estándar de los 27 Estados miembros, así que nómbralos de forma que una persona pueda revisar la lista de un vistazo: DE estándar 19%, FR estándar 20%, PL estándar 23%, etc. Si vendes algo que pueda acogerse a un tipo reducido (libros, alimentos, algunos productos médicos), añádelo también como impuestos separados, FR reducido 5,5%, DE reducido 7%, porque los tipos reducidos están ligados a categorías de producto concretas y varían de un país a otro.
El interruptor "Activar" de un impuesto importa: un impuesto desactivado permanece en la base de datos (por lo que los pedidos históricos conservan su tipo correcto), pero no aparece en el desplegable cuando creas reglas. Así puedes retirar un tipo temporal caducado sin corromper facturas antiguas.
Paso 2: monta un grupo de reglas fiscales por perfil de producto
En Internacional → Impuestos → Reglas de impuestos, crea un grupo; empieza por Tipos estándar UE. Dentro, añade una regla fiscal por país, cada una apuntando el país a su impuesto correspondiente. Esta es la parte tediosa, y también la que la gente suele configurar mal: debes añadir una regla para cada país de la UE al que envíes, incluido tu país de origen.
Este es el fallo que acaba afectando a casi todo el mundo. Si el país de entrega del cliente no tiene ninguna regla en el grupo, PrestaShop no intenta adivinar: aplica 0% de impuesto. No hay advertencia. Un pedido de Luxemburgo sin regla para Luxemburgo pasa a precio neto, tú sigues debiendo el IVA de Luxemburgo y simplemente no lo has cobrado. Trata "cada país al que se puede enviar tiene una regla" como un punto de una lista de comprobación que verificas, no como una suposición.
Si vendes productos con tipos mixtos, acabarás con varios grupos: Tipos estándar UE, Tipos reducidos UE (libros), UE cero / exento. Cada uno no es más que un conjunto distinto de los mismos impuestos subyacentes.
Paso 3: asigna los productos al grupo correcto
Abre un producto, ve a la pestaña Precios y establece Regla de impuestos en el grupo correcto. Este es el paso que rompe silenciosamente los flujos de alta de nuevos productos: según tu versión de PrestaShop, el formulario y los valores por defecto de importación, un producto nuevo o importado puede quedar por defecto en Sin impuestos o en un grupo de reglas fiscales no previsto, así que si alguien lo deja mal una vez, o una importación lo rellena incorrectamente, todos los productos añadidos con prisas después arrastran ese error hasta que una auditoría lo encuentra. Verifica explícitamente el grupo de reglas fiscales de cada producto en lugar de confiar en cualquier valor prerrellenado.
¿Y esto qué implica? Haz que "establecer la regla fiscal" sea un paso explícito en tu lista de creación de productos en lugar de confiar en el prerrelleno, y revísalo tras cualquier importación CSV: la importación aceptará encantada un grupo fiscal vacío o incorrecto y nunca verás una alerta roja en la interfaz. Para un catálogo ya publicado, una exportación rápida filtrada de productos por grupo fiscal es la forma más rápida de detectar los artículos que se están vendiendo sin impuestos.
No tienes que entrar producto por producto para encontrar esos casos. Esta consulta de solo lectura lista los productos que no tienen grupo de reglas fiscales (el caso id_tax_rules_group = 0 "Sin impuestos"); ejecútala en Parámetros avanzados → Base de datos después de cualquier importación masiva:
-- Find products set to "No tax" (id_tax_rules_group = 0).
-- Read-only spot-check; run after every CSV import. Adjust the lang id if needed.
SELECT p.id_product, pl.name, p.reference, p.id_tax_rules_group
FROM ps_product p
JOIN ps_product_lang pl
ON pl.id_product = p.id_product AND pl.id_lang = 1
WHERE p.id_tax_rules_group = 0 -- 0 = no tax group assigned
AND p.active = 1
ORDER BY p.id_product;
Un resultado vacío es la respuesta que quieres ver. Cualquier fila indica productos que se enviarán sin impuestos hasta que los corrijas: exactamente esos casos silenciosos que, de otro modo, encontraría primero una auditoría.
Los ajustes que deciden la cifra final
Dos productos en un carrito, los tipos "correctos" configurados y el total de la factura sigue sin coincidir con el de tu asesor contable: casi siempre es un problema de redondeo o de impuestos sobre conceptos adicionales, no de los tipos en sí.
Redondeo: dónde difieren realmente Alemania y Francia
En Parámetros de la tienda → General, los ajustes Modo de redondeo y Tipo de redondeo (PS_PRICE_ROUND_MODE y PS_ROUND_TYPE) cambian el cálculo, no solo la visualización. Redondear en cada artículo suma totales de línea ya redondeados; Redondear sobre el total redondea una sola vez al final. En un carrito con varios artículos producen totales distintos, a veces por uno o dos céntimos, justo el tipo de discrepancia que hace que las facturas no cuadren en la conciliación.
No es una preferencia, depende de la jurisdicción. Como regla orientativa, la práctica alemana espera redondeo por línea, mientras que Francia permite redondear sobre el total; pero confirma el requisito vigente del país desde el que facturas en lugar de fiarte de lo que diga un blog, porque estas reglas se revisan. Haz la prueba de forma rigurosa: crea un carrito real con varios artículos, revisa la factura y compárala con lo que espera tu gestor contable.
El envío está sujeto a impuestos, y PrestaShop no te lo recordará
Cada transportista tiene su propio grupo de reglas fiscales, configurado en Envío → Transportistas dentro de la pantalla de edición del transportista. El valor de fábrica en un transportista nuevo suele ser Sin impuestos. El envío está sujeto a IVA en la mayoría de países de la UE, así que un transportista con "Sin impuestos" significa que estás cobrando de menos en los gastos de entrega de cada pedido. Configura el impuesto de cada transportista según tus normas locales de IVA. El tratamiento del IVA del envío puede depender de la jurisdicción y de carritos con tipos mixtos, y prueba carritos con tipos mixtos con tu asesor contable en lugar de asumir que se aplica al transporte el tipo principal del producto.
Papel de regalo y ecotasa: los dos extras que la gente olvida
El papel de regalo tiene su propio grupo de reglas fiscales en Parámetros de la tienda → Configuración de pedidos (la sección de papel de regalo). Déjalo sin impuestos y tendrás el mismo problema de cobro insuficiente en una línea más pequeña. Si operas en un país con ecotasa (la eco-contribución francesa, por ejemplo), habilita y configura la ecotasa en Internacional → Impuestos (los ajustes fiscales), y luego establece los campos de ecotasa por producto cuando corresponda; PrestaShop la tratará como un componente gravado separado en la factura.
B2C frente a B2B: dónde cambia realmente el tipo
El tipo de destino cubre las ventas ordinarias a consumidores. Hay dos casos que lo alteran, y cada uno tiene suficiente profundidad como para merecer su propia guía en lugar de quedar comprimido aquí.
- B2B intracomunitario (inversión del sujeto pasivo). Un número de IVA válido de una empresa de otro país de la UE cambia el pedido a 0% de IVA, y el comprador lo declara en su país; pero el B2B nacional (una empresa alemana que compra en una tienda alemana) sigue pagando el IVA completo. PrestaShop lo gestiona mediante grupos de clientes y validación del número de IVA; la configuración completa, la validación VIES y el texto de la factura están en comercio electrónico B2B con PrestaShop.
- Si los precios se muestran netos o brutos es una regla legal de visualización, no de cálculo fiscal, y varía según el mercado y el tipo de cliente. Lo tratamos íntegramente en reglas de visualización de precios en Europa para que ambos asuntos no se mezclen.
Para tiendas con mucho peso B2B, la parte que el sistema nativo de grupos de clientes de PrestaShop gestiona con menos elegancia es la validación fiable de números de IVA contra VIES, incluido cuando VIES está caído o devuelve coincidencias parciales. Automatic EU VAT Checker cubre ese flujo de principio a fin: valida durante el registro y el proceso de pago, aplica la exención solo a B2B transfronterizo real y se comporta de forma sensata cuando el servicio VIES no está disponible, para que un cliente con un número válido no quede bloqueado por una caída de una API gubernamental. El beneficio no es "más validación": es no tener que corregir manualmente pedidos que el comportamiento predeterminado eximió (o no eximió) en un mal día de VIES. Si esos mismos compradores profesionales también pagan a crédito, B2B Deferred Payment Terms gestiona la parte de factura y límite de crédito.
Multitienda: tipos compartidos, valores por defecto separados
Si gestionas varias tiendas bajo una misma instalación de PrestaShop (un patrón habitual para escaparates por país), los objetos fiscales pueden compartirse mientras que los valores por defecto siguen siendo específicos de cada tienda. La estructura práctica:
- Comparte los impuestos y los grupos de reglas fiscales entre todas las tiendas: no quieres tener "DE estándar 19%" definido tres veces y desincronizándose. Defínelo una vez en el nivel de todas las tiendas.
- Establece el país predeterminado por tienda (PS_COUNTRY_DEFAULT tiene en cuenta el contexto de tienda, así que cada escaparate puede tener su propio país de origen) y asigna los productos de cada tienda al grupo correcto dentro del contexto de esa tienda. Un escaparate alemán establece Alemania como país de origen; uno francés hace lo mismo con Francia.
- Vuelve a probar el redondeo por tienda si las monedas difieren: el redondeo fiscal interactúa con la conversión de moneda, así que un precio que cuadra limpiamente en euros puede quedar descuadrado por un céntimo en otra moneda. Verifícalo con un carrito real en la moneda de cada tienda.
Lista de comprobación fiscal antes del lanzamiento
Antes de confiar la configuración a pedidos reales, recorre esta lista: es el conjunto de cosas que fallan en silencio:
- Cada país al que se puede enviar tiene una regla fiscal en cada grupo que uses. País ausente = 0% cobrado, IVA igualmente adeudado. Abre cada grupo y cuenta.
- Tu país de origen está en el grupo: es el más fácil de olvidar porque "obviamente" cobras IVA nacional.
- Cada producto tiene el grupo de reglas fiscales correcto: los productos nuevos e importados pueden quedar por defecto en Sin impuestos o en un grupo no previsto según la versión y los datos de importación, así que hay que configurarlo (o verificarlo) en lugar de darlo por supuesto.
- Los transportistas no están en "Sin impuestos" salvo que realmente no graves el envío.
- El papel de regalo y la ecotasa están configurados si los ofreces.
- El modo de redondeo coincide con lo que exige tu jurisdicción de facturación: probado en un carrito con varios artículos, no asumido.
- Realiza pedidos de prueba reales desde tres o cuatro países distintos de la UE (usa una dirección de prueba por país) y revisa los totales reales de la factura. Esto detecta más problemas que mirar durante horas las pantallas de configuración.
Preguntas frecuentes
¿Por qué uno de mis productos cobra 0% de impuesto sin mostrar ningún error?
Hay dos causas, ambas silenciosas. O el producto está configurado como Sin impuestos en su pestaña Precios (id_tax_rules_group = 0; la comprobación SQL anterior encuentra estos casos), o el país de entrega del cliente no tiene una regla fiscal en el grupo asignado. PrestaShop nunca avisa de un país ausente; simplemente aplica 0%. Abre el grupo de reglas fiscales correspondiente, confirma que el país de entrega tiene una regla y comprueba que el producto apunta al grupo correcto.
¿Debo configurar "Impuesto basado en" según la dirección de entrega o la de facturación?
Para el IVA de la UE basado en destino (que es lo que espera la declaración OSS), usa la dirección de entrega en Internacional → Impuestos. El tipo debe seguir el lugar al que van los bienes. Dejarlo en la dirección de facturación cobra el tipo equivocado siempre que los países de facturación y entrega difieran, y tu conciliación de IVA no cuadrará. El contexto legal de por qué prevalece el destino está en IVA en la UE: OSS, IOSS.
¿PrestaShop valida números de IVA B2B y aplica automáticamente la inversión del sujeto pasivo?
No. El núcleo almacena el número de IVA y puede mostrar precios netos mediante grupos de clientes, pero nunca llama a VIES ni deja el IVA a cero solo porque se haya introducido un número. La exención por inversión del sujeto pasivo, validación en vivo, condición transfronteriza, texto de factura y comportamiento seguro cuando VIES no está disponible. Es precisamente el hueco que cubre Automatic EU VAT Checker. La pertenencia a un grupo por sí sola cambia la visualización, no el impuesto cobrado.
El total de mi factura con varios artículos difiere en un céntimo de la cifra de mi asesor contable: ¿qué falla?
Casi siempre es el redondeo, no los tipos. Revisa Modo de redondeo y Tipo de redondeo en Parámetros de la tienda → General. "Redondear en cada artículo" y "redondear sobre el total" producen sumas distintas en un carrito con varias líneas, y la elección correcta depende de la jurisdicción (la práctica alemana suele esperar redondeo por línea; Francia permite hacerlo sobre el total, pero confirma tu caso). Prueba con un carrito real de varios artículos, no con un solo producto, porque una única línea nunca revela la diferencia.
He cambiado el tipo de IVA de Alemania: ¿tengo que editar todos los grupos?
No, y ese es precisamente el sentido del modelo de tres capas. Cambia el tipo una sola vez en el nivel de Tax (Internacional → Impuestos) y todos los grupos de reglas fiscales que referencian ese impuesto se actualizarán automáticamente. Para un tipo temporal que caduca, desactiva el impuesto antiguo en lugar de eliminarlo: los pedidos históricos conservan su tipo original y el impuesto desactivado simplemente deja de aparecer en el desplegable al crear reglas nuevas.
Dónde termina la configuración fiscal y empiezan otras guías
Conseguir que los tipos lleguen a los pedidos es el trabajo de este artículo. Hay tres temas cercanos que la gente suele mezclar con esto y que tienen su propio lugar, para que aquí no recibas respuestas a medias:
- El marco legal del IVA: OSS, IOSS, el umbral de 10.000 €, el lugar de prestación para bienes digitales y las pruebas de ubicación que debes conservar, está en IVA en la UE: OSS, IOSS y lo que debe gestionar tu tienda.
- Facturas: hacer que el PDF muestre neto, impuesto, bruto y las menciones legales correctas por país se cubre en personalización de facturas en PrestaShop.
- El panorama más amplio de cumplimiento en el que encaja tu configuración fiscal, legislación de consumo, condiciones, devoluciones, empieza en legislación de comercio electrónico en la UE.
PrestaShop te da un motor fiscal realmente capaz: tres capas claras, cálculo basado en destino, control por transportista y por extra, y valores por defecto preparados para multitienda. Lo que no hará es decirte cuál es la configuración correcta ni avisarte cuando falta un país; ese criterio es tuyo. Configúralo de forma deliberada, verifícalo con pedidos de prueba transfronterizos reales y revisa tus tipos cada trimestre cuando caduquen reducciones temporales. Hazlo así y los impuestos se convertirán en lo que deberían ser: un ajuste que configuraste una vez y del que no vuelves a preocuparte, hasta la auditoría que superas sin sobresaltos.
Comentarios
Dejar un comentario
Comparte una pregunta, un detalle de instalación o una opinión que pueda ayudar a otro lector.