Cretia
← Back to blog

CFDI use (uso de CFDI): G01, G03, S01 and all SAT codes

By Montserrat Devars

Published

Updated

Close-up of a hand opening one of several filing drawers in a bright office.

CFDI use (uso de CFDI) is a mandatory code on every Mexican electronic invoice that states what the recipient will use the invoice for: G03 for general expenses, G01 for buying merchandise, S01 for no tax effect, and so on. The recipient chooses it, the issuer enters it, and under CFDI 4.0 it must be compatible with the recipient's tax regime. The official catalog of Mexico's tax authority, the SAT, has 24 codes.

This guide lists every code, what it is for and which tax regimes may use it. The codes and regimes come from the c_UsoCFDI catalog that the SAT publishes on its Anexo 20 page (in Spanish). It is general guidance, not tax advice.

What CFDI means

CFDI stands for Comprobante Fiscal Digital por Internet, literally "digital tax receipt over the internet". It is Mexico's official electronic invoice: an XML file that the seller signs and a SAT-authorized certification provider (PAC) stamps. Mexican taxpayers issue one for the income they receive. Our guide to what a CFDI is covers the full picture.

The CFDI use is one field inside that invoice. Mexico's federal tax code, the Código Fiscal de la Federación (article 29-A, section IV), requires each invoice to show the recipient's tax ID (RFC), name, postal code and "the code of the tax use the recipient will give the invoice". That is why a Mexican supplier asks you for your "uso de CFDI" before invoicing you, along with your RFC.

The full catalog of CFDI use codes

The catalog has four groups. The G codes are expenses (gastos):

  • G01 Adquisición de mercancías (purchase of merchandise): goods bought for resale or raw materials for production.
  • G02 Devoluciones, descuentos o bonificaciones (returns, discounts or rebates): the code used on credit notes.
  • G03 Gastos en general (general expenses): operating costs that are neither merchandise nor investment, such as rent, services, professional fees, advertising or software.

The I codes are investments (inversiones) in fixed assets:

  • I01 Construcciones (buildings and construction).
  • I02 Mobiliario y equipo de oficina por inversiones (office furniture and equipment).
  • I03 Equipo de transporte (vehicles).
  • I04 Equipo de computo y accesorios (computer equipment and accessories).
  • I05 Dados, troqueles, moldes, matrices y herramental (dies, molds and tooling).
  • I06 Comunicaciones telefónicas (telephone communications).
  • I07 Comunicaciones satelitales (satellite communications).
  • I08 Otra maquinaria y equipo (other machinery and equipment).

The D codes are personal deductions (deducciones personales) for individuals:

  • D01 Honorarios médicos, dentales y gastos hospitalarios (medical and dental fees and hospital expenses).
  • D02 Gastos médicos por incapacidad o discapacidad (medical expenses for incapacity or disability).
  • D03 Gastos funerales (funeral expenses).
  • D04 Donativos (donations).
  • D05 Intereses reales efectivamente pagados por créditos hipotecarios (casa habitación) (real interest paid on a home mortgage).
  • D06 Aportaciones voluntarias al SAR (voluntary contributions to the retirement savings system).
  • D07 Primas por seguros de gastos médicos (medical insurance premiums).
  • D08 Gastos de transportación escolar obligatoria (mandatory school transportation).
  • D09 Depósitos en cuentas para el ahorro, primas que tengan como base planes de pensiones (deposits in savings accounts and pension-plan premiums).
  • D10 Pagos por servicios educativos (colegiaturas) (tuition).

Three special codes complete the list:

  • S01 Sin efectos fiscales (no tax effect): the recipient will not deduct or credit anything with the invoice.
  • CP01 Pagos (payments): used only on the payment receipt issued when an invoice is paid in installments or later.
  • CN01 Nómina (payroll): used only on payroll receipts.

CFDI G03 and G01: the two codes you will see most

G03, Gastos en general, is the default for a business paying for something it consumes in its operations: a hotel stay, a consulting fee, a software subscription, a repair. G01, Adquisición de mercancías, is for a business buying inventory or inputs. If you are a company buying a service from a Mexican supplier, G03 is almost always the code they expect.

Both are available only to recipients with a business-type tax regime. A salaried individual (regime 605) cannot receive a G03 invoice; stamping is rejected.

Which tax regimes can use each code

Under CFDI 4.0 the use code is validated against the recipient's tax regime (régimen fiscal), a three-digit code from another SAT catalog. Rule 2.7.1.29, section III, of the 2026 Miscellaneous Tax Resolution (in Spanish) requires both codes, and the catalog lists the regimes allowed for each use:

  • G01, G03 and I01 to I08: regimes 601, 603, 606, 612, 620, 621, 622, 623, 624, 625 and 626. Individuals and companies.
  • G02: the same regimes plus 616 (no tax obligations).
  • D01 to D10: regimes 605, 606, 607, 608, 611, 612, 614, 615 and 625. Individuals only.
  • S01 and CP01: every regime in the catalog.
  • CN01: regime 605 only (salaries and wages).

Read from the recipient's side, the most common cases are:

  • 601 (general regime for companies) and 603 (non-profit entities): G01, G02, G03, I01 to I08, S01 and CP01.
  • 605 (salaries and wages): D01 to D10, S01, CP01 and CN01. No G or I codes.
  • 612 (individuals with business or professional activity), 606 (rental income) and 625 (digital platforms): the G, I and D codes, plus S01 and CP01.
  • 626 (RESICO, the simplified trust regime): G01, G02, G03, I01 to I08, S01 and CP01. The catalog does not list 626 for the D codes.
  • 616 (no tax obligations): G02, S01 and CP01.

Our guide to tax regimes in Mexico explains what each regime is.

Which CFDI use should I choose?

  • A company buying services or supplies: G03.
  • A company buying goods to resell: G01.
  • A computer, vehicle or machine recorded as a fixed asset: I04, I03 or I08. If the buyer expenses it instead, they will ask for G03; that call is theirs.
  • An individual deducting a doctor's or dentist's bill on their annual return: D01. Prescription glasses fall under the same deduction, capped at 2,500 pesos per person per year, provided the invoice describes the lenses or the buyer holds a diagnosis from an ophthalmologist or optometrist (article 264 of the Income Tax Law regulations).
  • Tuition: D10. Donations: D04. Medical insurance: D07.
  • A foreign customer with no Mexican RFC: S01. The SAT's CFDI 4.0 filling guide (in Spanish) requires S01 when the invoice uses the generic foreign RFC XEXX010101000, together with regime 616.
  • A sale to the general public with the generic RFC XAXX010101000: S01.
  • A payment receipt (complemento de pago): always CP01.
  • You will not deduct the expense at all: S01, which every regime accepts.

Two things that confuse English speakers. First, there is no "CFDI 01" or "CFDI 03" use code: use codes always carry a letter (G01, D01, I01; G03, D03, I03). Bare two-digit codes such as 01 or 03 belong to a different field, the payment form (forma de pago), where 03 means bank transfer. Second, P01 "Por definir" (to be defined) was a CFDI 3.3 code and is not in the CFDI 4.0 catalog; CP01 is not its replacement, it is for payment receipts only.

What happens if the code is wrong

If the code is not allowed for the recipient's regime or person type, the PAC refuses to stamp the invoice and returns error CFDI40161. No invoice exists yet, so the issuer fixes the code, or the regime if that was the mistake, and submits it again.

If the code was allowed but not the one you needed, the invoice is already stamped and cannot be edited. The issuer has to issue a new invoice with the right code, linked to the original with relation type 04 (replacement of previous CFDIs), and then cancel the original with reason 01 (issued with errors, with a replacement), quoting the folio of the new one. Before asking for that, confirm the invoice is live with our guide to validating a SAT invoice.

The practical fix is to send your supplier the use code and your regime together, before they invoice. If you are the one issuing, Cretia's invoicing module only offers the use codes that are valid for your customer's regime and person type. Cretia is not a PAC: a certified PAC stamps the CFDI.

FAQ

What does CFDI mean?

CFDI stands for Comprobante Fiscal Digital por Internet. It is Mexico's official electronic invoice: an XML file stamped by a provider authorized by the SAT, the tax authority.

What is CFDI use (uso de CFDI)?

It is a mandatory code on every Mexican invoice that states what the recipient will use it for, such as G03 for general expenses. The recipient chooses it and it must be compatible with their tax regime.

What is CFDI G03?

G03 is "Gastos en general", general expenses. It is the usual code for a business paying for services or operating costs. It is available to regimes 601, 603, 606, 612 and 620 to 626, not to salaried individuals.

What is the difference between G01 and G03?

G01 is "Adquisición de mercancías", the purchase of goods for resale or production. G03 covers other operating expenses. Both are open to the same tax regimes.

Which CFDI use applies to a foreign customer without an RFC?

S01, "Sin efectos fiscales". The SAT filling guide requires it when the invoice is issued to the generic foreign RFC XEXX010101000, with tax regime 616.

Does CFDI use P01 still exist?

No. P01 "Por definir" was a CFDI 3.3 code and is not in the CFDI 4.0 catalog. CP01 exists, but only for payment receipts.

Continue to Cretia’s Electronic invoicing module

Simplify your business with Cretia

Invoicing, CRM, accounting and more. All in one platform.

Start for free