OdooWiki OCA HUB

SAT Catalog for the mexican localization

l10n_mx_catalogs folder_open OCA/l10n-mexico open_in_new
Localization License: LGPL-3

This module provides the data from the Mexican tax authority (SAT).

Features

  • Necessary fields for electronic invoicing
  • Necessary fields for electronic payroll
  • Official data from Servicio de Administración Tributaria (SAT

Updates

To update the catalogs, you need to:

  • Go to this page of the SAT website
  • Download the XLS file for "Catálogos CFDI Versión 4.0 (xls)"
  • Run the script

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Loads the official SAT catalogs (product/service codes, units, postal codes, payment methods, tax regimes, CFDI usage, transport data, etc.) into Odoo so Mexican electronic invoicing and payroll can use the correct government codes.

This module installs a set of reference tables with the official values published by the Mexican tax authority (SAT). It does not add menus or buttons; the data is available to other modules of the Mexican localization that need to fill in electronic invoices (CFDI) and payroll.

The catalogs included cover: product/service codes with indicators for VAT and IEPS and border incentive, units of measure with symbol, postal codes with state and municipality, neighborhoods, payment forms, payment methods, cancellation reasons, CFDI usage, tax regimes, months, periodicity, relationship types, countries, and transport data (configuration, figure, part, subtype of trailer, permit type).

Each catalog stores a code and a description, and the display name is automatically shown as "[code] description" so users can search by either. Some catalogs add extra flags: tax regimes and CFDI usage indicate whether they apply to individuals or legal entities, and CFDI usage also lists applicable tax regimes. The country catalog can be matched to Odoo's standard country list by name.

All records are read-only for regular users, so the official values cannot be changed by mistake. A separate script (not part of the Odoo interface) can regenerate the data files from the SAT XLS file when the authority publishes updates.

Depends on

base

Required by other modules

Models and fields (19)
  • l10n_mx_catalogs.c_pais · new modelcode (Código), description (Descripción)
  • l10n_mx_catalogs.c_meses · new modelcode (Código), name (Nombre)
  • l10n_mx_catalogs.c_colonia · new modelzip, code, name
  • l10n_mx_catalogs.c_uso_cfdi · new modelcode (Código), name (Nombre), applies_to_legal_person (Aplica para persona moral), applies_to_fiscal_regimes (Aplica para régimen fiscal), applies_to_natural_person (Aplica para persona física)
  • l10n_mx_catalogs.c_localidad · new modelcode (Codigo), name (Localidad), state_id (Estado), state_code (Codigo de Estado)
  • l10n_mx_catalogs.c_forma_pago · new modelcode (Código), name (Nombre)
  • l10n_mx_catalogs.c_metodo_pago · new modelcode (Codigo), name (Nombre)
  • l10n_mx_catalogs.c_clave_unidad · new modelcode (Código), name (Nombre), symbol (Símbolo), description (Descripción)
  • l10n_mx_catalogs.c_periodicidad · new modelcode (Codigo), name (Nombre)
  • l10n_mx_catalogs.c_sub_tipo_rem · new modelcode (Código), description (Descripción)
  • l10n_mx_catalogs.c_tipo_permiso · new modelcode, description, clave_transporte
  • l10n_mx_catalogs.c_codigo_postal · new modelcode (Código Postal), state_code (Código de Estado), locality_code (Código de Localidad), municipality_code (Código de Municipio)
  • l10n_mx_catalogs.c_tipo_relacion · new modelcode (Código), name, description (Descripción)
  • l10n_mx_catalogs.c_regimen_fiscal · new modelcode (Código), name (Nombre), applies_to_legal_person (Aplica para persona moral), applies_to_natural_person (Aplica para persona física)
  • l10n_mx_catalogs.c_clave_prod_serv · new modelcode (Código), name (Descripción), includes_iva (Incluye IVA Trasladado), includes_ieps (Incluye IEPS Trasladado), border_incentive (Estímulo Fronterizo), alternative_names (Nombres Alternos)
  • l10n_mx_catalogs.c_parte_transporte · new modelcode (Código), description (Descripción)
  • l10n_mx_catalogs.c_figura_transporte · new modelcode (Código), description (Descripción)
  • l10n_mx_catalogs.c_motivo_cancelacion · new modelcode (Código), name (Nombre)
  • l10n_mx_catalogs.c_config_autotransporte · new modelcode (Código), description (Descripción)

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 3 confirmed, 6 with no information of 9 versions.

Sources · Odoo 15.0

Confirmed on 2026-11-03 in branch 15.0 of OCA/l10n-mexico.

terminal Installation and usage

OCA documentation · Odoo 19.0

This module does not provide any feature per se. It only allows to load data for electronic invoicing (l10n_mx_cfdi) and electronic payroll (l10n_mx_hr_payroll).

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.