Módulo para la presentación inmediata de la facturación.
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 18.0Conecta la facturación de Odoo con el sistema tributario español VERI*FACTU, enviando automáticamente las facturas de venta y los abonos a la agencia tributaria y añadiendo el QR y la cadena de hash requeridos a cada factura.
Este módulo prepara Odoo para la obligación española VERI*FACTU de reporte inmediato de facturas. Una vez activado en una compañía, las facturas de venta y los abonos reciben una clave de registro, una clave de impuesto, una descripción y un hash que enlaza cada documento con el anterior, y se envían a la agencia tributaria mediante una tarea programada.
Dónde aparece: - Nuevos ajustes de VERI*FACTU en la compañía, en los diarios de ventas, en las posiciones fiscales y en la agencia tributaria. - Campos adicionales en las facturas, incluido un tipo específico de abono para los casos del artículo 80. - Un asistente de cancelación y botones para reenviar facturas que fueron rechazadas o aceptadas con errores. - Un código QR y un texto legal en el informe impreso de la factura. - Pantallas de registro para las entradas de facturas, las respuestas de envío y los registros de encadenamiento.
Reglas de negocio y comportamiento automático: - Los diarios de ventas de una compañía VERI*FACTU se fuerzan al modo de hash restringido y no se pueden desactivar. - Las facturas solo son elegibles a partir de la fecha de inicio de la compañía, en los diarios de ventas y cuando la posición fiscal está activa para la agencia. - Al publicar una factura se comprueba la configuración y los impuestos; los impuestos no mapeados o incoherentes bloquean el proceso. - Las facturas ya enviadas no se pueden cancelar, restablecer a borrador ni cambiar su número o fecha. - Una tarea programada envía las entradas pendientes por lotes y crea actividades cuando hay errores de conexión o respuestas incorrectas.
Afecta a la facturación, los diarios, las compañías, los contactos, las posiciones fiscales y la configuración de la agencia tributaria española.
Depende de
Lo necesitan otros módulos
Menús que añade
Modelos y campos (18)
- res.company · amplía un modelo existenteverifactu_test (VERI*FACTU test environment?), verifactu_enabled (VERI*FACTU enabled), verifactu_start_date (VERI*FACTU start date), verifactu_chaining_id (VERI*FACTU chaining), verifactu_description (VERI*FACTU description), verifactu_developer_id (VERI*FACTU developer)
- res.partner · amplía un modelo existenteverifactu_enabled (VERI*FACTU enabled)
- account.move · modelo nuevoverifactu_refund_specific_type (VERI*FACTU refund specific type)
- verifactu.map · modelo nuevoname (Model), date_to, date_from, map_lines (Lines)
- account.journal · amplía un modelo existenteverifactu_enabled (VERI*FACTU enabled), restrict_mode_hash_table, company_verifactu_enabled (VERI*FACTU company enabled), restrict_mode_hash_table_readonly
- aeat.tax.agency · amplía un modelo existenteverifactu_wsdl_out (VERI*FACTU WSDL), verifactu_qr_base_url (VERI*FACTU QR Base URL), verifactu_wsdl_out_test_address (VERI*FACTU Test Address), verifactu_qr_base_url_test_address (VERI*FACTU QR Base URL Test)
- verifactu.mixin · modelo nuevoaeat_state, verifactu_qr (VERI*FACTU QR), verifactu_csv (VERI*FACTU CSV), verifactu_hash (VERI*FACTU hash), verifactu_qr_url (VERI*FACTU URL), verifactu_return (VERI*FACTU return), verifactu_enabled (VERI*FACTU enabled), verifactu_tax_key (VERI*FACTU tax key), verifactu_macrodata (VERI*FACTU macrodata?), verifactu_send_date (VERI*FACTU send date), verifactu_description (VERI*FACTU description), verifactu_hash_string (VERI*FACTU hash string), verifactu_refund_type (VERI*FACTU refund type), verifactu_cancel_reason (VERI*FACTU cancel reason), verifactu_registration_key (VERI*FACTU registration key), verifactu_invoice_entry_ids (VERI*FACTU invoice entries), verifactu_registration_date (VERI*FACTU registration date), verifactu_response_line_ids (VERI*FACTU response lines), last_verifactu_invoice_entry_id (VERI*FACTU last invoice entry), last_verifactu_response_line_id (VERI*FACTU response line), verifactu_registration_key_code (VERI*FACTU key code)
- verifactu.chaining · modelo nuevoname, sif_id (SIF ID), installation_number, last_verifactu_invoice_entry_id (Last invoice entry)
- verifactu.map.line · modelo nuevocode, name, tax_xmlid_ids (Taxes templates), verifactu_map_id (Parent mapping)
- verifactu.developer · modelo nuevovat (Developer VAT), name (Developer Name), version, sif_name (SIF Name), file_name, responsibility_declaration
- account.move.reversal · amplía un modelo existente
- account.chart.template · amplía un modelo existente
- account.fiscal.position · amplía un modelo existenteverifactu_enabled, verifactu_tax_key (VERI*FACTU tax key), verifactu_registration_key (VERI*FACTU registration key)
- verifactu.invoice.entry · modelo nuevomodel, company_id (Company), entry_type, send_state, document_id (Document), send_attempt, document_hash, document_name, previous_hash (Previous Hash), aeat_json_data (AEAT JSON Data), last_error_code, response_line_ids (Responses), last_response_line_id (Last Response Line), verifactu_chaining_id (Chaining), previous_invoice_entry_id (Previous Invoice Entry)
- verifactu.registration.key · modelo nuevocode, name, verifactu_tax_key (VERI*FACTU tax key)
- verifactu.cancel.invoice.wizard · modelo nuevoinvoice_id (Invoice), cancel_reason (Cancellation reason)
- verifactu.invoice.entry.response · modelo nuevoname, header, response, invoice_data, date_response, verifactu_csv (VERI*FACTU CSV), activity_type_id (Activity Type), response_line_ids (Response lines)
- verifactu.invoice.entry.response.line · modelo nuevomodel, entry_id, response, error_code, send_state (VERI*FACTU send state), document_id (Document), document_name, verifactu_csv, is_cancellation (Is cancellation), entry_response_id
Texto generado por IA (DeepSeek) al leer el código de la versión 18.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. El módulo es muy grande y solo se ha leído una parte del código. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 5 confirmadas, 4 sin información de 9 versiones.
Fuentes · Odoo 15.0
Confirmado el 2026-11-03 en la rama 15.0 de OCA/l10n-spain.
terminal Instalación y uso
Documentación de OCA · Odoo 18.0Instalación
Fuente · Odoo 18.0Para instalar este módulo necesita:
- Libreria Python Zeep, se puede instalar con el comando 'pip install zeep'
- Libreria Python Requests, se puede instalar con el comando 'pip install requests'
Configuración
Fuente · Odoo 18.0Para configurar este módulo es necesario:
- Acceder a Facturación/Contabilidad -\> Configuración -\> AEAT -\> Agencia Tributaria, podrás consultar las URLs del servicio SOAP de Hacienda. Estas URLs pueden cambiar según comunidades
- El certificado enviado por la FMNT es en formato p12, este certificado no se puede usar directamente con Zeep. Accede a Facturación/Contabilidad -\> Configuración -\> AEAT -\> Certificados AEAT, y allí podrás: Subir el certificado p12 y extraer las claves públicas y privadas con el botón "Obtener claves"
- Debes tener en cuenta que los certificados se alojan en una carpeta accesible por la instalación de Odoo.
- Completar los datos de desarrollador y del encadenamiento a nivel de compañía en la pestaña de VERI*FACTU.
En caso de que la obtención de claves no funcione y uses Linux, cuentas con los siguientes comandos para tratar de solucionarlo:
- Clave pública: "openssl pkcs12 -in Certificado.p12 -nokeys -out publicCert.crt -nodes"
- Clave privada: "openssl pkcs12 -in Certificado.p12 -nocerts -out privateKey.pem -nodes"
- Establecer en las posiciones fiscales la clave de impuestos y la clave de registro VERI*FACTU.
- Para aplicar las claves ejecute el asistente de actualización del módulo accountchart_update.
Cuando se valida una factura, automáticamente genera el registro de envío para verifactu. Cada minuto se enviarán todos aquellos registros pendientes de enviar mediante un cron.
Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.