🧾 New fields for invoices

Starting June 8, 2026, the Invoices API will return additional fields with richer detail for ingreso and egreso invoices, as well as for nomina income and deduction concepts.

This is a non-breaking, additive change. Existing fields are unchanged, and the new fields appear automatically.

⚙️ What Changes

New fields on invoice objects — ingreso and egreso

Each object in the invoices array now includes the following additional fields. These are populated primarily for ingreso and egreso invoice types; other types return empty values.

Field Type Description payment_method string SAT payment method code, e.g. PPD (Pago en Parcialidades o Diferido — installment or deferred payment) or PUE (Pago en Una sola Exhibición — single payment) payment_type string SAT payment form code, e.g. 99 (to be defined) or 04 (credit card) line_items array List of the products or services included in the invoice invoice_relations array References to related invoices (e.g. CFDI relations for payment complements)

Each item in line_items contains:

Field Description detail Description of the product or service quantity Number of units unit Unit of measure unit_price Unit price amount Total amount for the line item product_service_key SAT product/service key

Each item in invoice_relations contains:

Field Description relation_type SAT relationship type code (e.g. 01) related_fiscal_code UUID of the related fiscal document

Example

{
  "type": "ingreso",
  "amount": 18500,
  "currency": "MXN",
  "issue_date": "2026-02-14",
  "rfc_issuer": "RPLJ870923KT2",
  "issuer_name": "JORGE ARTURO RAMIREZ PELAYO",
  "rfc_receiver": "TEC9410128X7",
  "receiver_name": "TECNOLOGIA EMPRESARIAL SA DE CV",
  "folio_fiscal": "3F7B42D1-8A09-4E61-BC53-7D2F90E1A846",
  "invoice_status": "",
  "zip_code_receiver": "",
  "payment_method": "PPD",
  "payment_type": "99",
  "line_items": [
    {
      "detail": "VEHICLE RENTAL CHEVROLET AVEO 2024...",
      "quantity": 1,
      "unit": "SERVICIO",
      "unit_price": 3928.85,
      "amount": 3928.85,
      "product_service_key": "90111503"
    }
  ],
  "invoice_relations": [
    {
      "relation_type": "01",
      "related_fiscal_code": "8401FF84-2C62-4361-8C38-EAC26768B100"
    }
  ],
  "incomes": [],
  "deductions": []
}

New fields on incomes and deductionsnomina

Each item in the incomes and deductions arrays now includes two additional fields. These are populated primarily for nomina invoice types; other types return empty values.

Field Type Description key string SAT key identifying the specific income or deduction concept (e.g. 052 for IMSS, 045 for ISR) type string SAT income/deduction type code that groups the concept (e.g. 001, 002)

Example

{
  "type": "nomina",
  "amount": 7864.18,
  "currency": "MXN",
  "issue_date": "2026-03-26",
  "rfc_issuer": "NAN1105241B4",
  "issuer_name": "NANOMATERIALES",
  "rfc_receiver": "CUAI911021Q11",
  "receiver_name": "ISIS MARIELA CRUZ AQUINO",
  "folio_fiscal": "8401FF84-2C62-4361-8C38-EAC26768B100",
  "invoice_status": "",
  "zip_code_receiver": "",
  "payment_method": "",
  "payment_type": "",
  "line_items": [],
  "invoice_relations": [],
  "incomes": [
    {
      "amount": "558.65",
      "currency": "MXN",
      "detail": "Vacaciones a tiempo",
      "key": "023",
      "type": "001"
    },
    {
      "amount": "1097.58",
      "currency": "MXN",
      "detail": "Prima de vacaciones reportada",
      "key": "024",
      "type": "001"
    },
    {
      "amount": "430.42",
      "currency": "MXN",
      "detail": "Aguinaldo",
      "key": "002",
      "type": "001"
    }
  ],
  "deductions": [
    {
      "amount": "0.11",
      "currency": "MXN",
      "detail": "Ajuste al neto",
      "key": "099",
      "type": "004"
    },
    {
      "amount": "118.2",
      "currency": "MXN",
      "detail": "I.M.S.S.",
      "key": "052",
      "type": "001"
    },
    {
      "amount": "73.94",
      "currency": "MXN",
      "detail": "I.S.R. mes",
      "key": "045",
      "type": "002"
    }
  ]
}

🛠️ No Action Required

This is a non-breaking, additive change. The new fields are added automatically and return empty values for invoice types where they don't apply, so your existing integration continues to work exactly as before.