TIP: You can type at any time to perform a new search.
Colombia - Factura Electrónica Software Propio
l10n_co_electronic_invoice_self · OCA/l10n-colombia
- Repository
- OCA/l10n-colombia · module folder · Try on Runboat
- Module version
- 2.0.0
- Category
- Accounting/Localizations
- Folder size
- 0.34 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/l10n-colombia
- Last tracking update
- 2026-08-07 09:06:34
- Authors
- Odoo Community Association (OCA), IKU Solutions - Yan Chirino
- Maintainers
- Odoo Community Association (OCA), IKU Solutions - Yan Chirino
- Committers
- OCA-git-bot, oca-ci, Yan Chirino
- Odoo dependencies
- Python dependencies
- cryptography, lxml, qrcode, requests, xmlsig, xmltodict
- System dependencies
- None
- Required by
- None
- Description
Integración directa con los servicios web de la DIAN para la emisión de facturación electrónica colombiana en modo **software propio**. Funcionalidades: - Generación de XML UBL 2.1 con extensiones DIAN - Firma digital XAdES-EPES y envelope SOAP con WS-Security - Envío SendTestSetAsync (habilitación) y SendBillSync (producción) - Consulta de estado: GetStatusZip y GetStatus (por CUFE) - Consulta de rangos de numeración y clave técnica (GetNumberingRange) - Generación de AttachedDocument con CDATA - Eventos RADIAN con flujo secuencial (030, 031, 032, 033) - Importación de facturas de proveedor desde XML o ZIP - Representación gráfica PDF según requisitos DIAN - Generación de ZIP (PDF + XML) para envío por email Modos de operación: **Demostración**, **Habilitación** y **Producción**. Documentos soportados: - Factura electrónica de venta (01) - Factura electrónica de exportación (02) - Nota crédito electrónica (91) con o sin referencia - Nota débito electrónica (92) - Documento soporte (05) - Nota de ajuste documento soporte (95) Copyright (C) 2025 IKU Solutions - Yan Chirino <yan.chirino@iku.solutions>
Code Analysis ⓘ
Views touched (20)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
dian_attached_document |
Contenedor Electrónico AttachedDocument UBL 2.1 | ir.ui.view | qweb | New |
dian_credit_note_ubl_content |
DIAN Credit Note UBL Content | ir.ui.view | qweb | New |
dian_debit_note_ubl_content |
DIAN Debit Note UBL Content | ir.ui.view | qweb | New |
dian_demo_application_response |
DIAN Demo ApplicationResponse | ir.ui.view | qweb | New |
dian_demo_numbering_range_response |
DIAN Demo GetNumberingRange Response | ir.ui.view | qweb | New |
dian_demo_send_bill_sync_response |
DIAN Demo SendBillSync Response | ir.ui.view | qweb | New |
dian_demo_send_test_set_async_response |
DIAN Demo SendTestSetAsync Response | ir.ui.view | qweb | New |
dian_invoice_ubl_content |
DIAN Invoice UBL Content | ir.ui.view | qweb | New |
dian_numbering_range_query_content |
Consulta de Rango de Numeración para la DIAN | ir.ui.view | qweb | New |
dian_partner_fiscal_info |
dian_partner_fiscal_info | ir.ui.view | qweb | New |
dian_soap_envelope |
Envoltura XML para peticiones SOAP hacia la DIAN | ir.ui.view | qweb | New |
l10n_co_radian_event_wizard_form |
l10n_co.dian.radian.event.wizard.form | l10n_co.dian.radian.event.wizard | form | New |
report_invoice_document_dian_fiscal_info |
report_invoice_document_dian_fiscal_info | ir.ui.view | qweb | Inherits account.report_invoice_document |
report_invoice_document_dian_footer |
report_invoice_document_dian_footer | ir.ui.view | qweb | Inherits account.report_invoice_document |
report_invoice_document_dian_payment |
report_invoice_document_dian_payment | ir.ui.view | qweb | Inherits account.report_invoice_document |
report_invoice_document_dian_title |
report_invoice_document_dian_title | ir.ui.view | qweb | Inherits account.report_invoice_document |
report_layout_dian_company_info |
report_layout_dian_company_info | ir.ui.view | qweb | Inherits web.external_layout_standard |
view_account_journal_form_inherit |
account.journal.form.electronic.invoice | account.journal | form | Inherits account.view_account_journal_form |
view_invoice_tree_dian_status |
account.move.tree.dian.status | account.move | tree | Inherits account.view_invoice_tree |
view_move_form_radian_button |
account.move.form.radian.button | account.move | form | Inherits account.view_move_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (10)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (22)
-
l10n_co_dian_operation_modeSelectiondefault='demo'help='Demostración: genera XML y firma con certificado demo, no envía a DIAN. Habilitación: envía al ambiente de pruebas DIAN. Producción: envía al ambiente productivo DIAN.'required=Trueselection=[('demo', 'Demostración'), ('test', 'Habilitación'), ('production', 'Producción')]string='Modo de Operación' -
l10n_co_dian_resolution_typeSelectioncopy=Falsehelp='Corresponde al tipo de resolución de la factura'selection=[('FACTURA ELECTRÓNICA DE VENTA', 'FACTURA ELECTRÓNICA DE VENTA'), ('FACTURA D.E./P.O.S.', 'FACTURA D.E. / P.O.S.'), ('FACTURA POR TALONARIO O DE PAPEL', 'FACTURA POR TALONARIO O DE PAPEL'), ('DOCUMENTO SOPORTE', 'DOCUMENTO SOPORTE')]string='Tipo de Resolución' -
l10n_co_dian_resolution_type_testSelectioncopy=Falsedefault='FACTURA ELECTRÓNICA DE VENTA'help='Corresponde al tipo de resolución de la factura (Habilitación)'selection=[('FACTURA ELECTRÓNICA DE VENTA', 'FACTURA ELECTRÓNICA DE VENTA'), ('FACTURA D.E./P.O.S.', 'FACTURA D.E. / P.O.S.'), ('FACTURA POR TALONARIO O DE PAPEL', 'FACTURA POR TALONARIO O DE PAPEL'), ('DOCUMENTO SOPORTE', 'DOCUMENTO SOPORTE')]string='Tipo de Resolución (Habilitación)' -
l10n_co_dian_software_identificationCharstring='Identificación' -
l10n_co_dian_software_pinCharstring='Pin' -
l10n_co_dian_software_technical_keyCharstring='Clave técnica (Producción)' -
l10n_co_dian_software_technical_key_testCharstring='Clave Técnica (Hab.)' -
l10n_co_dian_test_set_idCharhelp='Identificador del set de pruebas asignado por la DIAN al registrar el software. Requerido para SendTestSetAsync en ambiente de habilitación.'string='TestSetId (Hab.)' -
l10n_co_electronic_document_end_numberIntegerstring='Número de Fin' -
l10n_co_electronic_document_end_number_testIntegerstring='Número de Fin (Hab.)' -
l10n_co_electronic_document_end_resolution_dateDatestring='Fecha de Fin de Resolución' -
l10n_co_electronic_document_end_resolution_date_testDatestring='Fecha Fin Resolución (Hab.)' -
l10n_co_electronic_document_messageTextstring='Mensaje de Resolución' -
l10n_co_electronic_document_message_testTextstring='Mensaje Resolución (Hab.)' -
l10n_co_electronic_document_prefixCharstring='Prefijo' -
l10n_co_electronic_document_prefix_testCharstring='Prefijo (Hab.)' -
l10n_co_electronic_document_resolutionCharstring='Resolución' -
l10n_co_electronic_document_resolution_testChardefault='000000000'string='Resolución (Hab.)' -
l10n_co_electronic_document_start_numberIntegerstring='Número de Inicio' -
l10n_co_electronic_document_start_number_testIntegerstring='Número de Inicio (Hab.)' -
l10n_co_electronic_document_start_resolution_dateDatestring='Fecha de Inicio de Resolución' -
l10n_co_electronic_document_start_resolution_date_testDatestring='Fecha Inicio Resolución (Hab.)'
-
action_query_numbering_range(self)Query DIAN for numbering ranges via GetNumberingRange.
New fields (3)
-
l10n_co_is_support_documentBooleancompute='_compute_l10n_co_is_support_document'string='Es Documento Soporte' -
l10n_co_radian_events_sentCharcopy=Falsehelp='Códigos de eventos RADIAN enviados, separados por coma. Ej: 030,032,033'string='Eventos RADIAN enviados' -
l10n_co_radian_statusSelectioncopy=Falseselection=[('pending', 'Pendiente'), ('receipt_sent', 'Acuse enviado'), ('goods_received', 'Bienes/Servicios recibidos'), ('accepted', 'Aceptada'), ('rejected', 'Reclamada')]string='Estado RADIAN'
-
action_open_radian_wizard(self)Abrir el wizard de eventos RADIAN. -
action_query_dian_status(self)Query DIAN for document status. Uses GetStatusZip (by zipKey) in test/habilitación mode, or GetStatus (by CUFE/trackId) in production mode.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (3)
-
event_typeSelectiondefault='030'required=Trueselection=RADIAN_EVENTSstring='Tipo de Evento' -
move_idMany2one → account.movecomodel_name='account.move'readonly=Truerequired=Truestring='Factura' -
noteTextstring='Nota'
-
action_send_event(self)Enviar evento RADIAN a la DIAN. -
default_get(self, fields_list)@api.model
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
Loading…