Invocie

Global

Mexico CFDI 4.0: SAT, PAC Stamping, and What Changed from 3.3

SAT's CFDI 4.0 brings stricter recipient validation, mandatory fiscal regime codes, and a redesigned complemento de pago. Here's the practical guide for sellers integrating from scratch.

Invocie Team · 15 เมษายน 2569 · 6 นาทีการอ่าน


Mexico's Comprobante Fiscal Digital por Internet (CFDI) is one of the oldest production clearance regimes in the world — version 1.0 went live in 2011, and the country has been issuing electronic-only fiscal documents for over a decade. CFDI 4.0 became mandatory in April 2023 after a six-month parallel-running period with 3.3, and brings the strictest data-quality rules in CFDI's history.

How CFDI clearance works

Unlike ZATCA, sellers don't talk to the tax authority (SAT) directly. The flow goes through certified Proveedores Autorizados de Certificación (PACs) — currently around 70 licensed providers. Your ERP sends the unsigned XML to a PAC, the PAC validates against SAT rules and applies the digital seal (timbre fiscal), and only then is the invoice legally valid. The PAC forwards a copy to SAT and returns the signed XML to you within seconds.

What's mandatory in 4.0

  • Receptor name must match SAT's records EXACTLY. CFDI 3.3 was lenient about this — 4.0 will reject "S.A. de C.V." if SAT has it as "SA DE CV" with no periods.
  • Receptor's fiscal regime code (RegimenFiscalReceptor) is required, drawn from SAT catalogue c_RegimenFiscal. "601" = general regime for legal entities, "605" = wages, etc.
  • Receptor's postal code (DomicilioFiscalReceptor) is required and must match SAT records.
  • The Objeto Impuesto attribute on every concepto is mandatory — "01" (not subject), "02" (subject), "03" (subject but not breakdown), "04" (subject IVA at 0%).
  • The complemento de pago is now version 2.0, redesigned around exchange-rate tracking and partial-payment chains.

Complemento de pago changes

When you receive a payment for a previously-issued CFDI, you have to issue a separate Pago CFDI referencing the original by UUID. CFDI 4.0's complemento 2.0 makes the FX handling explicit: if you billed in USD but received MXN, the payment CFDI carries both the received MXN amount and the equivalent in the original currency at the day's BANXICO rate. SAT cross-checks.

Top stamping rejections

  1. CFDI40103 — Receptor RFC doesn't match the registered name. Validate via SAT's Listado de Contribuyentes API at sign-up time, not at invoicing time.
  2. CFDI40111 — Postal code doesn't match RFC. The Domicilio Fiscal is keyed on RFC; you can pull it from SAT's Constancia de Situación Fiscal.
  3. CFDI40123 — Total in MXN exceeds 6 decimal places. CFDI accepts up to 6 but most ERPs emit 10; truncate explicitly.
  4. CFDI40147 — Concepto with TasaOCuota=0.0 but ObjetoImp != 04. Common when invoicing exempt items; pair them correctly.

Addendas — buyer-specific extensions

Large Mexican buyers (Walmart, Liverpool, FEMSA) require an Addenda block — buyer-specific XML appended after the SAT-signed portion. The PAC doesn't validate addendas (they're outside SAT's purview), but if your invoice doesn't carry the right addenda for that buyer, their AP system rejects it on receipt. Maintain a per-buyer addenda template.

Invocie's LATAMStrategy handles PAC selection, certificate management, complemento de pago 2.0, and per-buyer addenda routing. Switching between PACs without re-onboarding to SAT is built in.


อ่านเพิ่มเติม

ส่งใบกำกับที่ปฏิบัติตามได้ในทุกตลาด

ZATCA, FTA, Peppol และ post-audit ระดับโลก — API เดียว

พูดคุยกับทีมของเรา