CIRUGÍA DEL SOFTWARE

Cabezera
You are here: Home Blog 2010 June 11 Subida del IVA en OpenERP con Account Chart Update

Subida del IVA en OpenERP con Account Chart Update

by borjals — last modified Jun 11, 2010 08:12 PM
Filed Under:

Breve tutorial sobre cómo actualizar el plan contable y las definiciones de impuestos de OpenERP con los nuevos impuestos del 8% y 18% que se estrenan en Julio.

En breve (el 1 de julio de 2010) los usuarios españoles de OpenERP tendrán que comenzar a usar las nuevas tasas de IVA del 18% (tipo normal) y 8% (tipo reducido).

Recordemos que dicho cambio se aprobó en la Ley 26/2009, de 23 de diciembre, de Presupuestos Generales del Estado para el año 2010:

"Artículo 79. Impuesto sobre el Valor Añadido.
Con efectos desde el 1 de julio de 2010 y vigencia indefinida, se introducen las siguientes modificaciones en la Ley 37/1992, de 28 de diciembre, del Impuesto sobre el Valor Añadido.
Uno. Se modifica el apartado uno del artículo 90, que queda redactado de la siguiente forma:
«Uno. El Impuesto se exigirá al tipo del 18 por ciento, salvo lo dispuesto en el artículo siguiente.»
El resto del artículo queda con el mismo contenido.
Dos. Se modifica el encabezado del apartado uno del artículo 91, que queda redactado de la siguiente forma:
«Uno. Se aplicará el tipo del 8 por ciento a las operaciones siguientes:»
El resto del apartado y artículo quedan con el mismo contenido.
"

 

Por tanto, para poder continuar trabajando en OpenERP a partir del 1 de julio, tendremos que hacer estos cambios:

  • Crear los nuevos impuestos del 18% y 8%
  • Cambiar los impuestos asociados a nuestros productos y otros elementos.

 

Nuevos impuestos en OpenERP

 

Actualmente en OpenERP, gracias a Carlos Liebana de Ting!, ya están disponibles las plantillas de los nuevos códigos de impuestos, impuestos, cuentas contables y posiciones fiscales para los planes contables españoles. Por ello,si creamos una nueva empresa en un OpenERP actualizado, automáticamente se crearán los impuestos del 18% y 8%.

Sin embargo, actualizar las plantillas (actualizar el módulo l10n_chart_ES*), no afectará a los planes contables preexistentes en nuestras instalaciónes de OpenERP.

Es decir, para poder trabajar con los nuevos impuestos necesitaremos reflejar esos cambios, introducidos en las plantillas, en nuestro plan de cuentas concreto.

Por suerte, contamos con una herramienta específica para ello...

 

* Actualización (en respuesta al comentario "Paso 2 en blanco"): Tras actualizar el código del módulo l10n_chart_ES (bajando la última versión de LaunchPad y copiando el código en los addons) deberemos asegurarnos de recargar el módulo en OpenERP:

Actualizar módulo l10n_chart_es - menú
Actualizar módulo l10n_chart_es - marcar para actualización
Actualizar módulo l10n_chart_es - búsqueda
Actualizar módulo l10n_chart_es - ejecutar asistente
Actualizar módulo l10n_chart_es - confirmar

 

 

Actualizar el Plan Contable de manera asistida.

 

Disponemos, desde hace poco, de una herramienta que nos permite actualizar o combinar un plan contable con una plantilla de plan contable (que recordemos define no sólo cuentas, sino también impuestos).

Dicha herramienta, creada por Zikzakmedia y Pexego, está disponible en el módulo account_chart_update, de los extra-addons de OpenERP.

Con el asistente de actualización de plantes contables, es muy fácil aplicar los nuevos impuestos a cualquier plan contable creado en OpenERP, como veremos a continuación:

 

Tras instalar el módulo account_chart_update, en el menú de Contabilidad y finanzas -> Configuración -> Contabilidad financiera -> Plantillas tendremos disponible una nueva opción "Actualizar plan contable a partir de una plantilla de plan contable":

Menú actualización plan contable

 

Si abrimos el asistente veremos una pantalla similar a la siguiente, donde podremos configurar la operación:

Pantalla inicial asistente actualización plan contable

En general, para la actualización de los nuevos impuestos en una empresa española, el único campo que tendremos que establecer manualmente será el de Plantilla plan contable, que por defecto nos ofrecerá la plantilla PGCE completo cuando probablemente en nuestra empresa usemos el PGCE PYMES.

Una vez seleccionada la plantilla correspondiente (Plan General Contable PYMES 2008 para la mayoría de empresas españolas), pulsaremos Siguiente, para que tras unos segundos de espera, el asistente nos muestre las diferencias detectadas y los registros que van a ser creados o actualizados.

Concretamente, podremos ver como se van a crear códigos de impuestos para los nuevos impuestos del 18% y 8%:

Códigos de impuestos a actualizar

 

Cómo se van a crear los impuestos en si (con las diferentes variantes según se traten de ventas o compras normales, de bienes de inversión...):

Impuestos a actualizar

 

Las cuentas que se crearán para contabilizar dichos impuestos:

Cuentas a actualizar

 

Y las posiciones fiscales con cambios, que en este caso van a ser actualizadas (por eso aparecen en rojo):
Posiciones fiscales a actualizar

 

En cualquiera de las pestañas, haciendo doble clic (en los clientes de escritorio) podremos los detalles de las diferencias detectadas. Por ejemplo para una de las posiciones fiscales anteriores, podemos comprobar como faltaban los mapeos de los nuevos impuestos:

Detalle diferencias entre posición fiscal y plantilla

 

Finalmente, si estamos conformes con los cambios que va a aplicar el asistente, pulsaremos el botón "Crear/Actualizar para que comience el proceso. Tras unos segundos se nos mostrará, o bien un mensaje de error (en el raro caso de que algún cambio no se pueda aplicar), o bien una pantalla resumen como la siguiente:

Resultado del asistente

 

Tras este último paso, ya tendremos disponibles los nuevos impuestos en OpenERP.

Sin embargo, nuestros productos por ahora seguirán usando los antiguos impuestos. El 1 de julio, antes de comenzar nuestra operación diaria, habremos de cambiar los impuestos por defecto que se usan en las compras y ventas.

 

Actualizar los impuestos por defecto

 

Aunque creemos nuevos impuestos, seguramente en las ventas (y compras) nos seguirán apareciendo por defecto los impuestos antiguos.

Deberemos configurar:

  • Los impuestos por defecto (si usamos esta opción) de las pantallas de ventas y compras.
  • Los impuestos por defecto de los artículos.

 

Actualizar el impuesto por defecto en documentos

 

Es posible que tengamos preconfigurado algún formulario, como el de ventas para que, al añadir líneas sin un producto asociado, se utilice automáticamente un impuesto predeterminado como en la imagen siguiente:

Orden de venta con IVA predeterminado 16%

 

En ese caso, deberemos eliminar el impuesto que aparece actualmente por defecto (IVA 16% en la imagen), añadir el nuevo impuesto que lo sustituye (IVA 18%) y abrir el menú contextual del campo de impuestos (con el botón secundario del ratón) tal y como se muestra en la imagen, y pulsar en la opción "Definir como predeterminado":

Estableciendo el nuevo IVA predeterminado al 18%

 

De manera similar podremos preestablecer los impuestos a utilizar en otros documentos (compras, facturas).

 

Actualizar los impuestos por defecto de productos.

 

El punto anterior, sirve para establecer el IVA a usar cuando no se selecciona un producto concreto. En caso de que seleccionemos un producto, OpenERP automáticamente tomará el IVA especificado en la ficha de producto.

Por tanto, el 1 de julio habremos de actualizar los impuestos asociados a cada uno de nuestros productos.

Para ello iremos a la pestaña Contabilidad dentro de la ficha del producto que nos interese:

Actualizar producto (antes)

Y sustituiremos los impuestos antiguos por los nuevos:

Actualizar producto (después)

 

Esto habremos de hacerlo en cada uno de los productos que tuviesen preconfigurados los antiguos impuestos.

Si tenemos un número muy elevado de productos, siempre es posible actualizarlos en lote, todos a la vez. Aunque no existe ningún asistente específico a tal efecto, podremos hacerlo de dos maneras: Usando la actualización masiva del cliente Koo (recomendado para usuarios), o usando sentencias SQL (recomendado para administradores de sistemas).

Lo más cómodo para el usuario común, es utilizar la herramienta genérica de actualización masiva del cliente Koo de OpenERP.

 

Actualización en lote con Koo

 

Si estamos usando o tenemos disponible el cliente de escritorio Koo, realizar la actualización de múltiples artículos es muy sencillo.

En el listado de productos, seleccionaremos aquellos registros que nos interesa actualizar (todos los que tengan un mismo tipo de IVA).

Luego en el menú principal de Koo, haremos clic en Formulario -> Modificar todos los registros seleccionados:

Menú modificación masiva

 

Se nos abrirá una pantalla similar a la del producto, pero con todos los campos vacíos:

Pantalla de modificación masiva (antes)

 

Iremos a la pestaña de Contabilidad, y estableceremos los impuestos que deseamos usar para todos los productos que habíamos seleccionado:

Pantalla de modificación masiva (después)

 

Pulsaremos en Aceptar, y se nos mostrará un diálogo de confirmación, donde podremos comprobar que campos van a ser actualizados:

Pantalla de modificación masiva (confirmación)

 

Si confirmamos el proceso Koo actualizará conjuntamente todos los productos seleccionados.

 

Actualización en lote SQL

 

La otra opción, para administradores de sistemas con conocimiento de SQL, es utilizar unas pocas sentencias SQL en PostgreSQL para actualizar los impuestos, concretamente podremos actualizar los impuestos de venta al 16% y de compra al 16% al 18% con este par de sentencias:

 

UPDATE product_taxes_rel
SET tax_id = (SELECT id FROM account_tax WHERE name = 'IVA 18%')
WHERE tax_id = (SELECT id FROM account_tax WHERE name = 'IVA 16%');

 

UPDATE product_supplier_taxes_rel
SET tax_id = (SELECT id FROM account_tax WHERE name = '18% IVA Soportado (operaciones corrientes)')
WHERE tax_id = (SELECT id FROM account_tax WHERE name = '16% IVA Soportado (operaciones corrientes)');

 

Evidentemente, habremos de cambiar los nombres ('IVA 16%') según los impuestos que deseemos actualizar.

 

Nota: Si tenéis asociados impuestos por defecto a cuentas contables, podéis actualizarlos de forma similar a los productos. Así por ejemplo en SQL:

 

UPDATE account_account_tax_default_rel
SET tax_id = (SELECT id FROM account_tax WHERE name = 'IVA 18%')
WHERE tax_id = (SELECT id FROM account_tax WHERE name = 'IVA 16%');

UPDATE account_account_tax_default_rel
SET tax_id = (SELECT id FROM account_tax WHERE name = '18% IVA Soportado (operaciones corrientes)')
WHERE tax_id = (SELECT id FROM account_tax WHERE name = '16% IVA Soportado (operaciones corrientes)');

 

 

Comentarios adicionales sobre el asistente de actualización de planes contables

 

Hay que destacar, antes de cerrar este tutorial, que el asistente de actualización de planes contables no sólo permite actualizar un plan contable según los cambios de su plantilla original, sino que también nos permitirá fusionar nuestro plan contable con una nueva plantilla.

¿Para qué puede servir esto?

Pues por ejemplo para una empresa que empezó siendo una PYME, y por tanto usaba el PGCE PYMES, y que 'de pronto' se da cuenta de que ha credido y está obligada a usar el PGCE completo.

En ese caso, seleccionando la plantilla del PGCE, el asistente de actualización nos permitirá crear aquellas cuentas que aparecen en el PGCE y no en el PYMES (como las cuentas de los grupos 8 y 9), y actualizar aquellas cuentas que aparecían en el plan PYMES con nombre ligeramente diferente:

Actualizar plan PYMES a PGCE completo

Paso 2 en blanco

Posted by Anonymous User at Jun 24, 2010 03:33 PM
Siguiendo las instrucciones de vuestro howto llego al paso 2 con los formularios completamente vacíos, por lo que al pulsar en el botón crear/actualizar no actualiza nada. Ni idea de a que puede ser debido pues no arroja ningún error y el paso uno es exactamente igual al pantallazo vuestro. Para mi no hay mayor problema pues estoy probando el programa, os indico este error solamente a modo de feedback... Estoy trabajando en una virtualbox con Ubuntu 8.04 aunque no creo que sea de mucho interés para poder resolver el problema, en cualquier caso es de agradecer el aporte del módulo.

Paso 2 en blanco

Posted by borjals at Jun 28, 2010 11:18 AM
Seguramente te has olvidado de recargar las plantillas del plan contable antes. Es decir, el asistente de actualización compara tu plan contable actual con la plantilla que le indiques, si la plantilla no está actualizada nunca encontrará ningún cambio. Las plantillas de planes contables españolas están definidas en el módulo l10n_chart_ES de OpenERP. Si actualizas el módulo, tendrás que indicarle manualmente a OpenERP que recargue/actualize los datos (las plantillas) definidos en ese módulo. Puedes hacerlo arrancando el servidor con el parámetro "--update=l10n_chart_es" (o "--update=all"), o bien desde la administración de OpenERP eliges el módulo, lo marcas para actualizar, y ejecutas las operaciones pendientes.

Paso 2 en blanco

Posted by Anonymous User at Jun 29, 2010 06:18 PM
Sucedía exactamente lo que has explicado.

Muchas gracias

actualizacion impuestos

Posted by Anonymous User at Jun 28, 2010 04:47 PM
Hola Muchas gracias por el tutorial, es muy bueno.

Me surge una duda, ¿es posible que convivan los dos tipos de impuestos?, quiero decir, dentro de un producto supongamos que ponemos el tipo impositivo del 16% y que ponemos tambien el del 18%. Esto es asi porque puedo hacer facturas rectificativas, por ejemplo, y me interesa que durante el 2010 convivan los dos impuestos.

Al realizar un pedido de venta, sobre un producto en el que convivan los dos impuestos, el programa agrega los dos impuestos. La duda que me surge es ¿como haces esto?, es decir, ¿que haces cuando a un producto le has dicho que convivan los dos tipos impositivos por si en algun momento realizo una factura rectificativa o simplemente una devolucion?

Muchas gracias

Aitor.

actualizacion impuestos

Posted by borjals at Jun 30, 2010 10:03 PM
No tienes ningún problema para que convivan los dos impuestos (de hecho no te queda más remedio: pueden llegarte facturas de junio con IVA al 16% en julio, o puedes necesitar rectificar una factura), la flexibilidad en este sentido es total.

Tendrás un impuesto por defecto (si quieres, ni siquiera es necesario tener impuestos pre-asociados a los productos), que OpenERP seleccionará automáticamente cada vez que añadas un producto a una orden de venta/compra o factura. Pero en todo momento puedes quitar el impuesto pre-seleccionado y aplicar otros.

Ejemplo: Me voy a ventas y creo un nuevo pedido, pulso en "nueva línea" y elijo un producto "P1", automáticamente en el campo (lista) de "impuestos" me aparece "18% IVA". Supongamos que en esta venta concreta queremos usar el 16%: sencillamente selecciono el impuesto que ya está en la lista (18% IVA) y pulso en el botón "Quitar" que hay junto a la lista, luego escribo "16% IVA" y pulso "Añadir". Listo.

Por otro lado, al rectificar una factura, usando el asistente de abonar factura, automáticamente se usan los mismos impuestos de la factura original (que luego podrás cambiar si quieres). Por tanto si en julio registras una devolución, la factura rectificativa creada usará el 16% (o el impuesto que corresponda) correctamente.

Y si te preguntas qué sucederá a final de año con los impuestos antiguos: Nada problemático, se desactivarán, de forma que no aparezcan en los listados (salvo que se busquen explícitamente impuestos desactivados), pero sin borrarlos (pues seguirán referenciados por las facturas/ventas/compras antiguas); una operación totalmente reversible :)

Felicidades

Posted by Anonymous User at Jul 04, 2010 08:54 PM
Estupendo trabajo el que habéis realizado.

Felicidades.

Al actualizar no se actualiza el IVA 18%

Posted by Anonymous User at Jul 08, 2010 10:49 AM
He realizado los pasos indicados pero sin éxito. He realizado una actualización desde Bazaar, pero con e mismo resultado.

Al realizar el asistente de actualización del plan contable, en el segundo paso me aparece sólo:
Codigos de impuestos:
[44] - Inversión del sujeto pasivo

Impuestos:
IVA 16%...
IRPF 1...
IRPF 7...
IRPF 15...
IRPF 18...

Cuentas:
(Todas)

Posiciones fiscales
(ninguna)

Creo que se trata que la actualización que me he descargado no tiene definido el IVA 18%. He realizado una búsqueda con grep y el único "18%" hallado es del IRPF.

¿De dónde me puedo bajar la actualización i10n_chart_ES con las definiciones de IVA 18% e IRPF actualizadas?

Gracias por la guía.

Al actualizar no se actualiza el IVA 18%

Posted by borjals at Jul 13, 2010 05:34 PM
Eso es que no tienes actualizadas la plantilla del plan contable español.
Necesitas bajarte la última versión del código de l10n_chart_ES (http://bit.ly/b3fpo0) y luego pedirle a OpenERP que refresque el modulo (echa un vistazo a "en respuesta al comentario "Paso 2 en blanco"" más arriba).

Instalar account_chart_update

Posted by Anonymous User at Jul 26, 2010 06:39 PM
Supongo que tengo algún error de concepto, por que por más que lo intento no consigo instalar el módulo account_chart_update

Lo bajo con bazaar, lo copio al directorio de addons (igual que he hecho con la actualización del l10n_chart_ES) pero cuando le doy al botón "Actualizar lista de módulos" no me aparece en la lista.

He estado verificando permisos de los ficheros y no veo ninguna diferencia entre los que tiene l10n_chart_ES y account_chart_update, en cambio el primero me lo reconoce (he podido verificar que se han añadido los nuevos IVAs en el tempalate) y en cambio el segundo no... alguna idea de que puede estar pasándome?

Instalar account_chart_update

Posted by Anonymous User at Jul 27, 2010 08:22 PM
Me respondo a mi mismo... finalmente he conseguido solucionar el problema, aunque no entiendo por que se producía.

Al bajarme el extra-addons con el launchpad con

sudo bzr branch lp:~openerp-commiter/openobject-addons/trunk-extra-addons

en el módulo account_chart_update hay un fichero __openerp__.py en lugar de __terp__.py

Solo he tenido que renombrarlo con
sudo mv __openerp__.py __terp__.py

y ya me lo reconoce... supongo que el problema está en que he cogido el módulo del trunk-extra-addons en lugar del stable_5.0-extra-addons tal y como recomendabais en el post.

Lo que no tengo claro es si el "trunk" está mal o no (mis conocimientos de openerp son bastante elementales), por lo que no voy a abrir ningún bug en launchpad, pero he preferido contároslo para que si lo consideréis lo podáis arreglar

Instalar account_chart_update

Posted by Anonymous User at Jul 27, 2010 08:23 PM
Me respondo a mi mismo... finalmente he conseguido solucionar el problema, aunque no entiendo por que se producía.

Al bajarme el extra-addons con el launchpad con

sudo bzr branch lp:~openerp-commiter/openobject-addons/trunk-extra-addons

en el módulo account_chart_update hay un fichero __openerp__.py en lugar de __terp__.py

Solo he tenido que renombrarlo con
sudo mv __openerp__.py __terp__.py

y ya me lo reconoce... supongo que el problema está en que he cogido el módulo del trunk-extra-addons en lugar del stable_5.0-extra-addons tal y como recomendabais en el post.

Lo que no tengo claro es si el "trunk" está mal o no (mis conocimientos de openerp son bastante elementales), por lo que no voy a abrir ningún bug en launchpad, pero he preferido contároslo para que si lo consideréis lo podáis arreglar

Instalar account_chart_update

Posted by borjals at Aug 11, 2010 10:24 AM
Es que en la versión trunk (próxima versión 6.0), los módulos usan ficheros __openerp__.py en lugar de __terp__.py (estos últimos, que pasan a estar desaconsejados, eran herencia de las siglas de "Tiny ERP" que era el nombre antiguo de OpenERP).

No te recomendaría mezclar módulos desarrollados para la versión 6.0 con los de la 5.0: aunque en muchos puntos puedan parecer compatibles, hay cosas (campos de búsqueda, menús) que pueden dar problemas.

Puedes bajar la version estable de los extra-addons con:
sudo bzr branch lp:openobject-addons/extra-5.0

 
Logotipo pexego