Factura Electrónica - Argentina

l10n_ar_afipws_fe
REPOSITORY
REPOSITORYOCA/l10n-argentina
GIT
GIThttps://github.com/OCA/l10n-argentina.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-argentina/tree/16.0/l10n_ar_afipws_fe
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ADHOC SA, Nimarosa
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ADHOC SA, Nimarosa
COMMITTERS
COMMITTERSWeblate, oca-ci, nicolasrsande
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-argentina
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:54:00
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/l10n-argentina:
    - l10n_ar_afipws
odoo/odoo:
    - l10n_ar
    - l10n_latam_invoice_document
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - account_debit_note
    - l10n_latam_base
    - contacts
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES OpenSSL
future
pysimplesoap
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
account_move_search_inherit_l10n_ar_afipws_fe account.move.view.search.inherit account.move filter Inherits account.view_account_invoice_filter
res_config_settings_view_form res.config.settings.view.form.inherit.account res.config.settings field Inherits l10n_ar_afipws.res_config_settings_view_form
validate_account_move_view Post Journal Entries validate.account.move field Inherits account.validate_account_move_view
view_account_journal_form account.journal.form account.journal sheet Inherits l10n_ar.view_account_journal_form
view_move_form account.move.afip.form account.move field Inherits l10n_ar.view_move_form
Models touched (12)

New fields (0)

No new fields.

Public methods (19)
  • get_pyafipws_NCM(self)
  • get_pyafipws_cuit_document_classes(self)
  • get_pyafipws_currency_rate(self, currency)
  • get_pyafipws_last_invoice(self, document_type)
  • get_pyafipws_post_invoice_numbers(self)
  • get_pyafipws_zonas(self)
  • test_pyafipws_dummy(self)
    AFIP Description: Método Dummy para verificación de funcionamiento de infraestructura (FEDummy)
  • test_pyafipws_point_of_sales(self)
  • wsbfe_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)
  • wsbfe_pyafipws_NCM(self, ws)
  • wsbfe_pyafipws_cuit_document_classes(self, ws)
  • wsbfe_pyafipws_zonas(self, ws)
  • wsfe_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)
  • wsfe_pyafipws_cuit_document_classes(self, ws)
  • wsfe_pyafipws_point_of_sales(self, ws)
  • wsfex_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)
  • wsfex_pyafipws_cuit_document_classes(self, ws)
  • wsfex_pyafipws_point_of_sales(self, ws)
  • wsmtxca_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)

New fields (1)
  • afip_ws Selection
    compute='_compute_afip_webservice' selection='_get_afip_ws' string='Webservice AFIP'
Public methods (1)
  • action_get_connection(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • afip_fce_es_anulacion Boolean
    help='Solo utilizado en comprobantes MiPyMEs (FCE) del tipo débito o crédito.\n- SI: sí el comprobante asociado se encuentra rechazado por el comprador\n- NO: sí el comprobante asociado NO se encuentra rechazado por el comprador' string='FCE: Es anulacion?'
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 (9)
  • afip_auth_code Char
    copy=False oldname='afip_cae' readonly=True size=24 states={'draft': [('readonly', False)]} string='CAE/CAI/CAEA Code'
  • afip_auth_code_due Date
    copy=False oldname='afip_cae_due' readonly=True states={'draft': [('readonly', False)]} string='CAE/CAI/CAEA due Date'
  • afip_auth_mode Selection
    copy=False readonly=True states={'draft': [('readonly', False)]} string='AFIP authorization mode' args: [('CAE', 'CAE'), ('CAI', 'CAI'), ('CAEA', 'CAEA')]
  • afip_message Text
    copy=False readonly=True string='AFIP Message'
  • afip_qr_code Char
    compute='_compute_qr_code' string='AFIP QR Code'
  • afip_result Selection
    copy=False help='AFIP request result' readonly=True states={'draft': [('readonly', False)]} args: [('', 'n/a'), ('A', 'Aceptado'), ('R', 'Rechazado'), ('O', 'Observado')], 'Resultado'
  • afip_xml_request Text
    copy=False readonly=True string='AFIP XML Request'
  • afip_xml_response Text
    copy=False readonly=True string='AFIP XML Response'
  • asynchronous_post Boolean
Public methods (3)
  • authorize_afip(self)
  • cron_asynchronous_post(self)
  • get_related_invoices_data(self)
    List related invoice information to fill CbtesAsoc.

New fields (1)
  • afip_ws Selection
    default='wsfe' ondelete={'wsfe': 'set default', 'wsmtxca': 'set default', 'wsfex': 'set default', 'wsbfe': 'set default', 'wscdc': 'set default'} selection_add=[('wsfe', 'Mercado interno -sin detalle- RG2485 (WSFEv1)'), ('wsmtxca', 'Mercado interno -con detalle- RG2904 (WSMTXCA)'), ('wsfex', 'Exportación -con detalle- RG2758 (WSFEXv1)'), ('wsbfe', 'Bono Fiscal -con detalle- RG2557 (WSBFE)'), ('wscdc', 'Constatación de Comprobantes (WSCDC)')]
Public methods (1)
  • get_afip_ws_url(self, afip_ws, environment_type)
    @api.model

New fields (2)
  • afip_ws Selection
    related='journal_id.afip_ws'
  • journal_id Many2one → account.journal
    args: 'account.journal', 'Journal'
Public methods (1)
  • get_pyafipws_consult_invoice(self, document_number)

New fields (1)
  • afip_auth_verify_type Selection
    default='not_available' help='It adds an option on invoices to verify the afip authorization data (for documents with CAE, CAI or CAEA).\nIf you choose required, then on supplier invoices, verification is mandatory before invoice validation' string='AFIP authorization verification' args: [('not_available', 'Not Available'), ('available', 'Available'), ('required', 'Required')]
Public methods (0)

No public methods.

New fields (1)
  • l10n_ar_afip_fce_transmission Selection
    config_parameter='l10n_ar_afipws_fe.fce_transmission' help='Este campo sera necesario cuando informes comprobantes del tipo FCE MiPyME' args: [('SCA', 'SCA - TRANSFERENCIA AL SISTEMA DE CIRCULACION ABIERTA'), ('ADC', 'ADC - AGENTE DE DEPOSITO COLECTIVO')], 'FCE: Opción de Transmisión'
Public methods (0)

No public methods.

New fields (1)
  • async_post Boolean
    default=False help='Post moves asynchronously.' args: 'Asynchronous Post'
Public methods (1)
  • validate_move(self)
REPOSITORY
REPOSITORYOCA/l10n-argentina
GIT
GIThttps://github.com/OCA/l10n-argentina.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-argentina/tree/14.0/l10n_ar_afipws_fe
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYAccounting/Localizations
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ADHOC SA, Nimarosa, Moldeo Interactive, Exemax, Codize
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ADHOC SA, Nimarosa, Moldeo Interactive, Exemax, Codize
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, nicolasrsande
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-argentina
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:13
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/l10n-argentina:
    - l10n_ar_afipws
odoo/odoo:
    - base
    - l10n_ar
    - l10n_latam_invoice_document
    - account
    - base_setup
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - account_debit_note
    - l10n_latam_base
    - contacts
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES OpenSSL
pyafipws@https://github.com/reingart/pyafipws/archive/main.zip
pysimplesoap
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
account_move_inherit_l10n_ar_afipws_fe account.move.view.afip.tree account.move field Inherits account.view_invoice_tree
account_move_search_inherit_l10n_ar_afipws_fe account.move.view.search.inherit account.move filter Inherits account.view_account_invoice_filter
l10n_ar_view_account_move_reversal l10n_ar.account.move.reversal.form account.move.reversal field Inherits account.view_account_move_reversal
view_account_journal_form account.journal.form account.journal sheet Inherits l10n_ar.view_account_journal_form
view_currency_form res.currency Form res.currency field Inherits base.view_currency_form
view_move_form account.move.afip.form account.move field Inherits l10n_ar.view_move_form
Models touched (10)

New fields (1)
  • afip_ws Selection
    compute='_compute_afip_webservice' readonly='True' store=True args: [('wsfe', 'Mercado interno -sin detalle- RG2485 (WSFEv1)'), ('wsmtxca', 'Mercado interno -con detalle- RG2904 (WSMTXCA)'), ('wsfex', 'Exportación -con detalle- RG2758 (WSFEXv1)'), ('wsbfe', 'Bono Fiscal -con detalle- RG2557 (WSBFE)')], 'Webservice AFIP'
Public methods (14)
  • action_get_connection(self)
  • get_pyafipws_NCM(self)
  • get_pyafipws_cuit_document_classes(self)
  • get_pyafipws_currencies(self)
  • get_pyafipws_currency_rate(self, currency)
  • get_pyafipws_last_invoice(self, document_type)
  • get_pyafipws_zonas(self)
  • test_pyafipws_dummy(self)
    AFIP Description: Método Dummy para verificación de funcionamiento de infraestructura (FEDummy)
  • test_pyafipws_point_of_sales(self)
  • test_pyafipws_taxes(self)
  • wsbfe_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)
  • wsfe_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)
  • wsfex_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)
  • wsmtxca_get_pyafipws_last_invoice(self, l10n_ar_afip_pos_number, document_type, ws)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • afip_fce_es_anulacion Boolean
    help='\n Solo utilizado en comprobantes MiPyMEs (FCE)\n del tipo débito o crédito. Debe informar:\n\n "- SI: sí el comprobante asociado (original) se\n encuentra rechazado por el comprador\n"\n "- NO: sí el comprobante asociado (original) NO se\n encuentra rechazado por el comprador\n ' string='FCE: Es anulacion?'
  • afip_mypyme_sca_adc Selection
    default='SCA' selection=[('SCA', 'SCA - Sistema Circulacion Abierta'), ('ADC', 'AGC - Agente Deposito Colectivo')] string='FCE: Opcion de Trasmision'
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 (9)
  • afip_auth_code Char
    copy=False oldname='afip_cae' readonly=True size=24 states={'draft': [('readonly', False)]} string='CAE/CAI/CAEA Code'
  • afip_auth_code_due Date
    copy=False oldname='afip_cae_due' readonly=True states={'draft': [('readonly', False)]} string='CAE/CAI/CAEA due Date'
  • afip_auth_mode Selection
    copy=False readonly=True states={'draft': [('readonly', False)]} string='AFIP authorization mode' args: [('CAE', 'CAE'), ('CAI', 'CAI'), ('CAEA', 'CAEA')]
  • afip_document_number Char
    copy=False default='/' readonly=True string='AFIP Document Number'
  • afip_message Text
    copy=False readonly=True string='AFIP Message'
  • afip_qr_code Char
    compute='_compute_qr_code' string='AFIP QR Code'
  • afip_result Selection
    copy=False help='AFIP request result' readonly=True states={'draft': [('readonly', False)]} args: [('', 'n/a'), ('A', 'Aceptado'), ('R', 'Rechazado'), ('O', 'Observado')], 'Resultado'
  • afip_xml_request Text
    copy=False readonly=True string='AFIP XML Request'
  • afip_xml_response Text
    copy=False readonly=True string='AFIP XML Response'
Public methods (3)
  • authorize_afip(self)
  • authorize_afip_cron(self)
    @api.model
  • get_related_invoices_data(self)
    List related invoice information to fill CbtesAsoc.

New fields (1)
  • afip_ws Selection
    required=True args: [('wsfe', 'Mercado interno -sin detalle- RG2485 (WSFEv1)'), ('wsmtxca', 'Mercado interno -con detalle- RG2904 (WSMTXCA)'), ('wsfex', 'Exportación -con detalle- RG2758 (WSFEXv1)'), ('wsbfe', 'Bono Fiscal -con detalle- RG2557 (WSBFE)'), ('wscdc', 'Constatación de Comprobantes (WSCDC)'), ('ws_sr_padron_a4', 'Servicio de Consulta de Padrón Alcance 4'), ('ws_sr_padron_a5', 'Servicio de Consulta de Padrón Alcance 5'), ('ws_sr_padron_a10', 'Servicio de Consulta de Padrón Alcance 10'), ('ws_sr_padron_a100', 'Servicio de Consulta de Padrón Alcance 100')], 'AFIP WS'
Public methods (1)
  • get_afip_ws_url(self, afip_ws, environment_type)
    @api.model

New fields (2)
  • afip_ws Selection
    related='journal_id.afip_ws'
  • journal_id Many2one → account.journal
    args: 'account.journal', 'Journal'
Public methods (1)
  • get_pyafipws_consult_invoice(self, document_number)

New fields (1)
  • afip_auth_verify_type Selection
    default='not_available' help='It adds an option on invoices to verify the afip authorization data (for documents with CAE, CAI or CAEA).\nIf you choose required, then on supplier invoices, verification is mandatory before invoice validation' string='AFIP authorization verification' args: [('not_available', 'Not Available'), ('available', 'Available'), ('required', 'Required')]
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.