> ## Documentation Index
> Fetch the complete documentation index at: https://invoiceapi.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# SAT catalogs

> Look up the exact coded values the SAT requires — payment forms, payment methods, uso CFDI, tax regimes, and more — instead of guessing four-digit enums.

CFDI 4.0 fields are coded: `payment_form` is a `c_FormaPago` code, `payment_method` is `c_MetodoPago`,
`use` is `c_UsoCFDI`, `tax_regime` is `c_RegimenFiscal`. Get one wrong and the SAT rejects the invoice.
The `/v1/catalogs` endpoints return those codes with their meanings, so you (or an agent) can look up
the right value at runtime instead of hard-coding it.

The codes served here are the **same tables the invoice builder validates against** — what a catalog
advertises is exactly what `POST /v1/invoices` accepts, so they can never drift.

<Note>These endpoints are **public** — no API key required, so you can discover valid codes before you sign up.</Note>

## List the catalogs

```bash theme={null}
curl https://api.newinvoice.dev/v1/catalogs
```

```json theme={null}
{
  "object": "list",
  "data": [
    { "catalog": "uso_cfdi",      "sat_catalog": "c_UsoCFDI",   "name": "Uso del CFDI",   "url": "/v1/catalogs/uso_cfdi",      "count": 24 },
    { "catalog": "payment_forms", "sat_catalog": "c_FormaPago", "name": "Formas de pago", "url": "/v1/catalogs/payment_forms", "count": 22 }
  ],
  "has_more": false
}
```

## Fetch one catalog

```bash theme={null}
curl https://api.newinvoice.dev/v1/catalogs/payment_forms
```

```json theme={null}
{
  "object": "list",
  "catalog": "payment_forms",
  "sat_catalog": "c_FormaPago",
  "name": "Formas de pago",
  "data": [
    { "code": "01", "description": "Efectivo" },
    { "code": "03", "description": "Transferencia electrónica de fondos" },
    { "code": "99", "description": "Por definir" }
  ],
  "has_more": false
}
```

## Available catalogs

| Slug              | SAT catalog          | Used in                          |
| ----------------- | -------------------- | -------------------------------- |
| `uso_cfdi`        | c\_UsoCFDI           | `use` (customer + invoice level) |
| `payment_forms`   | c\_FormaPago         | `payment_form`                   |
| `payment_methods` | c\_MetodoPago        | `payment_method` (PUE / PPD)     |
| `tax_regimes`     | c\_RegimenFiscal     | `tax_regime` (issuer + customer) |
| `invoice_types`   | c\_TipoDeComprobante | `type` (I / E / P …)             |
| `taxes`           | c\_Impuesto          | line `taxes[].tax`               |
| `tax_objects`     | c\_ObjetoImp         | line `tax_object`                |
| `relation_types`  | c\_TipoRelacion      | `relation.type`                  |
| `export_types`    | c\_Exportacion       | `export`                         |
| `periodicities`   | c\_Periodicidad      | global-invoice periodicity       |
| `currencies`      | c\_Moneda            | `currency`                       |

## Persona-aware codes

`uso_cfdi` and `tax_regimes` entries carry a `personas` array — the taxpayer types a code is valid for
(`fisica`, `moral`, or both). Filter to the ones that apply with `?persona=`:

```bash theme={null}
curl "https://api.newinvoice.dev/v1/catalogs/uso_cfdi?persona=fisica"
```

<Tip>
  `currencies` entries include `decimals` — the number of decimal places the currency allows. `JPY` and
  `CLP` are `0`; sending `100.50 JPY` is the classic **CFDI40107** rejection.
</Tip>

An unknown slug returns **404 `catalog.not_found`**, whose `remediation` lists every valid slug.

## Every code

The complete catalogs below are generated from the API's source of truth, so they always match
exactly what `POST /v1/invoices` accepts — no API call needed to read them.

### Uso del CFDI — `c_UsoCFDI`

Slug `uso_cfdi` · 24 codes · `GET /v1/catalogs/uso_cfdi`

| Code   | Description                                              | Valid for     |
| ------ | -------------------------------------------------------- | ------------- |
| `G01`  | Adquisición de mercancías                                | fisica, moral |
| `G02`  | Devoluciones, descuentos o bonificaciones                | fisica, moral |
| `G03`  | Gastos en general                                        | fisica, moral |
| `I01`  | Construcciones                                           | fisica, moral |
| `I02`  | Mobiliario y equipo de oficina por inversiones           | fisica, moral |
| `I03`  | Equipo de transporte                                     | fisica, moral |
| `I04`  | Equipo de cómputo y accesorios                           | fisica, moral |
| `I05`  | Dados, troqueles, moldes, matrices y herramental         | fisica, moral |
| `I06`  | Comunicaciones telefónicas                               | fisica, moral |
| `I07`  | Comunicaciones satelitales                               | fisica, moral |
| `I08`  | Otra maquinaria y equipo                                 | fisica, moral |
| `D01`  | Honorarios médicos, dentales y gastos hospitalarios      | fisica        |
| `D02`  | Gastos médicos por incapacidad o discapacidad            | fisica        |
| `D03`  | Gastos funerales                                         | fisica        |
| `D04`  | Donativos                                                | fisica        |
| `D05`  | Intereses reales pagados por créditos hipotecarios       | fisica        |
| `D06`  | Aportaciones voluntarias al SAR                          | fisica        |
| `D07`  | Primas por seguros de gastos médicos                     | fisica        |
| `D08`  | Gastos de transportación escolar obligatoria             | fisica        |
| `D09`  | Depósitos en cuentas para el ahorro, primas de pensiones | fisica        |
| `D10`  | Pagos por servicios educativos (colegiaturas)            | fisica        |
| `S01`  | Sin efectos fiscales                                     | fisica, moral |
| `CP01` | Pagos                                                    | fisica, moral |
| `CN01` | Nómina                                                   | fisica        |

### Formas de pago — `c_FormaPago`

Slug `payment_forms` · 22 codes · `GET /v1/catalogs/payment_forms`

| Code | Description                         |
| ---- | ----------------------------------- |
| `01` | Efectivo                            |
| `02` | Cheque nominativo                   |
| `03` | Transferencia electrónica de fondos |
| `04` | Tarjeta de crédito                  |
| `05` | Monedero electrónico                |
| `06` | Dinero electrónico                  |
| `08` | Vales de despensa                   |
| `12` | Dación en pago                      |
| `13` | Pago por subrogación                |
| `14` | Pago por consignación               |
| `15` | Condonación                         |
| `17` | Compensación                        |
| `23` | Novación                            |
| `24` | Confusión                           |
| `25` | Remisión de deuda                   |
| `26` | Prescripción o caducidad            |
| `27` | A satisfacción del acreedor         |
| `28` | Tarjeta de débito                   |
| `29` | Tarjeta de servicios                |
| `30` | Aplicación de anticipos             |
| `31` | Intermediario pagos                 |
| `99` | Por definir                         |

### Métodos de pago — `c_MetodoPago`

Slug `payment_methods` · 2 codes · `GET /v1/catalogs/payment_methods`

| Code  | Description                      |
| ----- | -------------------------------- |
| `PUE` | Pago en una sola exhibición      |
| `PPD` | Pago en parcialidades o diferido |

### Regímenes fiscales — `c_RegimenFiscal`

Slug `tax_regimes` · 19 codes · `GET /v1/catalogs/tax_regimes`

| Code  | Description                                                                                | Valid for     |
| ----- | ------------------------------------------------------------------------------------------ | ------------- |
| `601` | General de Ley Personas Morales                                                            | moral         |
| `603` | Personas Morales con Fines no Lucrativos                                                   | moral         |
| `605` | Sueldos y Salarios e Ingresos Asimilados a Salarios                                        | fisica        |
| `606` | Arrendamiento                                                                              | fisica        |
| `607` | Régimen de Enajenación o Adquisición de Bienes                                             | fisica        |
| `608` | Demás ingresos                                                                             | fisica        |
| `610` | Residentes en el Extranjero sin Establecimiento Permanente                                 | fisica, moral |
| `611` | Ingresos por Dividendos (socios y accionistas)                                             | fisica        |
| `612` | Personas Físicas con Actividades Empresariales y Profesionales                             | fisica        |
| `614` | Ingresos por intereses                                                                     | fisica        |
| `615` | Régimen de los ingresos por obtención de premios                                           | fisica        |
| `616` | Sin obligaciones fiscales                                                                  | fisica, moral |
| `620` | Sociedades Cooperativas de Producción que optan por diferir sus ingresos                   | moral         |
| `621` | Incorporación Fiscal                                                                       | fisica        |
| `622` | Actividades Agrícolas, Ganaderas, Silvícolas y Pesqueras                                   | moral         |
| `623` | Opcional para Grupos de Sociedades                                                         | moral         |
| `624` | Coordinados                                                                                | moral         |
| `625` | Régimen de las Actividades Empresariales con ingresos a través de Plataformas Tecnológicas | fisica        |
| `626` | Régimen Simplificado de Confianza                                                          | fisica, moral |

### Tipos de comprobante — `c_TipoDeComprobante`

Slug `invoice_types` · 5 codes · `GET /v1/catalogs/invoice_types`

| Code | Description |
| ---- | ----------- |
| `I`  | Ingreso     |
| `E`  | Egreso      |
| `T`  | Traslado    |
| `N`  | Nómina      |
| `P`  | Pago        |

### Impuestos — `c_Impuesto`

Slug `taxes` · 3 codes · `GET /v1/catalogs/taxes`

| Code  | Description |
| ----- | ----------- |
| `001` | ISR         |
| `002` | IVA         |
| `003` | IEPS        |

### Objeto de impuesto — `c_ObjetoImp`

Slug `tax_objects` · 4 codes · `GET /v1/catalogs/tax_objects`

| Code | Description                                      |
| ---- | ------------------------------------------------ |
| `01` | No objeto de impuesto                            |
| `02` | Sí objeto de impuesto                            |
| `03` | Sí objeto del impuesto y no obligado al desglose |
| `04` | Sí objeto del impuesto y no causa impuesto       |

### Tipos de relación — `c_TipoRelacion`

Slug `relation_types` · 7 codes · `GET /v1/catalogs/relation_types`

| Code | Description                                                |
| ---- | ---------------------------------------------------------- |
| `01` | Nota de crédito de los documentos relacionados             |
| `02` | Nota de débito de los documentos relacionados              |
| `03` | Devolución de mercancía sobre facturas o traslados previos |
| `04` | Sustitución de los CFDI previos                            |
| `05` | Traslados de mercancías facturados previamente             |
| `06` | Factura generada por los traslados previos                 |
| `07` | CFDI por aplicación de anticipo                            |

### Exportación — `c_Exportacion`

Slug `export_types` · 4 codes · `GET /v1/catalogs/export_types`

| Code | Description                        |
| ---- | ---------------------------------- |
| `01` | No aplica                          |
| `02` | Definitiva con clave A1            |
| `03` | Temporal                           |
| `04` | Definitiva con clave distinta a A1 |

### Periodicidad (factura global) — `c_Periodicidad`

Slug `periodicities` · 5 codes · `GET /v1/catalogs/periodicities`

| Code | Description |
| ---- | ----------- |
| `01` | Diario      |
| `02` | Semanal     |
| `03` | Quincenal   |
| `04` | Mensual     |
| `05` | Bimestral   |

### Monedas — `c_Moneda`

Slug `currencies` · 22 codes · `GET /v1/catalogs/currencies`

| Code  | Decimals |
| ----- | -------- |
| `MXN` | 2        |
| `USD` | 2        |
| `EUR` | 2        |
| `CAD` | 2        |
| `GBP` | 2        |
| `JPY` | 0        |
| `CHF` | 2        |
| `CNY` | 2        |
| `AUD` | 2        |
| `BRL` | 2        |
| `ARS` | 2        |
| `COP` | 2        |
| `CLP` | 0        |
| `PEN` | 2        |
| `DKK` | 2        |
| `SEK` | 2        |
| `NOK` | 2        |
| `HKD` | 2        |
| `SGD` | 2        |
| `NZD` | 2        |
| `KRW` | 0        |
| `XXX` | 0        |
