TIP: You can type at any time to perform a new search.
Saudi Arabia - E-invoicing
l10n_sa_edi · odoo/odoo
Security findings
- Repository
- odoo/odoo · module folder
- Module version
- 0.3
- Category
- Accounting/Localizations/EDI
- Folder size
- 0.46 MB
- License
- LGPL-3
- Application
- No
- Auto-installable
- No
- Website
- None
- Last tracking update
- 2026-10-01 06:16:56
- Authors
- Odoo S.A.
- Maintainers
- Odoo S.A.
- Committers
- Xavier Morel, Raphael Collet, Thibault Delavallée, Odoo Translation Bot, Christophe Matthieu, qdp-odoo, Julien Castiaux, Victor Feyens, Andrea Grazioso (agr-odoo), Tiffany Chang (tic), william-andre, John Laterre (jol), Pedram (PEBR), Mahamadasif Ansari, amdi-odoo, Gauthier Wala (gawa), Yosua Nicolaus, Dylan Kiss (dyki), Odoo, khfa, Harsh Modi, reka-odoo, kcv-odoo, Louis Gobert, hatr-odoo, Mathieu Coutant, Khumam Alzagim, Yousef Alnashef (alny), Claire (clbr), Hammad Arif, sben-odoo, Krzysztof Magusiak (krma), devp-odoo, dvsh-odoo, ijja-odoo, bhra-odoo, bhna-odoo, Jugurtha, hisi-odoo, Julien Launois (jula), adip-odoo, pssh-odoo, Jacob Was (jacw), h4818, Ayush Modi, Adnan Sabbir, Nisarg (nipl), khom-odoo, Omar Khalid, MohsinAli Masi, matd-odoo, Leonardo Medina, yush-odoo, Farah (ahmfa), mdsi-odoo
Code Analysis
Views touched (14)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
address_form_fields |
address_form_fields | ir.ui.view | qweb | Inherits portal.address_form_fields |
export_sa_zatca_ubl_extensions |
export_sa_zatca_ubl_extensions | ir.ui.view | qweb | New |
export_sa_zatca_ubl_signed_properties |
export_sa_zatca_ubl_signed_properties | ir.ui.view | qweb | New |
l10n_sa_edi_company_address_list |
l10n_sa_edi_company_address_list | ir.ui.view | qweb | Inherits web.company_address_list |
l10n_sa_edi_otp_wizard_view_form |
l10n_sa_edi.otp.wizard.form | l10n_sa_edi.otp.wizard | form | New |
l10n_sa_edi_report_invoice_document |
l10n_sa_edi_report_invoice_document | ir.ui.view | qweb | Inherits l10n_sa.l10n_sa_report_invoice_document |
res_config_settings_view_form |
res.config.settings.view.form.inherit.l10n_sa_edi | res.config.settings | form | Inherits account.res_config_settings_view_form |
sa_partner_address_form |
sa.partner.form.address | res.partner | form | New |
view_account_invoice_filter |
account.invoice.select | account.move | Inherits account.view_account_invoice_filter | |
view_account_journal_form |
account.journal.form.l10n_sa_edi | account.journal | form | Inherits account.view_account_journal_form |
view_company_form |
res.company.l10n_sa_edi.form | res.company | form | Inherits base.view_company_form |
view_invoice_tree |
account.invoice.list | account.move | list | Inherits account.view_invoice_tree |
view_move_form |
account.view.move.form | account.move | form | Inherits account.view_move_form |
view_tax_form |
account.tax.form.zatca | account.tax | form | Inherits account.view_tax_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (19)
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 (10)
-
l10n_sa_chain_sequence_idMany2one → ir.sequencecopy=Falsereadonly=Truestring='ZATCA account.move chain sequence' args: 'ir.sequence' -
l10n_sa_compliance_checks_passedBooleancopy=Falsedefault=Falsehelp='Specifies if the Compliance Checks have been completed successfully' args: 'Compliance Checks Done' -
l10n_sa_compliance_csid_certificate_idMany2one → certificate.certificatecomodel_name='certificate.certificate'domain=[('is_valid', '=', True)]string='CCSID certificate' -
l10n_sa_compliance_csid_jsonCharcopy=Falsegroups='base.group_system'help='Compliance CSID data received from the Compliance CSID API in dumped json format' args: 'CCSID JSON' -
l10n_sa_csrBinaryattachment=Truecopy=Falsegroups='base.group_system'help='The Certificate Signing Request that is submitted to the Compliance API' -
l10n_sa_csr_errorsHtmlcopy=False args: 'Onboarding Errors' -
l10n_sa_latest_submission_hashCharcopy=Falsehelp='Hash of the latest submitted invoice to be used as the Previous Invoice Hash (KSA-13)' args: 'Latest Submission Hash' -
l10n_sa_production_csid_certificate_idMany2one → certificate.certificatecomodel_name='certificate.certificate'domain=[('is_valid', '=', True)]string='PCSID Certificate' -
l10n_sa_production_csid_jsonCharcopy=Falsegroups='base.group_system'help='Production CSID data received from the Production CSID API in dumped json format' args: 'PCSID JSON' -
l10n_sa_production_csid_validityDatetimerelated='l10n_sa_production_csid_certificate_id.date_end'
No public methods.
New fields (3)
-
l10n_sa_compliance_checks_passedBooleanrelated='journal_id.l10n_sa_compliance_checks_passed' -
l10n_sa_edi_transaction_type_idsMany2many → l10n_sa_edi.transaction.typecomodel_name='l10n_sa_edi.transaction.type'compute='_compute_l10n_sa_edi_transaction_type_ids'readonly=Falsestore=Truestring='Transaction type' -
l10n_sa_is_csid_readyBooleancompute='_compute_l10n_sa_is_csid_ready'
-
button_draft(self)
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 (2)
-
l10n_sa_show_exemption_reasonBooleancompute='_compute_l10n_sa_show_exemption_reason' -
ubl_cii_tax_exemption_reason_codeSelectionselection_add=EXEMPTION_REASON_CODES
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 (12)
-
account_move_idMany2one → account.movecompute='_compute_resource' args: 'account.move' -
attachment_idMany2one → ir.attachmentcomodel_name='ir.attachment'readonly=True -
company_idMany2one → res.companycomodel_name='res.company'required=True -
contentBinarycompute='_compute_content' -
journal_idMany2one → account.journalcomodel_name='account.journal'required=True -
l10n_sa_chain_indexIntegercopy=Falsehelp='Invoice index in chain, set if and only if an in-chain XML was submitted and did not error'readonly=Truestring='ZATCA chain index' -
l10n_sa_edi_log_idsOne2many → l10n_sa_edi.logcomodel_name='l10n_sa_edi.log'inverse_name='l10n_sa_edi_document_id' -
messageHtmlhelp='Detailed Errors/Warnings'translate=True args: 'ZATCA Errors/Warnings' -
nameCharrelated='attachment_id.name' -
res_idMany2oneReferencemodel_field='res_model'readonly=Truerequired=True -
res_modelSelectionreadonly=Truerequired=Truestring='Invoice Type' args: [('account.move', 'Journal Entry'), ('pos.order', 'POS Order')] -
stateSelectionreadonly=Trueselection=L10N_SA_DOCUMENT_STATESstring='ZATCA State'
-
resource(self)@property
New fields (7)
-
attachment_nameChar -
document_stateSelectionrelated='l10n_sa_edi_document_id.state' -
is_latest_logBooleancompute='_compute_is_latest_log' -
is_testBoolean -
l10n_sa_edi_document_idMany2one → l10n_sa_edi.documentcomodel_name='l10n_sa_edi.document' -
messageHtmltranslate=True -
stateSelectionselection=L10N_SA_DOCUMENT_STATES
-
action_retry(self)
New fields (3)
-
journal_idMany2one → account.journaldefault=<expr>required=True args: 'account.journal' -
l10n_sa_otpCharcopy=Falsehelp='OTP required to get a CCSID. Can only be acquired through the Fatoora portal.' args: 'OTP' -
l10n_sa_renewalBooleandefault=Falsehelp='Used to decide whether we should call the PCSID renewal API or the CCSID API' args: 'PCSID Renewal'
-
default_get(self, fields)@api.model -
validate(self)
New fields (2)
-
codeSelectionrequired=Trueselection=[('export', 'Export'), ('summary', 'Summary'), ('nominal', 'Nominal')]string='Code' -
nameCharrequired=Truestring='Name'translate=True
No public methods.
New fields (7)
-
l10n_sa_api_modeSelectioncopy=Falsedefault='sandbox'help='Specifies which API the system should use'required=True args: [('sandbox', 'Sandbox'), ('preprod', 'Simulation (Pre-Production)'), ('prod', 'Production')] -
l10n_sa_edi_additional_identification_numberCharreadonly=Falserelated='partner_id.l10n_sa_edi_additional_identification_number' -
l10n_sa_edi_additional_identification_schemeCharreadonly=Falserelated='partner_id.l10n_sa_edi_additional_identification_scheme' -
l10n_sa_edi_building_numberCharcompute='_compute_address'inverse='_l10n_sa_edi_inverse_building_number' -
l10n_sa_edi_is_productionBooleancopy=Falsestring='Is Production' -
l10n_sa_edi_plot_identificationCharcompute='_compute_address'inverse='_l10n_sa_edi_inverse_plot_identification' -
l10n_sa_private_key_idMany2one → certificate.keycomodel_name='certificate.key'copy=Falsedomain=[('public', '=', False)]help='The private key used to generate the CSR and obtain certificates'string='ZATCA Private key'
-
write(self, vals)
New fields (1)
-
l10n_sa_api_modeSelectionreadonly=Falserelated='company_id.l10n_sa_api_mode'
No public methods.
New fields (4)
-
l10n_sa_edi_additional_identification_numberCharcompute='_compute_l10n_sa_edi_additional_identification_fields'help='Additional Identification Number for the Seller/Buyer'inverse='_inverse_l10n_sa_edi_additional_identification_fields'string='Identification Number (SA)' -
l10n_sa_edi_additional_identification_schemeCharcompute='_compute_l10n_sa_edi_additional_identification_fields'help='Additional Identification Scheme for the Seller/Buyer'inverse='_inverse_l10n_sa_edi_additional_identification_fields'string='Identification Scheme' -
l10n_sa_edi_building_numberCharargs: 'Building Number' -
l10n_sa_edi_plot_identificationCharargs: 'Secondary Number'
No public methods.
New fields (8)
-
l10n_sa_chain_indexIntegerrelated='l10n_sa_edi_document_id.l10n_sa_chain_index' -
l10n_sa_edi_document_idMany2one → l10n_sa_edi.documentcomodel_name='l10n_sa_edi.document'copy=False -
l10n_sa_edi_log_idsOne2manyrelated='l10n_sa_edi_document_id.l10n_sa_edi_log_ids' -
l10n_sa_edi_stateSelectionrelated='l10n_sa_edi_document_id.state' -
l10n_sa_edi_supply_end_dateDatecopy=Falsehelp='Date when the supply of goods or services is completed, mainly used for continuous supplies.'string='Supply End Date' -
l10n_sa_invoice_signatureCharcopy=False args: 'Unsigned XML Signature' -
l10n_sa_is_testBooleancompute='_compute_l10n_sa_is_test'store=True -
l10n_sa_uuidCharcopy=Falsehelp='Universally unique identifier of the Invoice'string='Document UUID (SA)'
No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…