Catálogos del SAT

El Servicio de Administración Tributaria (SAT) proporciona un conjunto de catálogos estandar para la facturación electrónica en México. Estos catálogos contienen codigos y descripciones que se utilizan de manera obligatoria en la emisión de facturas CFDI.

Equivalencia entre catálogos del SAT y Fiscalapi

Fiscalapi proporciona los siguientes catálogos con exactamente los mismos registros que los catálogos oficiales del SAT. Por ejemplo, el catálogo SatPaymentForms contiene los mismos registros que el catálogo c_FormaPago del SAT.

Catálogos de Facturación

Catálogo SATCatálogo APIDescripción
c_FormaPagoSatPaymentFormsCatálogo de métodos de pago aceptados en la factura
c_MonedaSatCurrenciesCatálogo de monedas permitidas en la factura
c_TipoDeComprobanteSatInvoiceTypesCatálogo de tipos de factura permitidas en la factura
c_ExportacionSatExportCodesCatálogo de operaciones de exportación en la factura
c_MetodoPagoSatPaymentMethodsCatálogo de métodos de pago en la factura
c_PeriodicidadSatPeriodicitiesCatálogo de periodicidad de la factura global
c_MesesSatMonthsCatálogo de periodos aplicables a la factura
c_TipoRelacionSatRelationshipTypesCatálogo de tipos de relación entre facturas
c_RegimenFiscalSatTaxRegimesCatálogo de regímenes fiscales del emisor/receptor de la factura
c_UsoCFDISatCfdiUsesCatálogo de usos del cfdi de la factura
c_ClaveProdServSatProductCodesCatálogo de claves de productos y servicios de la factura
c_ClaveUnidadSatUnitMeasurementsCatálogo de unidades de medida para los productos de la factura
c_ObjetoImpSatTaxObjectsCatálogo de objetos de impuesto para los productos de la factrua
c_ImpuestoSatTaxesCatálogo de impuestos aplicables en la factura
c_TipoFactorSatTaxTypesCatálogo de tipos de factor en impuestos de los productos de la factura
c_MotivosCancelacionSatCancellationReasonsCatálogo de motivos de cancelación de facturas

Catálogos de nómina

Catálogo SATCatálogo APIDescripción
c_BancoSatBanksCatálogo de bancos para transferencias de nómina
c_OrigenRecursoSatFundSourcesCatálogo de origen de recursos para empresas del SNCF en la nómina
c_PeriodicidadPagoSatPaymentPeriodicitiesCatálogo de periodicidad de pago en la nómina
c_TipoContratoSatContractTypesCatálogo de tipos de contrato que puede tener un empleado y un empleador
c_TipoDeduccionSatDeductionTypesCatálogo de tipos de deducción que puede tener un empleado y un empleador
c_TipoHorasSatOvertimeTypesCatálogo de tipos de horas extra que un empleado puede hacer
c_TipoIncapacidadSatDisabilityTypesCatálogo de tipos de incapacidad que puede tener un empleado
c_TipoJornadaSatWorkdayTypesCatálogo de tipos de jornada laboral que puede tener un empleado
c_TipoNominaSatPayrollTypesCatálogo de tipos de nómina
c_TipoOtroPagoSatOtherPaymentTypesCatálogo de tipos de otros pagos que puede tener un empleado
c_TipoPercepcionSatEarningTypesCatálogo de tipos de percepción que puede tener un empleado
c_TipoRegimenSatTaxRegimeTypesCatálogo de tipos de régimen fiscal de contratación que puede tener un empleado
c_RiesgoPuestoSatJobRisksCatálogo de riesgo de trabajo que puede tener un empleado
c_EstadoSatPayrollStatesCatálogo de entidades federativas donde puede estar ubicado el centro de trabajo
c_SindicalizadoSatUnionizedStatusesCatálogo para indicar si el trabajador pertenece a un sindicato

Modelo PagedList

El modelo PagedList se utiliza para representar las respuestas paginadas. El modelo CatalogDto representa un registro de un catálogo del SAT. Debido a la gran cantidad de registros que contienen los catálogos del SAT, todas las respuestas de este recurso se entregan en formato paginado.

Propiedades

  • Name
    items
    Type
    array of objects (CatalogDto)?
    Description

    Lista de elementos en la página actual.

  • Name
    pageNumber
    Type
    integer | number?
    Description

    Página actual.

  • Name
    totalPages
    Type
    integer | number?
    Description

    Total de páginas.

  • Name
    totalCount
    Type
    integer | number?
    Description

    Total de elementos.

  • Name
    hasPreviousPage
    Type
    boolean?
    Description

    Indica si hay una página anterior.

  • Name
    hasNextPage
    Type
    boolean?
    Description

    Indica si hay una página siguiente.


GET/api/v4/catalogs

Listar catálogos

Este endpoint devuelve una lista no paginada de los catálogos disponibles. Estos nombres se utilizan para consultar o buscar registros en un catálogo en particular.

Request

GET
/api/v4/catalogs
curl --location 'https://test.fiscalapi.com/api/v4/catalogs' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <api-key>' \
--data ''

Response

{
    "data": [
        "SatCfdiUses",
        "SatCountries",
        "SatCurrencies",
        "SatExportCodes",
        "SatInvoiceTypes",
        "SatMonths",
        "SatTaxObjects",
        "SatPaymentForms",
        "SatPaymentMethods",
        "SatPeriodicities",
        "SatProductCodes",
        "SatRelationshipTypes",
        "SatTaxes",
        "SatStates",
        "SatTaxRegimes",
        "SatTaxTypes",
        "SatUnitMeasurements",
        "ProductTypes",
        "ProductDivisions",
        "ProductGroups",
        "ProductClasses",
        "UserTypes",
        "ReportRuleTypes",
        "Taxes",
        "TaxFlags",
        "TaxTypes",
        "TaxRules",
        "PersonTypes",
        "InvoiceStatuses"
    ],
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

GET/api/v4/catalogs/<catalogName>/key/<recordId>

Obtener registro por ID

Este endpoint le permite obtener un registro específico de un catálogo específico. Recibe como parámetros el nombre del catálogo y el ID del registro.

Request

GET
/v4/catalogs/<catalogName>/key/<recordId>
curl --location 'https://test.fiscalapi.com/api/v4/catalogs/SatPaymentForms/key/03' \
--header 'X-TENANT-KEY: <tenant-key>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <api-key>' \
--data ''

Response

{
    "data": {
        "id": "03",
        "description": "Transferencia electrónica de fondos",
        "createdAt": "2024-08-10T15:46:30.3730000",
        "updatedAt": null
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

GET/api/v4/catalogs/<catalogName>/search/<searchTerm>

Este le permite buscar registros en un catálogo específico pasando como parámetro el nombre del catálogo y un término de búsqueda.

Query parameters

  • Name
    pageNumber
    Type
    integer | number
    required
    Description

    El número de página que se desea recuperar.

    Default:
    1
  • Name
    pageSize
    Type
    integer | number
    required
    Description

    Valor entre 1 y 100 inclusivo para indicar la cantidad de registros devueltos por página.

    Default:
    50

Request

GET
/v4/catalogs/<catalogName>/search/<searchTerm>
curl --location 'https://test.fiscalapi.com/api/v4/catalogs/SatPaymentForms/Tarjeta?pageNumber=1&pageSize=100' \
--header 'X-TENANT-KEY: <tenant-key>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <api-key>' \
--data ''

Response

{
    "data": {
        "items": [
            {
                "id": "04",
                "description": "Tarjeta de crédito",
                "createdAt": "0001-01-01T00:00:00.0000000",
                "updatedAt": null
            },
            {
                "id": "28",
                "description": "Tarjeta de débito",
                "createdAt": "0001-01-01T00:00:00.0000000",
                "updatedAt": null
            },
            {
                "id": "29",
                "description": "Tarjeta de servicios",
                "createdAt": "0001-01-01T00:00:00.0000000",
                "updatedAt": null
            }
        ],
        "pageNumber": 1,
        "totalPages": 1,
        "totalCount": 3,
        "hasPreviousPage": false,
        "hasNextPage": false
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

¿Le resultó útil esta página?