Facturas por valores

El recurso de facturación es uno de los recursos centrales de Fiscalapi. Permite gestionar todo el ciclo de vida de las facturas electrónicas: crear, listar, cancelar, consultar, descargar XML/PDF y enviar por correo las facturas CFDI.

Modelo factura

El modelo de factura contiene toda la información relacionada con la factura y/o complemento CFDI. Las propiedades con el sufijo Code corresponden a valores de los catálogos oficiales del SAT. Puede consultarlos en la página de Catálogos CFDI 4.0 o programáticamente a través de la API catalogs.

Propiedades

  • Name
    id
    Type
    string?
    Description

    ID de la factura. Asignado por Fiscalapi.

  • Name
    versionCode
    Type
    string?
    Description

    Código de la versión de la facturación electrónica en México. Indica la versión del CFDI que se está utilizando.

    Default:
    4.0
  • Name
    series
    Type
    string
    required
    Description

    Número de serie que utiliza el contribuyente para control interno de su información. Acepta de uno a 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Fecha y hora de expedición de la factura. Se expresa en el formato AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local del lugar donde se expide la factura.

  • Name
    consecutive
    Type
    number | decimal?
    Description

    Consecutivo de facturas por cuenta. Se incrementa automáticamente con cada factura generada en su cuenta, independientemente del RFC emisor.
    Asignado por Fiscalapi.

  • Name
    number
    Type
    string?
    Description

    Consecutivo de facturas por RFC emisor. Se incrementa automáticamente con cada factura generada por el mismo RFC emisor.
    Asignado por Fiscalapi.

  • Name
    subtotal
    Type
    number | decimal?
    Description

    Subtotal de la factura antes de impuestos y descuentos.
    Calculado por Fiscalapi.

  • Name
    discount
    Type
    number | decimal?
    Description

    Descuento total aplicado a la factura.
    Calculado por Fiscalapi a partir de los descuentos aplicados a los productos o servicios.

  • Name
    total
    Type
    number | decimal?
    Description

    Total de la factura incluyendo impuestos.
    Calculado por Fiscalapi.

  • Name
    uuid
    Type
    string?
    Description

    UUID de la factura, que corresponde al folio fiscal asignado por el SAT al momento del timbrado.
    Asignado automáticamente por el SAT.

  • Name
    statusId
    Type
    object (CatalogDto)?
    expandible
    Description

    Estado de la factura.

  • Name
    paymentFormCode
    Type
    string?
    conditional required
    Description

    Código de la forma de pago para la factura. Catálogo del SAT c_FormaPago. Requerido cuando el tipo de factura es I o E (ingresos o egresos).

    Type
    enum:
    Values
    "01""02""03"
  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada para expresar los montos. Cuando se usa moneda nacional debe ser MXN. Catálogo del SAT c_Moneda.

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    typeCode
    Type
    string
    required
    Description

    Código de tipo de factura. Catálogo del SAT c_TipoDeComprobante.

    Type
    enum:
    Values
    "I""E""T"
  • Name
    expeditionZipCode
    Type
    string
    required
    Description

    Código postal del emisor. Debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    exportCode
    Type
    string
    required
    Description

    Código que identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion.

    Default:
    "01"
    Type
    enum:
    Values
    "01""02""03"
  • Name
    paymentMethodCode
    Type
    string?
    conditional required
    Description

    Código del método de pago de la factura. Catálogo del SAT c_MetodoPago. Requerido cuando el tipo de factura es I o E (ingresos o egresos).

    Type
    enum:
    Values
    "PUE""PPD"
  • Name
    exchangeRate
    Type
    number | decimal?
    Description

    Tipo de cambio FIX conforme a la moneda registrada en la factura. Si la moneda es MXN, el tipo de cambio debe ser 1.

    Default:
    1
  • Name
    paymentConditions
    Type
    string?
    Description

    Condiciones comerciales aplicables para el pago de la factura.

  • Name
    issuer
    Type
    object (InvoiceIssuer)
    required

    El emisor de la factura

  • Name
    id
    Type
    string?
    Description

    ID de la persona (emisora) en Fiscalapi. Este campo es mutuamente excluyente con los demás campos de este objeto. Debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente. Depende del modo de operación.

  • Name
    tin
    Type
    string?
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    Description

    Razón social del emisor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA. Si el emisor es persona física, debe enviar el nombre completo tal como aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string?
    Description

    Código del régimen fiscal del emisor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    employerData
    Type
    object (EmployerData)?
    conditional required

    Datos del empleador - Información específica del patrón para facturas de nómina. Requerido cuando el tipo de factura es N (nómina).

  • Name
    curp
    Type
    string?
    Description

    CURP del emisor de la factura de nómina cuando es una persona física.
    Requerido cuando el emisor es una persona física.

  • Name
    employerRegistration
    Type
    string?
    Description

    Registro patronal, clave de ramo-pagaduría o la asignada por la institución de seguridad social al patrón.
    Requerido cuando las obligaciones fiscales del emisor lo exigen.

  • Name
    originEmployerTin
    Type
    string?
    Description

    RFC de la persona que fungió como patrón cuando el pago se realiza a través de un tercero.
    Requerido cuando el origen del pago es un tercero (subcontratación).

  • Name
    satFundSourceId
    Type
    string?
    Description

    Clave del origen del recurso utilizado para el pago de nómina del personal. Catálogo del SAT c_OrigenRecurso.
    Requerido cuando el emisor sea una empresa que pertenece al SNCF.

    Type
    enum:
    Values
    IPIFIM
  • Name
    ownResourceAmount
    Type
    number | decimal?
    Description

    Monto del recurso pagado con cargo a participaciones u otros ingresos locales cuando el origen es mixto.
    Requerido cuando el emisor sea una empresa que pertenece al SNCF.

  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)?

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Lea cómo codificar los sellos en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    012
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key.
    Debe ser la misma en ambos objetos (.cer y .key).

  • Name
    recipient
    Type
    object (InvoiceRecipient)
    required

    Receptor de la factura

  • Name
    id
    Type
    string?
    Description

    ID de la persona (receptora) en Fiscalapi. Este campo es mutuamente excluyente con los demás campos de este objeto. Debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente. Depende del modo de operación.

  • Name
    tin
    Type
    string?
    Description

    RFC del receptor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    Description

    Razón social del receptor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA. Si el receptor es persona física, debe enviar el nombre completo tal como aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string?
    Description

    Código del régimen fiscal del receptor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    cfdiUseCode
    Type
    string?
    Description

    Código del uso del CFDI. Catálogo del SAT c_UsoCFDI.

    Type
    enum:
    Values
    "G01""G02""G03"
  • Name
    zipCode
    Type
    string?
    Description

    Código postal del receptor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    email
    Type
    string?
    Description

    Correo electrónico del receptor para enviar la factura.

  • Name
    employeeData
    Type
    object (EmployeeData)?
    conditional required

    Datos del empleado - Información específica del trabajador para facturas de nómina. Requerido cuando el tipo de factura es N (nómina).

  • Name
    curp
    Type
    string
    required
    Description

    CURP del receptor de la factura de nómina.

  • Name
    socialSecurityNumber
    Type
    string?
    Description

    Número de seguridad social del trabajador.

  • Name
    laborRelationStartDate
    Type
    string?
    Description

    Fecha de inicio de la relación laboral entre el empleador y el empleado. Formato AAAA-MM-DD.

  • Name
    seniority
    Type
    string?
    Description

    Antigüedad del empleado en formato período de duración ISO 8601. Ejemplo: P437W para 437 semanas o P1Y5M para 1 año y 5 meses.

  • Name
    satContractTypeId
    Type
    string
    required
    Description

    Clave del tipo de contrato que tiene el trabajador. Catálogo del SAT c_TipoContrato.

    Type
    enum:
    Values
    010203
  • Name
    satUnionizedStatusId
    Type
    string?
    Description

    Indica si el trabajador está asociado a un sindicato.

    Type
    enum:
    Values
    No
  • Name
    satWorkdayTypeId
    Type
    string?
    Description

    Clave del tipo de jornada que cubre el trabajador. Catálogo del SAT c_TipoJornada.

    Type
    enum:
    Values
    010203
  • Name
    satTaxRegimeTypeId
    Type
    string
    required
    Description

    Clave del régimen por el cual se tiene contratado al trabajador. Catálogo del SAT c_TipoRegimen.

    Type
    enum:
    Values
    020304
  • Name
    employeeNumber
    Type
    string
    required
    Description

    Número de empleado asignado por el empleador.

  • Name
    department
    Type
    string?
    Description

    Departamento o área a la que pertenece el trabajador.

  • Name
    position
    Type
    string?
    Description

    Puesto asignado al empleado o actividad que realiza.

  • Name
    satJobRiskId
    Type
    string?
    Description

    Riesgo de trabajo del empleado. Catálogo del SAT c_RiesgoTrabajo.

    Type
    enum:
    Values
    123
  • Name
    satPaymentPeriodicityId
    Type
    string
    required
    Description

    Clave de la forma en que se establece el pago del salario. Catálogo del SAT c_PeriodicidadPago.

    Type
    enum:
    Values
    010203
  • Name
    satBankId
    Type
    string?
    Description

    Clave del banco conforme al catálogo donde se realiza el depósito de nómina. Catálogo del SAT c_Banco.

    Type
    enum:
    Values
    002006009
  • Name
    bankAccount
    Type
    string?
    Description

    Cuenta bancaria del empleado donde se recibe el pago de nómina.

  • Name
    baseSalaryForContributions
    Type
    number | decimal?
    Description

    Salario base de cotización o aportaciones del empleado.

  • Name
    integratedDailySalary
    Type
    number | decimal?
    Description

    Salario diario integrado del empleado.

  • Name
    satPayrollStateId
    Type
    string?
    Description

    Clave de la entidad federativa en donde el receptor del recibo prestó el servicio. Catálogo del SAT c_Estado.

    Type
    enum:
    Values
    AGUBCNBCS
  • Name
    subcontractorRfc
    Type
    string?
    Description

    RFC de la persona que subcontrata cuando el empleado es subcontratado.

  • Name
    timePercentage
    Type
    number | decimal?
    Description

    Porcentaje del tiempo que prestó sus servicios con el RFC que lo subcontrata cuando el empleado es subcontratado.

  • Name
    items
    Type
    array of objects (InvoiceItem)?
    conditional required

    Conceptos de la factura (productos o servicios)
    Requerido cuando el tipo de factura es I o E (ingresos o egresos).

  • Name
    id
    Type
    string?
    Description

    ID del producto en fiscalapi. Este campo es mutuamente excluyente con los demás campos de este objeto. Debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente. Depende del modo de operación.

  • Name
    itemCode
    Type
    string?
    Description

    Código del producto o servicio del catálogo c_ClaveProdServ.

    Type
    enum:
    Values
    "01010101""01010108""01010109"
  • Name
    quantity
    Type
    number | decimal
    required
    Description

    Cantidad del producto o servicio.

  • Name
    discount
    Type
    number | decimal?
    Description

    Cantidad monetaria del descuento aplicado al producto o servicio.

  • Name
    unitOfMeasurementCode
    Type
    string?
    Description

    Código de la unidad de medida del producto o servicio. Catálogo c_ClaveUnidad.

    Type
    enum:
    Values
    "H87""E48""EA"
  • Name
    description
    Type
    string?
    Description

    Descripción del producto o servicio.

  • Name
    unitPrice
    Type
    number | decimal?
    Description

    Precio unitario del producto o servicio. (Sin impuestos)

  • Name
    taxObjectCode
    Type
    string?
    Description

    Código de obligaciones de impuesto aplicables al producto o servicio. Catálogo c_ObjetoImp.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    itemSku
    Type
    string?
    Description

    SKU o código interno que identifica al producto o servicio.

  • Name
    itemTaxes
    Type
    array of objects (ItemTax)?

    Impuestos aplicables al producto o servicio.

  • Name
    taxCode
    Type
    string
    required
    Description

    Código del impuesto. Catálogo del SAT c_Impuesto.

    Type
    enum:
    Values
    "001""002""003"
  • Name
    taxTypeCode
    Type
    string
    required
    Description

    Tipo de factor. Catálogo del SAT c_TipoFactor.

    Type
    enum:
    Values
    "Tasa""Cuota""Exento"
  • Name
    taxRate
    Type
    number | decimal
    required
    Description

    Tasa del impuesto. Catálogo del SAT c_TasaOCuota.
    Ejemplo: 0.160000 para un 16% de impuesto.

  • Name
    taxFlagCode
    Type
    string
    required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    "T""R"
  • Name
    onBehalfOf
    Type
    object (OnBehalfOf)?

    Información de tercero - Datos del contribuyente tercero a cuenta del que se realiza la operación

  • Name
    tin
    Type
    string?
    Description

    RFC del contribuyente Tercero a cuenta del que se realiza la operación.

  • Name
    legalName
    Type
    string?
    Description

    Nombre, denominación o razón social del contribuyente Tercero a cuenta del que se realiza la operación.

  • Name
    taxRegimeCode
    Type
    string?
    Description

    Clave del régimen del contribuyente Tercero a cuenta del que se realiza la operación.

  • Name
    zipCode
    Type
    string?
    Description

    Código postal del domicilio fiscal del Tercero a cuenta del que se realiza la operación.

  • Name
    customsInfo
    Type
    array of objects (CustomsInfo)?

    Información aduanera - Datos de importación aplicables al concepto

  • Name
    customsNumber
    Type
    string?
    Description

    Número del pedimento que ampara la importación del bien expresado en formato específico.

  • Name
    propertyInfo
    Type
    array of objects (PropertyInfo)?

    Información predial - Datos de cuenta predial del inmueble

  • Name
    number
    Type
    string?
    Description

    Número de la cuenta predial del inmueble cubierto por el concepto.

  • Name
    parts
    Type
    array of objects (Part)?

    Partes del concepto - Componentes que integran la totalidad del concepto expresado

  • Name
    itemCode
    Type
    string?
    Description

    Clave del producto o del servicio amparado por la parte.

  • Name
    itemSku
    Type
    string?
    Description

    Número de serie, número de parte del bien o identificador del producto o del servicio amparado por la parte.

  • Name
    quantity
    Type
    number | decimal?
    Description

    Cantidad de bienes o servicios del tipo particular definido por la parte.

  • Name
    unitOfMeasurementCode
    Type
    string?
    Description

    Unidad de medida propia de la operación del emisor aplicable para la cantidad expresada en la parte.

  • Name
    description
    Type
    string?
    Description

    Descripción del bien o servicio cubierto por la parte.

  • Name
    unitPrice
    Type
    number | decimal?
    Description

    Valor o precio unitario del bien o servicio cubierto por la parte.

  • Name
    customsInfo
    Type
    array of objects (CustomsInfo)?

    Información aduanera de la parte

  • Name
    customsNumber
    Type
    string?
    Description

    Número del pedimento que ampara la importación del bien expresado en formato específico.

  • Name
    globalInformation
    Type
    object (GlobalInformation)?

    Información global. Utilizado cuando se genera una factura global, expresa la información relacionada con la factura global. (operaciones con el público en general).

  • Name
    periodicityCode
    Type
    string
    required
    Description

    Código de la periodicidad de la factura global. Catálogo del SAT c_Periodicidad.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    monthCode
    Type
    string
    required
    Description

    Código del mes de la factura global. Catálogo del SAT c_Meses.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    year
    Type
    number | decimal
    required
    Description

    Año de la factura global a 4 dígitos. Se debe registrar el año al que corresponde la información de la factura global.

  • Name
    relatedInvoices
    Type
    array of objects (RelatedInvoice)?

    Facturas relacionadas. Utilizado cuando facturas previas están relacionadas con la factura actual. Por ejemplo, cuando se emite una nota de crédito.

  • Name
    relationshipTypeCode
    Type
    string
    required
    Description

    Código de la relación de la factura relacionada. Catálogo del SAT c_TipoRelacion.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    uuid
    Type
    string
    required
    Description

    UUID de la factura relacionada.

  • Name
    complement
    Type
    object (Complement)?

    Complementos de la factura - Información adicional específica según el tipo de factura y complemento CFDI.

  • Name
    localTaxes
    Type
    object (LocalTaxes)?

    Complemento de impuestos locales.

  • Name
    taxes
    Type
    array of objects (LocalTax)
    required

    Impuestos locales aplicables.

  • Name
    taxName
    Type
    string
    required
    Description

    Nombre del impuesto local aplicable.

  • Name
    taxRate
    Type
    number | decimal
    required
    Description

    Porcentaje del impuesto local aplicable. En base 100.
    Ejemplo: 16.00 para un 16% de impuesto.

  • Name
    taxAmount
    Type
    number | decimal
    required
    Description

    Monto del impuesto local aplicable.

  • Name
    taxFlagCode
    Type
    string
    required
    Description

    Indica si el impuesto local es retenido o trasladado.

    Type
    enum:
    Values
    "T""R"
  • Name
    payment
    Type
    object (Payment)?

    Complemento de pago.

  • Name
    paymentDate
    Type
    string
    required
    Description

    Fecha y hora en la que el beneficiario recibe el pago. Formato AAAA-MM-DDThh:mm:ss.

  • Name
    paymentFormCode
    Type
    string
    required
    Description

    Clave de la forma en que se realiza el pago.

  • Name
    currencyCode
    Type
    string
    required
    Description

    Clave de la moneda utilizada para realizar el pago conforme ISO 4217.

  • Name
    exchangeRate
    Type
    number | decimal?
    Description

    Tipo de cambio de la moneda a la fecha en que se realizó el pago.

  • Name
    amount
    Type
    number | decimal
    required
    Description

    Importe del pago.

  • Name
    operationNumber
    Type
    string?
    Description

    Número de cheque, autorización, referencia, clave de rastreo SPEI, línea de captura o número de referencia análogo.

  • Name
    sourceBankTin
    Type
    string?
    Description

    RFC de la entidad emisora de la cuenta origen.

  • Name
    sourceBankAccount
    Type
    string?
    Description

    Número de la cuenta con la que se realizó el pago.

  • Name
    targetBankTin
    Type
    string?
    Description

    RFC de la entidad operadora de la cuenta destino.

  • Name
    targetBankAccount
    Type
    string?
    Description

    Número de cuenta en donde se recibió el pago.

  • Name
    foreignBankName
    Type
    string?
    Description

    Nombre del banco ordenante cuando es extranjero.

  • Name
    paymentTypeCode
    Type
    string?
    Description

    Clave del tipo de cadena de pago que genera la entidad receptora del pago.

  • Name
    paidInvoices
    Type
    array of objects (PaidInvoice)
    required

    Facturas pagadas con el pago recibido.

  • Name
    uuid
    Type
    string
    required
    Description

    UUID de la factura pagada.

  • Name
    series
    Type
    string
    required
    Description

    Serie de la factura pagada

  • Name
    amount
    Type
    number | decimal
    required
    Description

    Monto pagado de la factura.

  • Name
    number
    Type
    string
    required
    Description

    Folio de la factura pagada.

  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda de la factura pagada. Catálogo del SAT c_Moneda

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    partialityNumber
    Type
    number | decimal
    required
    Description

    Número de parcialidad.

  • Name
    subTotal
    Type
    number | decimal
    required
    Description

    Subtotal de la factura pagada.

  • Name
    previousBalance
    Type
    number | decimal
    required
    Description

    Saldo anterior de la factura pagada. Corresponde al saldo de la factura pagada antes de aplicar el pago recibido.

  • Name
    remainingBalance
    Type
    number | decimal
    required
    Description

    Saldo restante de la factura pagada. Corresponde al saldo de la factura pagada después de aplicar el pago recibido.

  • Name
    taxObjectCode
    Type
    string
    required
    Description

    Código de obligaciones de impuesto aplicables a la factura pagada. Catálogo del SAT c_ObjetoImp

    Type
    enum:
    Values
    "01""02""03"
  • Name
    equivalence
    Type
    number | decimal?
    Description

    Tipo de cambio entre la moneda de la factura y la moneda del pago.
    Corresponde a cuántas unidades de la moneda de la factura pagada equivalen a 1 unidad de la moneda del pago.

    Default:
    1
  • Name
    exchangeRate
    Type
    number | decimal?
    Description

    Tipo de cambio del documento relacionado.

  • Name
    paidInvoiceTaxes
    Type
    array of objects (PaidInvoiceTax)
    required

    Impuestos aplicables a la factura pagada.

  • Name
    base
    Type
    number | decimal
    required
    Description

    Base del impuesto.

  • Name
    taxCode
    Type
    string
    required
    Description

    Código del impuesto. Catálogo del SAT c_Impuesto.

    Type
    enum:
    Values
    001002003
  • Name
    taxTypeCode
    Type
    string
    required
    Description

    Tipo de factor. Catálogo del SAT c_TipoFactor.

    Type
    enum:
    Values
    TasaCuotaExento
  • Name
    taxRate
    Type
    number | decimal
    required
    Description

    Tasa del impuesto. Catálogo del SAT c_TasaOCuota.
    Ejemplo: 0.160000 para un 16% de impuesto.

  • Name
    taxFlagCode
    Type
    string
    required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    TR
  • Name
    payroll
    Type
    object (Payroll)?

    Complemento de nómina.

  • Name
    version
    Type
    string
    required
    Description

    Versión del complemento de nómina. Valor fijo "1.2".

  • Name
    payrollTypeCode
    Type
    string
    required
    Description

    Clave del tipo de nómina. Catálogo del SAT c_TipoNomina.

    Type
    enum:
    Values
    OE
  • Name
    paymentDate
    Type
    string
    required
    Description

    Fecha efectiva de erogación del gasto. Formato AAAA-MM-DD.

  • Name
    initialPaymentDate
    Type
    string
    required
    Description

    Fecha inicial del período de pago. Formato AAAA-MM-DD.

  • Name
    finalPaymentDate
    Type
    string
    required
    Description

    Fecha final del período de pago. Formato AAAA-MM-DD.

  • Name
    daysPaid
    Type
    number | decimal
    required
    Description

    Número o fracción de días pagados.

  • Name
    earnings
    Type
    object (PayrollEarnings)?

    Percepciones de la nómina - Ingresos por salarios y conceptos asimilados a salarios.

  • Name
    earnings
    Type
    array of objects (Earning)
    required

    Lista de percepciones.

  • Name
    earningTypeCode
    Type
    string
    required
    Description

    Clave agrupadora bajo la cual se clasifica la percepción. Catálogo del SAT c_TipoPercepcion.

    Type
    enum:
    Values
    001002003
  • Name
    code
    Type
    string
    required
    Description

    Clave de percepción de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string
    required
    Description

    Descripción de la percepción.

  • Name
    taxedAmount
    Type
    number | decimal
    required
    Description

    Importe gravado de la percepción.

  • Name
    exemptAmount
    Type
    number | decimal
    required
    Description

    Importe exento de la percepción.

  • Name
    stockOptions
    Type
    object (StockOptions)?

    Opciones de acciones - Ingresos por acciones o títulos valor que representan bienes.

  • Name
    marketPrice
    Type
    number | decimal
    required
    Description

    Valor de mercado de las acciones o títulos valor al ejercer la opción.

  • Name
    grantPrice
    Type
    number | decimal
    required
    Description

    Precio establecido al otorgarse la opción de ingresos en acciones o títulos valor.

  • Name
    overtime
    Type
    array of objects (Overtime)?

    Horas extra - Información sobre horas extraordinarias trabajadas.

  • Name
    days
    Type
    number | decimal
    required
    Description

    Número de días en que el trabajador realizó horas extra en el periodo.

  • Name
    hoursTypeCode
    Type
    string
    required
    Description

    Clave del tipo de pago de las horas extra. Catálogo del SAT c_TipoHoras.

    Type
    enum:
    Values
    010203
  • Name
    extraHours
    Type
    number | decimal
    required
    Description

    Número de horas extra trabajadas en el periodo.

  • Name
    amountPaid
    Type
    number | decimal
    required
    Description

    Importe pagado por las horas extra.

  • Name
    otherPayments
    Type
    array of objects (OtherPayment)?

    Otros pagos - Pagos adicionales aplicables a la nómina.

  • Name
    otherPaymentTypeCode
    Type
    string
    required
    Description

    Clave agrupadora bajo la cual se clasifica el otro pago. Catálogo del SAT c_TipoOtroPago.

    Type
    enum:
    Values
    001002003
  • Name
    code
    Type
    string
    required
    Description

    Clave de otro pago de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string
    required
    Description

    Descripción del concepto de otro pago.

  • Name
    amount
    Type
    number | decimal
    required
    Description

    Importe del concepto de otro pago.

  • Name
    subsidyCaused
    Type
    number | decimal?
    Description

    Subsidio causado conforme a la tabla del subsidio para el empleo.

  • Name
    balanceCompensation
    Type
    object (BalanceCompensation)?

    Compensación de saldos - Información sobre compensación de saldos a favor del trabajador.

  • Name
    favorableBalance
    Type
    number | decimal
    required
    Description

    Saldo a favor determinado por el patrón al trabajador en periodos o ejercicios anteriores.

  • Name
    year
    Type
    number | decimal
    required
    Description

    Año en que se determinó el saldo a favor del trabajador por el patrón.

  • Name
    remainingFavorableBalance
    Type
    number | decimal
    required
    Description

    Remanente del saldo a favor del trabajador.

  • Name
    retirement
    Type
    object (Retirement)?

    Jubilación y pensiones - Pagos por jubilación, pensiones o haberes de retiro.

  • Name
    totalOneTime
    Type
    number | decimal?
    Description

    Monto total del pago cuando se realiza en una sola exhibición.

  • Name
    totalInstallments
    Type
    number | decimal?
    Description

    Ingresos totales por pago cuando se hace en parcialidades.

  • Name
    dailyAmount
    Type
    number | decimal?
    Description

    Monto diario percibido por jubilación, pensiones o haberes de retiro cuando se realiza en parcialidades.

  • Name
    accumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos acumulables.

  • Name
    nonAccumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos no acumulables.

  • Name
    severance
    Type
    object (Severance)?

    Separación e indemnización - Otros pagos por separación del trabajador.

  • Name
    totalPaid
    Type
    number | decimal
    required
    Description

    Monto total del pago por separación.

  • Name
    yearsOfService
    Type
    number | decimal
    required
    Description

    Número de años de servicio del trabajador.

  • Name
    lastMonthlySalary
    Type
    number | decimal
    required
    Description

    Último sueldo mensual ordinario.

  • Name
    accumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos acumulables por separación.

  • Name
    nonAccumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos no acumulables por separación.

  • Name
    deductions
    Type
    array of objects (Deduction)?

    Deducciones de la nómina - Descuentos aplicables a la nómina del trabajador.

  • Name
    deductionTypeCode
    Type
    string
    required
    Description

    Clave agrupadora que clasifica la deducción. Catálogo del SAT c_TipoDeduccion.

    Type
    enum:
    Values
    001002003
  • Name
    code
    Type
    string
    required
    Description

    Clave de deducción de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string
    required
    Description

    Descripción del concepto de deducción.

  • Name
    amount
    Type
    number | decimal
    required
    Description

    Importe del concepto de deducción.

  • Name
    disabilities
    Type
    array of objects (Disability)?

    Incapacidades de la nómina - Información sobre incapacidades del trabajador.

  • Name
    disabilityDays
    Type
    number | decimal
    required
    Description

    Número de días enteros que el trabajador se incapacitó en el periodo.

  • Name
    disabilityTypeCode
    Type
    string
    required
    Description

    Clave de la razón de la incapacidad. Catálogo del SAT c_TipoIncapacidad.

    Type
    enum:
    Values
    010203
  • Name
    monetaryAmount
    Type
    number | decimal?
    Description

    Monto del importe monetario de la incapacidad.

  • Name
    cartaPorte
    Type
    object (CartaPorte)?

    Complemento Carta Porte 3.1 Información del traslado de bienes y/o mercancías en territorio nacional por los distintos medios de transporte.

  • Name
    transpInternacId
    Type
    string
    required
    Description

    Indica si el transporte es internacional. Catálogo del SAT SatFlagTranspInternac.

    Type
    enum:
    Values
    "Sí""No"
  • Name
    entradaSalidaMercId
    Type
    string?
    Description

    Indica si las mercancías ingresan o salen del territorio nacional. Catálogo del SAT SatFlagEntradaSalidaMerc.

    Type
    enum:
    Values
    "Entrada""Salida"
  • Name
    paisOrigenDestinoId
    Type
    string?
    Description

    Clave del país de origen o destino de las mercancías en transporte internacional. Catálogo del SAT c_Pais.

    Type
    enum:
    Values
    "MEX""USA""CAN"
  • Name
    viaEntradaSalidaId
    Type
    string?
    Description

    Clave del medio de transporte por el cual ingresan o salen las mercancías. Catálogo del SAT c_CveTransporte.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    totalDistRec
    Type
    number | decimal?
    Description

    Suma total de las distancias recorridas en kilómetros.

  • Name
    registroISTMOId
    Type
    string?
    Description

    Indica si el traslado es por el Corredor Interoceánico del Istmo de Tehuantepec. Catálogo del SAT SatFlagRegistroISTMO.

    Type
    enum:
    Values
    "Sí"
  • Name
    ubicacionPoloOrigenId
    Type
    string?
    Description

    Clave del polo de origen en el Corredor Interoceánico. Catálogo del SAT c_UbicacionPolo.

    Type
    enum:
    Values
    "01""02"
  • Name
    ubicacionPoloDestinoId
    Type
    string?
    Description

    Clave del polo de destino en el Corredor Interoceánico. Catálogo del SAT c_UbicacionPolo.

    Type
    enum:
    Values
    "01""02"
  • Name
    unidadPesoId
    Type
    string
    required
    Description

    Clave de la unidad de medida de peso aplicable a las mercancías. Catálogo del SAT c_ClaveUnidadPeso.

    Type
    enum:
    Values
    "XKG""XLT""XGR"
  • Name
    pesoNetoTotal
    Type
    number | decimal?
    Description

    Peso neto total de las mercancías transportadas.

  • Name
    cargoPorTasacion
    Type
    number | decimal?
    Description

    Cargo por la tasación de las mercancías transportadas.

  • Name
    logisticaInversaRecoleccionDevolucionId
    Type
    string?
    Description

    Indica si aplica logística inversa para recolección o devolución. Catálogo del SAT SatFlagLogisticaInversaRecoleccionDevolucion.

    Type
    enum:
    Values
    "Sí"
  • Name
    regimenAduaneros
    Type
    array of objects (CartaPorteRegimenAduanero)?

    Regímenes aduaneros aplicables a las mercancías de procedencia extranjera.

  • Name
    regimenAduaneroId
    Type
    string
    required
    Description

    Clave del régimen aduanero aplicable. Catálogo del SAT c_RegimenAduanero.

    Type
    enum:
    Values
    "IMD""EXD""ITR"
  • Name
    ubicaciones
    Type
    array of objects (CartaPorteUbicacion)
    required

    Ubicaciones de origen y destino del traslado de mercancías. Se requieren al menos 2 ubicaciones (un origen y un destino).

  • Name
    tipoUbicacion
    Type
    string
    required
    Description

    Tipo de ubicación: origen o destino. Catálogo del SAT SatFlagTipoUbicacion.

    Type
    enum:
    Values
    "Origen""Destino"
  • Name
    iDUbicacion
    Type
    string?
    Description

    Identificador de la ubicación. Se forma con OR (origen) o DE (destino) seguido de 6 dígitos numéricos. Ejemplo: OR000001, DE000001.

  • Name
    rFCRemitenteDestinatario
    Type
    string
    required
    Description

    RFC del remitente o destinatario de las mercancías.

  • Name
    nombreRemitenteDestinatario
    Type
    string?
    Description

    Nombre o razón social del remitente o destinatario.

  • Name
    numRegIdTrib
    Type
    string?
    Description

    Número de registro de identificación fiscal del remitente o destinatario (residentes en el extranjero).

  • Name
    residenciaFiscalId
    Type
    string?
    Description

    Clave del país de residencia fiscal del remitente o destinatario. Catálogo del SAT c_Pais.

    Type
    enum:
    Values
    "MEX""USA""CAN"
  • Name
    numEstacionId
    Type
    string?
    Description

    Clave de la estación de origen o destino. Catálogo del SAT c_Estaciones.

    Type
    enum:
    Values
    "PM001""PM002""PM003"
  • Name
    nombreEstacion
    Type
    string?
    Description

    Nombre de la estación de origen o destino.

  • Name
    navegacionTraficoId
    Type
    string?
    Description

    Tipo de navegación del puerto. Catálogo del SAT SatFlagNavegacionTrafico.

    Type
    enum:
    Values
    "Altura""Cabotaje"
  • Name
    fechaHoraSalidaLlegada
    Type
    string
    required
    Description

    Fecha y hora de salida o llegada en formato AAAA-MM-DDThh:mm:ss.

  • Name
    tipoEstacionId
    Type
    string?
    Description

    Clave del tipo de estación. Catálogo del SAT c_TipoEstacion.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    distanciaRecorrida
    Type
    number | decimal?
    Description

    Distancia recorrida en kilómetros desde el origen o el punto intermedio.

  • Name
    domicilio
    Type
    object (CartaPorteUbicacionDomicilio)?

    Domicilio de la ubicación de origen o destino.

  • Name
    calle
    Type
    string?
    Description

    Calle del domicilio.

  • Name
    numeroExterior
    Type
    string?
    Description

    Número exterior del domicilio.

  • Name
    numeroInterior
    Type
    string?
    Description

    Número interior del domicilio.

  • Name
    coloniaId
    Type
    string?
    Description

    Clave de la colonia. Catálogo del SAT c_Colonia.

  • Name
    localidadId
    Type
    string?
    Description

    Clave de la localidad. Catálogo del SAT c_Localidad.

  • Name
    referencia
    Type
    string?
    Description

    Referencia geográfica adicional, como coordenadas GPS.

  • Name
    municipioId
    Type
    string?
    Description

    Clave del municipio o alcaldía. Catálogo del SAT c_Municipio.

  • Name
    estadoId
    Type
    string
    required
    Description

    Clave del estado o entidad federativa. Catálogo del SAT c_Estado.

    Type
    enum:
    Values
    "AGU""BCN""BCS"
  • Name
    paisId
    Type
    string
    required
    Description

    Clave del país. Catálogo del SAT c_Pais.

    Type
    enum:
    Values
    "MEX""USA""CAN"
  • Name
    codigoPostalId
    Type
    string
    required
    Description

    Código postal del domicilio. Catálogo del SAT c_CodigoPostal.

  • Name
    mercancias
    Type
    array of objects (CartaPorteMercancia)
    required

    Mercancías que se transportan.

  • Name
    bienesTranspId
    Type
    string
    required
    Description

    Clave del producto o servicio de la mercancía transportada. Catálogo del SAT c_ClaveProdServCP.

    Type
    enum:
    Values
    "11121900""11131500""11131502"
  • Name
    claveSTCCId
    Type
    string?
    Description

    Clave STCC de la mercancía para transporte ferroviario. Catálogo del SAT c_ClaveSTCC.

  • Name
    descripcion
    Type
    string
    required
    Description

    Descripción de la mercancía transportada.

  • Name
    cantidad
    Type
    number | decimal
    required
    Description

    Cantidad de la mercancía transportada.

  • Name
    claveUnidadId
    Type
    string
    required
    Description

    Clave de la unidad de medida de la mercancía. Catálogo del SAT c_ClaveUnidad.

    Type
    enum:
    Values
    "E48""H87""KGM"
  • Name
    unidad
    Type
    string?
    Description

    Descripción de la unidad de medida.

  • Name
    dimensiones
    Type
    string?
    Description

    Dimensiones de la mercancía (largo/ancho/alto en cm). Ejemplo: 59/40/36plg.

  • Name
    materialPeligrosoId
    Type
    string?
    Description

    Indica si la mercancía es material peligroso. Catálogo del SAT SatFlagMaterialPeligroso.

    Type
    enum:
    Values
    "Sí""No"
  • Name
    cveMaterialPeligrosoId
    Type
    string?
    Description

    Clave del tipo de material peligroso. Catálogo del SAT c_MaterialPeligroso.

    Type
    enum:
    Values
    "0004""0005""0006"
  • Name
    embalajeId
    Type
    string?
    Description

    Clave del tipo de embalaje de la mercancía. Catálogo del SAT c_TipoEmbalaje.

    Type
    enum:
    Values
    "1A1""1A2""1B1"
  • Name
    descripEmbalaje
    Type
    string?
    Description

    Descripción del embalaje de la mercancía.

  • Name
    sectorCOFEPRISId
    Type
    string?
    Description

    Clave del sector COFEPRIS de la mercancía. Catálogo del SAT c_SectorCOFEPRIS.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    nombreIngredienteActivo
    Type
    string?
    Description

    Nombre del ingrediente activo del producto regulado por COFEPRIS.

  • Name
    nomQuimico
    Type
    string?
    Description

    Nombre químico del producto regulado por COFEPRIS.

  • Name
    denominacionGenericaProd
    Type
    string?
    Description

    Denominación genérica del producto regulado por COFEPRIS.

  • Name
    denominacionDistintivaProd
    Type
    string?
    Description

    Denominación distintiva del producto regulado por COFEPRIS.

  • Name
    fabricante
    Type
    string?
    Description

    Fabricante del producto regulado por COFEPRIS.

  • Name
    fechaCaducidad
    Type
    string?
    Description

    Fecha de caducidad del producto regulado por COFEPRIS, en formato AAAA-MM-DD.

  • Name
    loteMedicamento
    Type
    string?
    Description

    Lote del medicamento regulado por COFEPRIS.

  • Name
    formaFarmaceuticaId
    Type
    string?
    Description

    Clave de la forma farmacéutica del medicamento. Catálogo del SAT c_FormaFarmaceutica.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    condicionesEspTranspId
    Type
    string?
    Description

    Clave de las condiciones especiales de transporte. Catálogo del SAT c_CondicionesEspeciales.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    registroSanitarioFolioAutorizacion
    Type
    string?
    Description

    Registro sanitario o folio de autorización de COFEPRIS.

  • Name
    permisoImportacion
    Type
    string?
    Description

    Permiso de importación de COFEPRIS.

  • Name
    folioImpoVUCEM
    Type
    string?
    Description

    Folio de importación VUCEM de COFEPRIS.

  • Name
    numCAS
    Type
    string?
    Description

    Número CAS (Chemical Abstracts Service) de la sustancia química.

  • Name
    razonSocialEmpImp
    Type
    string?
    Description

    Razón social de la empresa importadora.

  • Name
    numRegSanPlagCOFEPRIS
    Type
    string?
    Description

    Número de registro sanitario de plaguicida de COFEPRIS.

  • Name
    datosFabricante
    Type
    string?
    Description

    Datos del fabricante del plaguicida regulado por COFEPRIS.

  • Name
    datosFormulador
    Type
    string?
    Description

    Datos del formulador del plaguicida regulado por COFEPRIS.

  • Name
    datosMaquilador
    Type
    string?
    Description

    Datos del maquilador del plaguicida regulado por COFEPRIS.

  • Name
    usoAutorizado
    Type
    string?
    Description

    Uso autorizado del plaguicida regulado por COFEPRIS.

  • Name
    pesoEnKg
    Type
    number | decimal
    required
    Description

    Peso en kilogramos de la mercancía.

  • Name
    valorMercancia
    Type
    number | decimal?
    Description

    Valor de la mercancía.

  • Name
    monedaId
    Type
    string?
    Description

    Clave de la moneda del valor de la mercancía. Catálogo del SAT c_Moneda.

    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    fraccionArancelariaId
    Type
    string?
    Description

    Clave de la fracción arancelaria. Catálogo del SAT c_FraccionArancelaria.

  • Name
    uUIDComercioExt
    Type
    string?
    Description

    UUID del CFDI de comercio exterior asociado.

  • Name
    tipoMateriaId
    Type
    string?
    Description

    Clave del tipo de materia de la mercancía. Catálogo del SAT c_TipoMateria.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    descripcionMateria
    Type
    string?
    Description

    Descripción de la materia de la mercancía.

  • Name
    documentacionAduanera
    Type
    array of objects (CartaPorteDocumentacionAduanera)?

    Documentación aduanera de la mercancía.

  • Name
    tipoDocumentoId
    Type
    string
    required
    Description

    Clave del tipo de documento aduanero. Catálogo del SAT c_DocumentoAduanero.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    numPedimento
    Type
    string?
    Description

    Número de pedimento aduanero.

  • Name
    identDocAduanero
    Type
    string?
    Description

    Identificador del documento aduanero.

  • Name
    rFCImpo
    Type
    string?
    Description

    RFC del importador.

  • Name
    guiasIdentificacion
    Type
    array of objects (CartaPorteGuiaIdentificacion)?

    Guías de identificación de la mercancía (sector forestal/minero).

  • Name
    numeroGuiaIdentificacion
    Type
    string
    required
    Description

    Número de la guía de identificación.

  • Name
    descripGuiaIdentificacion
    Type
    string
    required
    Description

    Descripción de la guía de identificación.

  • Name
    pesoGuiaIdentificacion
    Type
    number | decimal
    required
    Description

    Peso de la guía de identificación.

  • Name
    cantidadTransporta
    Type
    array of objects (CartaPorteCantidadTransporta)?

    Cantidad de mercancía que se transporta entre ubicaciones.

  • Name
    cantidad
    Type
    number | decimal
    required
    Description

    Cantidad de mercancía que se transporta.

  • Name
    iDOrigen
    Type
    string
    required
    Description

    Identificador de la ubicación de origen. Ejemplo: OR000001.

  • Name
    iDDestino
    Type
    string
    required
    Description

    Identificador de la ubicación de destino. Ejemplo: DE000001.

  • Name
    cvesTransporteId
    Type
    string?
    Description

    Clave del medio de transporte. Catálogo del SAT c_CveTransporte.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    detalleMercancia
    Type
    object (CartaPorteDetalleMercancia)?

    Detalle de la mercancía para transporte marítimo.

  • Name
    unidadPesoMercId
    Type
    string
    required
    Description

    Clave de la unidad de peso de la mercancía. Catálogo del SAT c_ClaveUnidadPeso.

    Type
    enum:
    Values
    "XKG""XLT""XGR"
  • Name
    pesoBruto
    Type
    number | decimal
    required
    Description

    Peso bruto de la mercancía.

  • Name
    pesoNeto
    Type
    number | decimal
    required
    Description

    Peso neto de la mercancía.

  • Name
    pesoTara
    Type
    number | decimal
    required
    Description

    Peso tara (peso del contenedor vacío).

  • Name
    numPiezas
    Type
    number | decimal?
    Description

    Número de piezas de la mercancía.

  • Name
    autotransporte
    Type
    object (CartaPorteAutotransporte)?

    Información del autotransporte (vehículo, permisos, seguros y remolques).

  • Name
    permSCTId
    Type
    string
    required
    Description

    Clave del tipo de permiso SCT. Catálogo del SAT c_TipoPermiso.

    Type
    enum:
    Values
    "TPAF01""TPAF02""TPAF03"
  • Name
    numPermisoSCT
    Type
    string
    required
    Description

    Número del permiso SCT otorgado al transportista.

  • Name
    configVehicularId
    Type
    string
    required
    Description

    Clave de la configuración vehicular. Catálogo del SAT c_ConfigAutotransporte.

    Type
    enum:
    Values
    "C2""C3""C2R2"
  • Name
    pesoBrutoVehicular
    Type
    number | decimal
    required
    Description

    Peso bruto vehicular en toneladas.

  • Name
    placaVM
    Type
    string
    required
    Description

    Placa del vehículo motorizado.

  • Name
    anioModeloVM
    Type
    number | decimal
    required
    Description

    Año modelo del vehículo motorizado.

  • Name
    aseguraRespCivil
    Type
    string
    required
    Description

    Nombre de la aseguradora de responsabilidad civil.

  • Name
    polizaRespCivil
    Type
    string
    required
    Description

    Número de la póliza de seguro de responsabilidad civil.

  • Name
    aseguraMedAmbiente
    Type
    string?
    Description

    Nombre de la aseguradora de medio ambiente.

  • Name
    polizaMedAmbiente
    Type
    string?
    Description

    Número de la póliza de seguro de medio ambiente.

  • Name
    aseguraCarga
    Type
    string?
    Description

    Nombre de la aseguradora de la carga.

  • Name
    polizaCarga
    Type
    string?
    Description

    Número de la póliza de seguro de la carga.

  • Name
    primaSeguro
    Type
    number | decimal?
    Description

    Prima del seguro de la carga.

  • Name
    remolques
    Type
    array of objects (CartaPorteRemolque)?

    Remolques del autotransporte.

  • Name
    subTipoRemId
    Type
    string
    required
    Description

    Clave del subtipo de remolque. Catálogo del SAT c_SubTipoRem.

    Type
    enum:
    Values
    "CTR001""CTR002""CTR003"
  • Name
    placa
    Type
    string
    required
    Description

    Placa del remolque.

  • Name
    transporteMaritimo
    Type
    object (CartaPorteTransporteMaritimo)?

    Información del transporte marítimo.

  • Name
    permSCTId
    Type
    string?
    Description

    Clave del tipo de permiso SCT. Catálogo del SAT c_TipoPermiso.

    Type
    enum:
    Values
    "TPAF01""TPAF02""TPAF03"
  • Name
    numPermisoSCT
    Type
    string?
    Description

    Número del permiso SCT.

  • Name
    nombreAseg
    Type
    string?
    Description

    Nombre de la aseguradora.

  • Name
    numPolizaSeguro
    Type
    string?
    Description

    Número de la póliza de seguro.

  • Name
    tipoEmbarcacionId
    Type
    string
    required
    Description

    Clave del tipo de embarcación. Catálogo del SAT c_ConfigMaritima.

    Type
    enum:
    Values
    "B01""B02""B03"
  • Name
    matricula
    Type
    string
    required
    Description

    Matrícula de la embarcación.

  • Name
    numeroOMI
    Type
    string
    required
    Description

    Número OMI de la embarcación.

  • Name
    anioEmbarcacion
    Type
    number | decimal?
    Description

    Año de la embarcación.

  • Name
    nombreEmbarc
    Type
    string?
    Description

    Nombre de la embarcación.

  • Name
    nacionalidadEmbarcId
    Type
    string
    required
    Description

    Clave del país de nacionalidad de la embarcación. Catálogo del SAT c_Pais.

    Type
    enum:
    Values
    "MEX""USA""CAN"
  • Name
    unidadesDeArqBruto
    Type
    number | decimal
    required
    Description

    Unidades de arqueo bruto de la embarcación.

  • Name
    tipoCargaId
    Type
    string
    required
    Description

    Clave del tipo de carga. Catálogo del SAT c_ClaveTipoCarga.

    Type
    enum:
    Values
    "CGS""CGC""GMN"
  • Name
    eslora
    Type
    number | decimal?
    Description

    Eslora (longitud) de la embarcación en metros.

  • Name
    manga
    Type
    number | decimal?
    Description

    Manga (ancho) de la embarcación en metros.

  • Name
    calado
    Type
    number | decimal?
    Description

    Calado de la embarcación en metros.

  • Name
    puntal
    Type
    number | decimal?
    Description

    Puntal de la embarcación en metros.

  • Name
    lineaNaviera
    Type
    string?
    Description

    Nombre de la línea naviera.

  • Name
    nombreAgenteNaviero
    Type
    string
    required
    Description

    Nombre del agente naviero.

  • Name
    numAutorizacionNavieroId
    Type
    string
    required
    Description

    Número de autorización del agente naviero. Catálogo del SAT c_NumAutorizacionNaviero.

  • Name
    numViaje
    Type
    string?
    Description

    Número de viaje de la embarcación.

  • Name
    numConocEmbarc
    Type
    string?
    Description

    Número de conocimiento de embarque.

  • Name
    permisoTempNavegacion
    Type
    string?
    Description

    Permiso temporal de navegación.

  • Name
    contenedores
    Type
    array of objects (CartaPorteContenedorMaritimo)?

    Contenedores del transporte marítimo.

  • Name
    tipoContenedorId
    Type
    string
    required
    Description

    Clave del tipo de contenedor marítimo. Catálogo del SAT c_ContenedorMaritimo.

    Type
    enum:
    Values
    "CM001""CM002""CM003"
  • Name
    matriculaContenedor
    Type
    string?
    Description

    Matrícula del contenedor.

  • Name
    numPrecinto
    Type
    string?
    Description

    Número de precinto del contenedor.

  • Name
    idCCPRelacionado
    Type
    string?
    Description

    Identificador del complemento Carta Porte relacionado.

  • Name
    placaVMCCP
    Type
    string?
    Description

    Placa del vehículo del complemento Carta Porte.

  • Name
    fechaCertificacionCCP
    Type
    string?
    Description

    Fecha de certificación del complemento Carta Porte en formato AAAA-MM-DDThh:mm:ss.

  • Name
    remolquesCCP
    Type
    array of objects (CartaPorteRemolqueCCPMaritimo)?

    Remolques del complemento Carta Porte marítimo.

  • Name
    subTipoRemCCPId
    Type
    string
    required
    Description

    Clave del subtipo de remolque. Catálogo del SAT c_SubTipoRem.

    Type
    enum:
    Values
    "CTR001""CTR002""CTR003"
  • Name
    placaCCP
    Type
    string
    required
    Description

    Placa del remolque del complemento Carta Porte.

  • Name
    transporteAereo
    Type
    object (CartaPorteTransporteAereo)?

    Información del transporte aéreo.

  • Name
    permSCTId
    Type
    string
    required
    Description

    Clave del tipo de permiso SCT. Catálogo del SAT c_TipoPermiso.

    Type
    enum:
    Values
    "TPAF01""TPAF02""TPAF03"
  • Name
    numPermisoSCT
    Type
    string
    required
    Description

    Número del permiso SCT.

  • Name
    matriculaAeronave
    Type
    string?
    Description

    Matrícula de la aeronave.

  • Name
    nombreAseg
    Type
    string?
    Description

    Nombre de la aseguradora.

  • Name
    numPolizaSeguro
    Type
    string?
    Description

    Número de la póliza de seguro.

  • Name
    numeroGuia
    Type
    string
    required
    Description

    Número de guía aérea.

  • Name
    lugarContrato
    Type
    string?
    Description

    Lugar del contrato de transporte aéreo.

  • Name
    codigoTransportistaId
    Type
    string
    required
    Description

    Código del transportista aéreo. Catálogo del SAT c_CodigoTransporteAereo.

    Type
    enum:
    Values
    "CA001""CA002""CA003"
  • Name
    rFCEmbarcador
    Type
    string?
    Description

    RFC del embarcador.

  • Name
    numRegIdTribEmbarc
    Type
    string?
    Description

    Número de registro de identificación fiscal del embarcador.

  • Name
    residenciaFiscalEmbarcId
    Type
    string?
    Description

    Clave del país de residencia fiscal del embarcador. Catálogo del SAT c_Pais.

    Type
    enum:
    Values
    "MEX""USA""CAN"
  • Name
    nombreEmbarcador
    Type
    string?
    Description

    Nombre del embarcador.

  • Name
    transporteFerroviario
    Type
    object (CartaPorteTransporteFerroviario)?

    Información del transporte ferroviario.

  • Name
    tipoDeServicioId
    Type
    string
    required
    Description

    Clave del tipo de servicio ferroviario. Catálogo del SAT c_TipoDeServicio.

    Type
    enum:
    Values
    "TS01""TS02""TS03"
  • Name
    tipoDeTraficoId
    Type
    string
    required
    Description

    Clave del tipo de tráfico ferroviario. Catálogo del SAT c_TipoDeTrafico.

    Type
    enum:
    Values
    "TT01""TT02""TT03"
  • Name
    nombreAseg
    Type
    string?
    Description

    Nombre de la aseguradora.

  • Name
    numPolizaSeguro
    Type
    string?
    Description

    Número de la póliza de seguro.

  • Name
    derechosDePaso
    Type
    array of objects (CartaPorteDerechosDePaso)?

    Derechos de paso del transporte ferroviario.

  • Name
    tipoDerechoDePasoId
    Type
    string
    required
    Description

    Clave del tipo de derecho de paso. Catálogo del SAT c_DerechosDePaso.

    Type
    enum:
    Values
    "CDP001""CDP002""CDP003"
  • Name
    kilometrajePagado
    Type
    number | decimal
    required
    Description

    Kilometraje pagado por el derecho de paso.

  • Name
    carros
    Type
    array of objects (CartaPorteCarro)
    required

    Carros del transporte ferroviario.

  • Name
    tipoCarroId
    Type
    string
    required
    Description

    Clave del tipo de carro ferroviario. Catálogo del SAT c_TipoCarro.

    Type
    enum:
    Values
    "TC01""TC02""TC03"
  • Name
    matriculaCarro
    Type
    string
    required
    Description

    Matrícula del carro ferroviario.

  • Name
    guiaCarro
    Type
    string
    required
    Description

    Número de guía del carro ferroviario.

  • Name
    toneladasNetasCarro
    Type
    number | decimal
    required
    Description

    Toneladas netas del carro ferroviario.

  • Name
    contenedores
    Type
    array of objects (CartaPorteCarroContenedor)?

    Contenedores del carro ferroviario.

  • Name
    tipoContenedorId
    Type
    string
    required
    Description

    Clave del tipo de contenedor ferroviario. Catálogo del SAT c_Contenedor.

    Type
    enum:
    Values
    "TC01""TC02""TC03"
  • Name
    pesoContenedorVacio
    Type
    number | decimal
    required
    Description

    Peso del contenedor vacío en kilogramos.

  • Name
    pesoNetoMercancia
    Type
    number | decimal
    required
    Description

    Peso neto de la mercancía en el contenedor en kilogramos.

  • Name
    tiposFigura
    Type
    array of objects (CartaPorteTiposFigura)?

    Figuras del transporte (operador, propietario, arrendatario, notificado).

  • Name
    tipoFiguraId
    Type
    string
    required
    Description

    Clave del tipo de figura del transporte. Catálogo del SAT c_FiguraTransporte.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    rFCFigura
    Type
    string?
    Description

    RFC de la figura del transporte.

  • Name
    numLicencia
    Type
    string?
    Description

    Número de licencia del operador.

  • Name
    nombreFigura
    Type
    string
    required
    Description

    Nombre de la figura del transporte.

  • Name
    numRegIdTribFigura
    Type
    string?
    Description

    Número de registro de identificación fiscal de la figura (residentes en el extranjero).

  • Name
    residenciaFiscalFiguraId
    Type
    string?
    Description

    Clave del país de residencia fiscal de la figura. Catálogo del SAT c_Pais.

    Type
    enum:
    Values
    "MEX""USA""CAN"
  • Name
    partesTransporte
    Type
    array of objects (CartaPortePartesTransporte)?

    Partes del transporte asociadas a la figura.

  • Name
    parteTransporteId
    Type
    string
    required
    Description

    Clave de la parte de transporte. Catálogo del SAT c_ParteTransporte.

    Type
    enum:
    Values
    "PT01""PT02""PT03"
  • Name
    domicilio
    Type
    object (CartaPorteTiposFiguraDomicilio)?

    Domicilio de la figura del transporte.

  • Name
    calle
    Type
    string?
    Description

    Calle del domicilio.

  • Name
    numeroExterior
    Type
    string?
    Description

    Número exterior del domicilio.

  • Name
    numeroInterior
    Type
    string?
    Description

    Número interior del domicilio.

  • Name
    coloniaId
    Type
    string?
    Description

    Clave de la colonia. Catálogo del SAT c_Colonia.

  • Name
    localidadId
    Type
    string?
    Description

    Clave de la localidad. Catálogo del SAT c_Localidad.

  • Name
    referencia
    Type
    string?
    Description

    Referencia geográfica adicional.

  • Name
    municipioId
    Type
    string?
    Description

    Clave del municipio o alcaldía. Catálogo del SAT c_Municipio.

  • Name
    estadoId
    Type
    string
    required
    Description

    Clave del estado o entidad federativa. Catálogo del SAT c_Estado.

    Type
    enum:
    Values
    "AGU""BCN""BCS"
  • Name
    paisId
    Type
    string
    required
    Description

    Clave del país. Catálogo del SAT c_Pais.

    Type
    enum:
    Values
    "MEX""USA""CAN"
  • Name
    codigoPostalId
    Type
    string
    required
    Description

    Código postal del domicilio. Catálogo del SAT c_CodigoPostal.

  • Name
    metadata
    Type
    dictionary<string, string>?

    Metadatos - Información adicional propia del cliente asociada a la factura.

  • Name
    key
    Type
    string
    required
    Description

    Clave del metadato. Ejemplo: numero_orden.

  • Name
    value
    Type
    string
    required
    Description

    Valor del metadato. Ejemplo: ORD-12345.

  • Name
    responses
    Type
    array of objects (InvoiceResponse)?

    Respuesta del SAT. Contiene la información del timbrado. (Sólo lectura).

  • Name
    id
    Type
    string?
    Description

    ID de la respuesta.

  • Name
    invoiceId
    Type
    string?
    Description

    ID de la factura a la que pertenece la respuesta.

  • Name
    invoiceUuid
    Type
    string?
    Description

    Folio Fiscal (UUID) proporcionado por el SAT tras el timbrado de la factura, coincide con el invoice.uuid.

  • Name
    invoiceCertificateNumber
    Type
    string?
    Description

    Número de certificado del emisor. Este valor identifica el certificado del emisor que se utilizó para firmar la factura.

  • Name
    invoiceBase64Sello
    Type
    string?
    Description

    Sello digital del CFDI en formato Base64. Representa la firma electrónica del emisor.

  • Name
    invoiceSignatureDate
    Type
    string?
    Description

    Fecha y hora de la firma electrónica del CFDI por parte del emisor.

  • Name
    invoiceBase64QrCode
    Type
    string?
    Description

    Imagen del código QR en formato Base64. Este código QR permite verificar la autenticidad de la factura de manera ágil.

  • Name
    invoiceBase64
    Type
    string?
    Description

    XML de la factura en formato Base64. Este archivo es el CFDI completo que incluye la estructura y datos requeridos por el SAT.

  • Name
    satBase64Sello
    Type
    string?
    Description

    Sello digital del SAT en formato Base64. Representa la firma electrónica del SAT.

  • Name
    satBase64OriginalString
    Type
    string?
    Description

    Cadena original de la factura codificada en Base64. Es la representación de la factura en texto plano, sin cifrar, que se utiliza como entrada para generar el sello digital.

  • Name
    satCertificateNumber
    Type
    string?
    Description

    Número de certificado del SAT. Este valor identifica el certificado del SAT que se utilizó para firmar la factura.


Modelo de cancelación de facturas

Contiene la información de la solicitud para cancelar facturas en el modo de operación por valores.

Propiedades

  • Name
    invoiceUuid
    Type
    string
    required
    Description

    UUID de la factura a cancelar. Corresponde al folio fiscal UUID de la factura, no al ID de la factura.

  • Name
    tin
    Type
    string
    required
    Description

    RFC del emisor de la factura. (Tax Identification Number)

  • Name
    cancellationReasonCode
    Type
    string enum
    required
    Description

    Código del motivo de cancelación. Catálogo del SAT c_MotivoCancelacion.
    Lea más sobre cómo elegir el motivo de cancelación.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    replacementUuid
    Type
    string?
    conditional required
    Description

    UUID de la nueva factura que reemplaza la factura que será cancelada.
    Requerido cuando cancellationReasonCode es 01

  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)
    required

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Debe ser el contenido del archivo .cer o .key codificado en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    01
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key Debe ser la misma en ambos objetos. (.cer y .key)


Modelo de respuesta de cancelación de facturas

Contiene la información de la respuesta de la cancelación de facturas.

Propiedades

  • Name
    base64CancellationAcknowledgement
    Type
    string?
    Description

    Acuse de cancelación XML en formato base64.
    Lea cómo decodificar el archivo en base64 para obtener el archivo original.

  • Name
    invoiceUuids
    Type
    object?

    Diccionario que mapea el UUID de la factura cancelada con su respectivo código de estatus de cancelación.

    Ejemplo: {"1C7DE47D-9224-4DC2-A1FB-4109537BF913": "201"}

  • Name
    key
    Type
    string?
    Description

    UUID de la factura cancelada o en proceso de cancelación.

  • Name
    value
    Type
    string?
    Description

    Código de estatus de la cancelación.

    Type
    enum:
    Values
    201202203

Modelo de generación de PDF

Contiene la información de la solicitud para generar un PDF de una factura en el modo de operación por valores.
Lea cómo crear una regla de reporte.

Propiedades

  • Name
    invoiceId
    Type
    string
    required
    Description

    ID de la factura a generar el PDF. Corresponde al id asignado por Fiscalapi al generar la factura.

  • Name
    bandColor
    Type
    string?
    Description

    Color de la banda del PDF en formato hexadecimal. Por ejemplo: "#FFA500".

  • Name
    fontColor
    Type
    string?
    Description

    Color de la fuente del texto sobre la banda en formato hexadecimal. Por ejemplo: "#FFFFFF".

  • Name
    base64Logo
    Type
    string?
    Description

    Logotipo en formato base64 que se mostrará en el PDF.


Modelo de respuesta de generación de PDF

Contiene la información de la respuesta de la solicitud de generación de PDF de una factura.

Propiedades

  • Name
    base64File
    Type
    string?
    Description

    Archivo PDF en formato base64.
    Lea cómo decodificar el archivo en base64 para obtener el archivo original.

  • Name
    fileName
    Type
    string?
    Description

    Nombre del archivo.

  • Name
    fileExtension
    Type
    string?
    Description

    Extensión del archivo.


Modelo de envío de facturas por correo

Contiene la información de la solicitud para enviar una factura por correo electrónico en el modo de operación por valores.
Lea cómo crear una regla de reporte para personalizar el PDF.

Propiedades

  • Name
    invoiceId
    Type
    string
    required
    Description

    ID de la factura a enviar por correo. Corresponde al id asignado por Fiscalapi al generar la factura.

  • Name
    toEmail
    Type
    string
    required
    Description

    Correo electrónico del destinatario.

  • Name
    bandColor
    Type
    string?
    Description

    Color de la banda del PDF en formato hexadecimal. Por ejemplo: "#FFA500".

  • Name
    fontColor
    Type
    string?
    Description

    Color de la fuente del texto sobre la banda en formato hexadecimal. Por ejemplo: "#FFFFFF".

  • Name
    base64Logo
    Type
    string?
    Description

    Logotipo en formato base64 que se mostrará en el PDF.


Modelo de respuesta de envío de facturas por correo

Contiene la información de la respuesta de la solicitud de envío de facturas por correo.

Propiedades

Todas las respuestas de la API devuelven un objeto ApiResponse<T>, donde T representa el modelo de respuesta. En este caso, T es un valor booleano (true o false) que indica si la factura fue enviada correctamente por correo electrónico. Consulta los modelos de respuesta en fiscalapi para más detalles.

Modelo para consultar el estado de una factura

Contiene la información de la solicitud para consultar el estado de una factura en el modo de operación por referencias.
Es útil para determinar si la factura puede cancelarse directamente o si se necesitará aprobación del receptor para proceder con la cancelación.

Propiedades

  • Name
    issuerTin
    Type
    string
    required
    Description

    RFC del Emisor de la factura.

  • Name
    recipientTin
    Type
    string
    required
    Description

    RFC Receptor de la factura.

  • Name
    invoiceTotal
    Type
    number | decimal
    required
    Description

    Total de la factura.

  • Name
    invoiceUuid
    Type
    string
    required
    Description

    Folio fiscal de la factura a consultar.

  • Name
    last8DigitsIssuerSignature
    Type
    string
    required
    Description

    Últimos ocho caracteres del sello digital de la factura a consultar.


Modelo de respuesta a la consulta del estado de una factura

Contiene la información de la respuesta a la consulta del estado de una factura.

Propiedades

  • Name
    statusCode
    Type
    string?
    Description

    Código de estatus retornado por el SAT.

  • Name
    status
    Type
    string?
    Description

    Estado actual de la factura ante el SAT.
    Posibles valores:

    • 'Vigente'
    • 'Cancelado'
    • 'No Encontrado'
  • Name
    cancelableStatus
    Type
    string?
    Description

    Indica si la factura es cancelable y si se requiere aprobación del receptor.
    Posibles valores:

    • 'Cancelable con aceptación'
    • 'No cancelable'
    • 'Cancelable sin aceptación'
  • Name
    cancellationStatus
    Type
    string?
    Description

    Estado de la solicitud de cancelación, si se solicitó la cancelación.
    Posibles valores:

    • null
    • 'En proceso'
    • 'Plazo vencido'
    • 'Solicitud rechazada'
    • 'Cancelado sin aceptación'
    • 'Cancelado con aceptación'
  • Name
    efosValidation
    Type
    string?
    Description

    Código que indica si el RFC Emisor se encuentra dentro de la lista negra de Empresas que Facturan Operaciones Simuladas (EFOS).

    Posibles valores:

    • 100: El RFC Emisor se encuentra dentro de la lista de EFOS.
    • 200: El RFC Emisor no se encuentra dentro de la lista de EFOS.

GET/api/v4/invoices

Listar facturas

Este endpoint devuelve una lista paginada de facturas en el modo de operación por valores. De forma predeterminada se muestran diez facturas por página. Puede ajustarse con los parámetros de consulta.

Parámetros de consulta

  • Name
    pageNumber
    Type
    number | decimal
    required
    Description

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

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

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

    Default:
    10

Request

GET
/api/v4/invoices?pageNumber=1&pageSize=2
curl --location 'https://test.fiscalapi.com/api/v4/invoices?pageNumber=1&pageSize=2' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <apiKey>' \
--data ''

Response

{
    "data": {
        "items": [
            {
                "versionCode": "4.0",
                "series": "SDK-F",
                "number": "EKU9003173C9-1",
                "date": "2025-01-07T09:29:45.0000000",
                "paymentFormCode": "01",
                "paymentConditions": null,
                "subtotal": 43594.930000,
                "discount": 511.700000,
                "currencyCode": "MXN",
                "exchangeRate": 1.000000,
                "total": 49257.950000,
                "typeCode": "I",
                "exportCode": "01",
                "uuid": null,
                "consecutive": 0,
                "status": {
                    "id": "X",
                    "description": "Cancelado",
                    "createdAt": "2024-08-10T15:46:30.3730000",
                    "updatedAt": null
                },
                "paymentMethodCode": "PUE",
                "expeditionZipCode": "42501",
                "issuer": {
                    "id": null,
                    "tin": "EKU9003173C9",
                    "legalName": "ESCUELA KEMPER URGATE",
                    "taxRegimeCode": "601"
                },
                "recipient": {
                    "id": null,
                    "tin": "EKU9003173C9",
                    "legalName": "ESCUELA KEMPER URGATE",
                    "zipCode": "42501",
                    "taxRegimeCode": "601",
                    "cfdiUseCode": "G01",
                    "email": "someone@somewhere.com"
                },
                "items": [
                    {
                        "itemCode": "01010101",
                        "quantity": 9.500000,
                        "unitOfMeasurementCode": "E48",
                        "description": "Invoicing software as a service",
                        "unitPrice": 3587.750000,
                        "taxObjectCode": "",
                        "itemSku": "7506022301697",
                        "unitOfMeasurement": "Unidad de servicio",
                        "discount": 255.850000,
                        "itemTaxes": [
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.160000,
                                "taxFlagCode": "T"
                            }
                        ]
                    },
                    {
                        "itemCode": "01010101",
                        "quantity": 6.000000,
                        "unitOfMeasurementCode": "E48",
                        "description": "Computer software",
                        "unitPrice": 1250.750000,
                        "taxObjectCode": "",
                        "itemSku": "7506022301699",
                        "unitOfMeasurement": "Unidad de servicio3",
                        "discount": 0.000000,
                        "itemTaxes": [
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.160000,
                                "taxFlagCode": "T"
                            },
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.106666,
                                "taxFlagCode": "R"
                            }
                        ]
                    },
                    {
                        "itemCode": "01010101",
                        "quantity": 8.000000,
                        "unitOfMeasurementCode": "E48",
                        "description": "Software Consultant",
                        "unitPrice": 250.850000,
                        "taxObjectCode": "",
                        "itemSku": "7506022301698",
                        "unitOfMeasurement": "Unidad de servicio2",
                        "discount": 255.850000,
                        "itemTaxes": [
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.160000,
                                "taxFlagCode": "T"
                            }
                        ]
                    }
                ],
                "responses": [
                    {
                        "invoiceId": "547aea4b-d9c0-4515-b6df-0790f580845b",
                        "invoiceUuid": "3fd44a11-e419-4bdd-ae5c-7e766879de2d",
                        "invoiceCertificateNumber": "30001000000500003416",
                        "invoiceBase64Sello": "sello_cfdi_en_base64...",
                        "invoiceSignatureDate": "2025-01-07T09:30:48.0000000",
                        "invoiceBase64QrCode": "qr_code_image_en_base64...",
                        "invoiceBase64": "xml_en_base64...",
                        "satBase64Sello": "sello_sat_en_base64...",
                        "satBase64OriginalString": "cadena_original_en_base64...",
                        "satCertificateNumber": "30001000000500003456",
                        "id": "0789b137-4e9b-434d-bc45-ef5f89dd42fa",
                        "createdAt": "2025-01-07T15:29:45.8359281",
                        "updatedAt": "2025-01-07T15:29:45.8359360"
                    }
                ],
                "id": "547aea4b-d9c0-4515-b6df-0790f580845b",
                "createdAt": "2025-01-07T15:29:45.8356611",
                "updatedAt": "2025-01-07T15:29:45.8356821"
            },
            {
                "versionCode": "4.0",
                "series": "CN",
                "number": "FUNK671228PH6-1",
                "date": "2025-01-07T09:30:49.0000000",
                "paymentFormCode": "03",
                "paymentConditions": "Contado",
                "subtotal": 8298.480000,
                "discount": 0.000000,
                "currencyCode": "MXN",
                "exchangeRate": 1.000000,
                "total": 8959.180000,
                "typeCode": "E",
                "exportCode": "01",
                "uuid": null,
                "consecutive": 0,
                "status": {
                    "id": "V",
                    "description": "Vigente",
                    "createdAt": "2024-08-10T15:46:30.3730000",
                    "updatedAt": null
                },
                "paymentMethodCode": "PUE",
                "expeditionZipCode": "01160",
                "issuer": {
                    "id": null,
                    "tin": "FUNK671228PH6",
                    "legalName": "KARLA FUENTE NOLASCO",
                    "taxRegimeCode": "621"
                },
                "recipient": {
                    "id": null,
                    "tin": "EKU9003173C9",
                    "legalName": "ESCUELA KEMPER URGATE",
                    "zipCode": "42501",
                    "taxRegimeCode": "601",
                    "cfdiUseCode": "G01",
                    "email": "someone@somewhere.com"
                },
                "items": [
                    {
                        "itemCode": "01010101",
                        "quantity": 0.500000,
                        "unitOfMeasurementCode": "E48",
                        "description": "Invoicing software as a service",
                        "unitPrice": 3587.750000,
                        "taxObjectCode": "",
                        "itemSku": "7506022301697",
                        "unitOfMeasurement": null,
                        "discount": 0.000000,
                        "itemTaxes": [
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.160000,
                                "taxFlagCode": null
                            }
                        ]
                    },
                    {
                        "itemCode": "01010101",
                        "quantity": 5.000000,
                        "unitOfMeasurementCode": "E48",
                        "description": "Computer software",
                        "unitPrice": 1250.750000,
                        "taxObjectCode": "",
                        "itemSku": "7506022301699",
                        "unitOfMeasurement": null,
                        "discount": 0.000000,
                        "itemTaxes": [
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.160000,
                                "taxFlagCode": null
                            },
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.106666,
                                "taxFlagCode": null
                            }
                        ]
                    },
                    {
                        "itemCode": "01010101",
                        "quantity": 1.000000,
                        "unitOfMeasurementCode": "E48",
                        "description": "Software Consultant",
                        "unitPrice": 250.850000,
                        "taxObjectCode": "",
                        "itemSku": "7506022301698",
                        "unitOfMeasurement": null,
                        "discount": 0.000000,
                        "itemTaxes": [
                            {
                                "taxCode": "002",
                                "taxTypeCode": "Tasa",
                                "taxRate": 0.160000,
                                "taxFlagCode": null
                            }
                        ]
                    }
                ],
                "responses": [
                    {
                        "invoiceId": "dbe36690-cc9f-462d-a582-a3d115abb0a4",
                        "invoiceUuid": "8c909a79-2f37-46f6-8e1a-42a8a77b9b55",
                        "invoiceCertificateNumber": "30001000000500003446",
                        "invoiceBase64Sello": "sello_cfdi_en_base64...",
                        "invoiceSignatureDate": "2025-01-07T09:30:48.0000000",
                        "invoiceBase64QrCode": "qr_code_image_en_base64...",
                        "invoiceBase64": "xml_en_base64...",
                        "satBase64Sello": "sello_sat_en_base64...",
                        "satBase64OriginalString": "cadena_original_en_base64...",
                        "satCertificateNumber": "30001000000500003456",
                        "id": "43bdfdfb-a79e-4a96-b570-17d4d1544ef7",
                        "createdAt": "2025-01-07T15:30:48.6127197",
                        "updatedAt": "2025-01-07T15:30:48.6127198"
                    }
                ],
                "id": "dbe36690-cc9f-462d-a582-a3d115abb0a4",
                "createdAt": "2025-01-07T15:30:48.6126471",
                "updatedAt": "2025-01-07T15:30:48.6126485"
            }
        ],
        "pageNumber": 1,
        "totalPages": 72,
        "totalCount": 143,
        "hasPreviousPage": false,
        "hasNextPage": true
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

GET/api/v4/invoices/<id>

Obtener factura por ID

Este endpoint permite obtener una factura por id en el modo de operación por valores.

Parámetros de consulta

  • Name
    details
    Type
    boolean?
    Description

    Indica si se deben incluir los objetos relacionados de la factura como el emisor, el receptor, los productos, etc. true para incluirlos, false para omitirlos.

    Default:
    false

Request

GET
/api/v4/invoices/<id>?details=true
curl --location 'https://test.fiscalapi.com/api/v4/invoices/f210a271-71be-47b5-9744-666e498d9e1b?details=true' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <apiKey>' \
--data ''

Response

{
    "data": {
        "versionCode": "4.0",
        "series": "MXN-USD",
        "number": "FUNK671228PH6-10",
        "date": "2025-04-20T02:59:53.0000000",
        "paymentFormCode": null,
        "paymentConditions": null,
        "subtotal": 0,
        "discount": 0,
        "currencyCode": "XXX",
        "exchangeRate": 0,
        "total": 0,
        "typeCode": "P",
        "exportCode": "01",
        "uuid": "1c7de47d-9224-4dc2-a1fb-4109537bf913",
        "consecutive": 78,
        "status": {
            "id": "V",
            "description": "Vigente",
            "createdAt": "2024-08-10T15:46:30.3730000",
            "updatedAt": null
        },
        "paymentMethodCode": null,
        "expeditionZipCode": "01160",
        "issuer": {
            "id": null,
            "tin": "FUNK671228PH6",
            "legalName": "KARLA FUENTE NOLASCO",
            "taxRegimeCode": "621"
        },
        "recipient": {
            "id": null,
            "tin": "EKU9003173C9",
            "legalName": "ESCUELA KEMPER URGATE",
            "zipCode": "42501",
            "taxRegimeCode": "601",
            "cfdiUseCode": "CP01",
            "email": "someone@somewhere.com"
        },
        "items": [
            {
                "itemCode": "84111506",
                "quantity": 1,
                "unitOfMeasurementCode": "ACT",
                "description": "Pago",
                "unitPrice": 0,
                "taxObjectCode": "01",
                "itemSku": null,
                "unitOfMeasurement": null,
                "discount": 0,
                "itemTaxes": []
            }
        ],
        "responses": [
            {
                "invoiceId": "f210a271-71be-47b5-9744-666e498d9e1b",
                "invoiceUuid": "1c7de47d-9224-4dc2-a1fb-4109537bf913",
                "invoiceCertificateNumber": "30001000000500003446",
                "invoiceBase64Sello": "sello_cfdi_en_base64...",
                "invoiceSignatureDate": "2025-01-07T09:30:48.0000000",
                "invoiceBase64QrCode": "qr_code_image_en_base64...",
                "invoiceBase64": "xml_en_base64...",
                "satBase64Sello": "sello_sat_en_base64...",
                "satBase64OriginalString": "cadena_original_en_base64...",
                "satCertificateNumber": "30001000000500003456",
                "id": "bdd3a198-12f2-44ac-8053-fb5917290967",
                "createdAt": "2025-04-20T09:07:06.2642292",
                "updatedAt": "2025-04-20T09:07:06.2642293"
            }
        ],
        "id": "f210a271-71be-47b5-9744-666e498d9e1b",
        "createdAt": "2025-04-20T09:07:06.2642205",
        "updatedAt": "2025-04-20T09:07:06.2642214"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

GET/api/v4/invoices/{id}/xml

Obtener xml por ID

Este endpoint permite obtener el xml una factura por id en el modo de operación por valores.

Request

GET
/api/v4/invoices/<id>/xml
curl --location 'https://test.fiscalapi.com/api/v4/invoices/f210a271-71be-47b5-9744-666e498d9e1b/xml' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <apiKey>' \
--data ''

Response

{
    "data": {
        "base64File": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48Y2ZkaTpDb21wcm9iYW50ZSB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4bWxuczpwYWdvMjA9Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9QYWdvczIwIiB4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9jZmQvNCBodHRwOi8vd3d3LnNhdC5nb2IubXgvc2l0aW9faW50ZXJuZXQvY2ZkLzQvY2ZkdjQwLnhzZCBodHRwOi8vd3d3LnNhdC5nb2IubXgvUGFnb3MyMCBodHRwOi8vd3d3LnNhdC5nb2IubXgvc2l0aW9faW50ZXJuZXQvY2ZkL1BhZ29zL1BhZ29zMjAueHNkIiBMdWdhckV4cGVkaWNpb249IjAxMTYwIiBFeHBvcnRhY2lvbj0iMDEiIFRpcG9EZUNvbXByb2JhbnRlPSJQIiBUb3RhbD0iMCIgU3ViVG90YWw9IjAiIENlcnRpZmljYWRvPSJNSUlGZ0RDQ0EyaWdBd0lCQWdJVU16QXdNREV3TURBd01EQTFNREF3TURNME5EWXdEUVlKS29aSWh2Y05BUUVMQlFBd2dnRXJNUTh3RFFZRFZRUUREQVpCUXlCVlFWUXhMakFzQmdOVkJBb01KVk5GVWxaSlEwbFBJRVJGSUVGRVRVbE9TVk5VVWtGRFNVOU9JRlJTU1VKVlZFRlNTVUV4R2pBWUJnTlZCQXNNRVZOQlZDMUpSVk1nUVhWMGFHOXlhWFI1TVNnd0pnWUpLb1pJaHZjTkFRa0JGaGx2YzJOaGNpNXRZWEowYVc1bGVrQnpZWFF1WjI5aUxtMTRNUjB3R3dZRFZRUUpEQlF6Y21FZ1kyVnljbUZrWVNCa1pTQmpZV3hwZWpFT01Bd0dBMVVFRVF3Rk1EWXpOekF4Q3pBSkJnTlZCQVlUQWsxWU1Sa3dGd1lEVlFRSURCQkRTVlZFUVVRZ1JFVWdUVVZZU1VOUE1SRXdEd1lEVlFRSERBaERUMWxQUVVOQlRqRVJNQThHQTFVRUxSTUlNaTQxTGpRdU5EVXhKVEFqQmdrcWhraUc5dzBCQ1FJVEZuSmxjM0J2Ym5OaFlteGxPaUJCUTBSTlFTMVRRVlF3SGhjTk1qTXdOVEU0TVRRek5UTTNXaGNOTWpjd05URTRNVFF6TlRNM1dqQ0JwekVkTUJzR0ExVUVBeE1VUzBGU1RFRWdSbFZGVGxSRklFNVBURUZUUTA4eEhUQWJCZ05WQkNrVEZFdEJVa3hCSUVaVlJVNVVSU0JPVDB4QlUwTlBNUjB3R3dZRFZRUUtFeFJMUVZKTVFTQkdWVVZPVkVVZ1RrOU1RVk5EVHpFV01CUUdBMVVFTFJNTlJsVk9TelkzTVRJeU9GQklOakViTUJrR0ExVUVCUk1TUmxWT1N6WTNNVEl5T0UxRFRFNU1VakExTVJNd0VRWURWUVFMRXdwVGRXTjFjbk5oYkNBeE1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBaE5YYlRTcUdYNisvM1VycGVteXk1dlZHMklkUDJ2N3YwMDErYzRCb014RURGRFEzMmNPRmREaVJ4eTBGcTlhUitPanJvZnE4VmVmdHZONTg2aXlBMUE2YTBRbkE2OGk3Sm5RS0k0dUp5K3UwcWlpeHVIdTZ1M2IzQmhTcG9hVkhjVXRxRldMTGx6cjB5QnhmVkxPcVZuYS8xL3RIYlFKZzloeDU3bXA5N1AwSm1YTzFXZUlxaStacW9iL21WWmgybHNQR2RKOGlxZ2pZRmFGbjlRVk9RMVBxNzRvMVBUcXdmenFnSlNmVjB6T09sRVNEUFdnZ2FEQVlFNFZOeVRCaXNPVWpsTmQweDdwcGNUeFNpM3llbnJKSHFrcS9wcUpzUkxLZjZWSi9zOXA2YnNkMmJqMDdoU0RwamxEQzJsQjI1ZUVma0VrZU1rWG9FN0VyWFE1UUN3SURBUUFCb3gwd0d6QU1CZ05WSFJNQkFmOEVBakFBTUFzR0ExVWREd1FFQXdJR3dEQU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFId1lwZ2JDbEhVTFhZaEs0R05UZ29udlhoODFvcWZYd0NTV0F5RFBpVFlGRFdWZldNOUM0QXB4TUx5YzBYdkp0ZTc1UmxhK2JQQzA4b1lOM09saGJidlAzdHdCTC93OVNzZnh2a2JwRm4yWmZHU1RYWmh5aXE0dmptUUhXMXBuRnZHZWx3Z1U0djNlZVJFL01qb0NuRTdNL1E1dGhwdW9nNldHZjdDYktFUm5XWm44UXNVYUpzWlNFa2c2QnYyam02OXllNTdhYjVyck9VYWVNbHN0VGZkbGFIQUVrVWdMWC9OWHE3UmJHd3Y4MmhrSFk1YjJ2WWNYZWgzNHRVTUJMNm9zM09kUmxvb045WlFHa1ZJSVN2eFZacFNIa1lDMjBERk5oMUJiMG92amZ1amxUY2thODFHbmJVaEZHWnRSdW9WUTFSVnBNTzh4dHgzWUtCTHA0ZG8zaFBtblJDVjVoQ200M09Jall4OU92MmRxSUNWM0FhTlhTTFYxZFczOUJhay9SQmlJREdIek9JVzIrVk1QanZ2eXBCam1Qdi90bWJxTkhXUFNBV094VHlNeDZFMWdGQ1p2aSs1RitCZ2tkQzNMbTdVMEJVME5mdnNYYWpaZDhzWG5JbGx2RU1yaWtDTG9JL3l1cnZleE5EY0YxUlcvRmhNc291YTBlZXJ3Y3pjTm02NnBHakhtMDVwOURSNmxGZUpacnRxZXFadW9qZHhCV3k0dkg2Z2h5SmF1cGVyZ29YK25tZEczSlllUnR0Q0ZGL0lUSTY4VGVDRVM1VjNZMEMzcHNZQWcxWHhjR1JMR2Q0Y2hQby80eHdpTGtpald0Z3QwL3RvNWxqR0J3Zks3cjYyUEhaZkwxRHAraTdWM3c3aG1PbGhiWHpQK3poTVpuMUdDazdLWT0iIE5vQ2VydGlmaWNhZG89IjMwMDAxMDAwMDAwNTAwMDAzNDQ2IiBTZWxsbz0iWW12djc0akNsTWRvM3Nyb2xCSTlJV0VRWFZqbm9VT3RDempLNTQ4Q1VnbVdyRTVneUlZTWwraFZqclRLQjNqUE9VUlduMWlSTlRSN0MrWFBtRHFZa3dmRTJNYTdFK3I5WVN0YTZvQ3lDWW5OVU9rRXluU0QzVGNtWGt5UjdaNVlsdUZ1Zk9nWS9nRFd1eEZKMnp3dGd0ZnhWOGNMemxMbkJzRFZrbVByU1dhaUVucGpxMld0S2ZvRStHaVF2VTJnQkZqeXVNd0dDUWx5YnR6cWV5VWxBdExKcGxyNnNJTEoyZ0JnZEZ2SGI4TFFyQVJZaGllN2ZXUGFQOXRzN0Y2bzMrZjhReDYxMWpJaTRVVGZqdkV4ci9mS0ZoVDBrU3VpbHdEUWZFTkRMM3ZLS2FWZ0gyUU1BT3JlK1pxNnJTREZTUXh3YXNvMkZYM2FRMVdCRzRXL2FRPT0iIEZlY2hhPSIyMDI1LTA0LTIwVDA4OjU5OjUzIiBGb2xpbz0iRlVOSzY3MTIyOFBINi0xMCIgU2VyaWU9Ik1YTi1VU0QiIE1vbmVkYT0iWFhYIiBWZXJzaW9uPSI0LjAiIHhtbG5zOmNmZGk9Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9jZmQvNCI+PGNmZGk6RW1pc29yIFJmYz0iRlVOSzY3MTIyOFBINiIgTm9tYnJlPSJLQVJMQSBGVUVOVEUgTk9MQVNDTyIgUmVnaW1lbkZpc2NhbD0iNjIxIiAvPjxjZmRpOlJlY2VwdG9yIFJmYz0iRUtVOTAwMzE3M0M5IiBOb21icmU9IkVTQ1VFTEEgS0VNUEVSIFVSR0FURSIgRG9taWNpbGlvRmlzY2FsUmVjZXB0b3I9IjQyNTAxIiBSZWdpbWVuRmlzY2FsUmVjZXB0b3I9IjYwMSIgVXNvQ0ZEST0iQ1AwMSIgLz48Y2ZkaTpDb25jZXB0b3M+PGNmZGk6Q29uY2VwdG8gQ2xhdmVQcm9kU2Vydj0iODQxMTE1MDYiIENhbnRpZGFkPSIxIiBDbGF2ZVVuaWRhZD0iQUNUIiBEZXNjcmlwY2lvbj0iUGFnbyIgVmFsb3JVbml0YXJpbz0iMCIgSW1wb3J0ZT0iMCIgT2JqZXRvSW1wPSIwMSIgLz48L2NmZGk6Q29uY2VwdG9zPjxjZmRpOkNvbXBsZW1lbnRvPjxwYWdvMjA6UGFnb3MgVmVyc2lvbj0iMi4wIj48cGFnbzIwOlRvdGFsZXMgVG90YWxUcmFzbGFkb3NCYXNlSVZBMTY9IjIxNTUuMTciIFRvdGFsVHJhc2xhZG9zSW1wdWVzdG9JVkExNj0iMzQ0LjgzIiBNb250b1RvdGFsUGFnb3M9IjI1MDAuMDAiIC8+PHBhZ28yMDpQYWdvIEZlY2hhUGFnbz0iMjAyNC0wNi0wM1QyMDo0NDo1NiIgRm9ybWFEZVBhZ29QPSIyOCIgTW9uZWRhUD0iRVVSIiBUaXBvQ2FtYmlvUD0iMjUuMDAiIE1vbnRvPSIxMDAuMDAiIFJmY0VtaXNvckN0YU9yZD0iQlNNOTcwNTE5RFU4IiBDdGFPcmRlbmFudGU9IjEyMzQ1Njc4OTEwMTIxMzEiIFJmY0VtaXNvckN0YUJlbj0iQkJBODMwODMxTEoyIiBDdGFCZW5lZmljaWFyaW89IjEyMzQ1Njc4OTAiPjxwYWdvMjA6RG9jdG9SZWxhY2lvbmFkbyBJZERvY3VtZW50bz0iNGE1ZDAyNWItODEzYS00YWNmLTlmMzItOGZiNjFmNDkxOGFjIiBTZXJpZT0iRiIgRm9saW89IjIiIE1vbmVkYURSPSJVU0QiIEVxdWl2YWxlbmNpYURSPSIxLjE2MCIgTnVtUGFyY2lhbGlkYWQ9IjEiIEltcFNhbGRvQW50PSIxMTYuMDAiIEltcFBhZ2Fkbz0iMTE2LjAwIiBJbXBTYWxkb0luc29sdXRvPSIwIiBPYmpldG9JbXBEUj0iMDIiPjxwYWdvMjA6SW1wdWVzdG9zRFI+PHBhZ28yMDpUcmFzbGFkb3NEUj48cGFnbzIwOlRyYXNsYWRvRFIgQmFzZURSPSIxMDAiIEltcHVlc3RvRFI9IjAwMiIgVGlwb0ZhY3RvckRSPSJUYXNhIiBUYXNhT0N1b3RhRFI9IjAuMTYwMDAwIiBJbXBvcnRlRFI9IjE2IiAvPjwvcGFnbzIwOlRyYXNsYWRvc0RSPjwvcGFnbzIwOkltcHVlc3Rvc0RSPjwvcGFnbzIwOkRvY3RvUmVsYWNpb25hZG8+PHBhZ28yMDpJbXB1ZXN0b3NQPjxwYWdvMjA6VHJhc2xhZG9zUD48cGFnbzIwOlRyYXNsYWRvUCBCYXNlUD0iODYuMjA2ODk2IiBJbXB1ZXN0b1A9IjAwMiIgVGlwb0ZhY3RvclA9IlRhc2EiIFRhc2FPQ3VvdGFQPSIwLjE2MDAwMCIgSW1wb3J0ZVA9IjEzLjc5MzEwMyIgLz48L3BhZ28yMDpUcmFzbGFkb3NQPjwvcGFnbzIwOkltcHVlc3Rvc1A+PC9wYWdvMjA6UGFnbz48L3BhZ28yMDpQYWdvcz48dGZkOlRpbWJyZUZpc2NhbERpZ2l0YWwgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LnNhdC5nb2IubXgvVGltYnJlRmlzY2FsRGlnaXRhbCBodHRwOi8vd3d3LnNhdC5nb2IubXgvc2l0aW9faW50ZXJuZXQvY2ZkL1RpbWJyZUZpc2NhbERpZ2l0YWwvVGltYnJlRmlzY2FsRGlnaXRhbHYxMS54c2QiIFZlcnNpb249IjEuMSIgVVVJRD0iMWM3ZGU0N2QtOTIyNC00ZGMyLWExZmItNDEwOTUzN2JmOTEzIiBGZWNoYVRpbWJyYWRvPSIyMDI1LTA0LTIwVDA5OjA3OjA2IiBSZmNQcm92Q2VydGlmPSJTUFIxOTA2MTNJNTIiIFNlbGxvQ0ZEPSJZbXZ2NzRqQ2xNZG8zc3JvbEJJOUlXRVFYVmpub1VPdEN6aks1NDhDVWdtV3JFNWd5SVlNbCtoVmpyVEtCM2pQT1VSV24xaVJOVFI3QytYUG1EcVlrd2ZFMk1hN0UrcjlZU3RhNm9DeUNZbk5VT2tFeW5TRDNUY21Ya3lSN1o1WWx1RnVmT2dZL2dEV3V4Rkoyend0Z3RmeFY4Y0x6bExuQnNEVmttUHJTV2FpRW5wanEyV3RLZm9FK0dpUXZVMmdCRmp5dU13R0NRbHlidHpxZXlVbEF0TEpwbHI2c0lMSjJnQmdkRnZIYjhMUXJBUlloaWU3ZldQYVA5dHM3RjZvMytmOFF4NjExaklpNFVUZmp2RXhyL2ZLRmhUMGtTdWlsd0RRZkVOREwzdktLYVZnSDJRTUFPcmUrWnE2clNERlNReHdhc28yRlgzYVExV0JHNFcvYVE9PSIgTm9DZXJ0aWZpY2Fkb1NBVD0iMzAwMDEwMDAwMDA1MDAwMDM0NTYiIFNlbGxvU0FUPSJoK2pIcFJmM00zRHBHVVI1WmlENjArWHBZRm5YcVBXKzBvZlo4QTM3UG5vWFQ0YW5ndlZNQXBYRW82YzNxVEZua3FORnVPRFBFSFVFNDQ5Mm5EVWZabTY4MGNhYllRbFdFRng2WG8rZktDbEpMQnp5YWNNTlVySjlvSVRrcnAzRHBXSGU2V3lZTWdhZFVNV2dpZzFCTTR6dWJrMnp1Z2ZNL3dpS2tnVGlhb0dYZ2Y0ckRjbWltMFFKekxpSDhCTy9hV2JwaFovQzdQQlBwaXFLL0NZejVtN1FacXhTYjlyNU1qeE5RdC9FMDZBRUd4N08zQjcwdk9RZTNBcStzRXY3cjV4UWx5MlhsWDd3UXRrejNNRDNYR3dJRmkxcmNUMWhaZENJYjRVSWtMVlhFSWhhK0Yxam9yK0YxaXpGcFFJMk5vUktjOFlKMEJHbk8xSFVBODhSN1E9PSIgeG1sbnM6dGZkPSJodHRwOi8vd3d3LnNhdC5nb2IubXgvVGltYnJlRmlzY2FsRGlnaXRhbCIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgLz48L2NmZGk6Q29tcGxlbWVudG8+PC9jZmRpOkNvbXByb2JhbnRlPg==",
        "fileName": "FUNK671228PH6-10.xml",
        "fileExtension": ".xml"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices/pdf

Generar pdf por ID

Este endpoint permite generar el pdf una factura por id en el modo de operación por valores.
Lea cómo crear una regla de reporte para personalizar el PDF.

Modelo

  • Name
    invoiceId
    Type
    string
    required
    Description

    ID de la factura a generar el PDF. Corresponde al id asignado por Fiscalapi al generar la factura.

  • Name
    bandColor
    Type
    string?
    Description

    El código color hexadecimal que se aplicará a la bandas del reporte de facturas.

  • Name
    fontColor
    Type
    string?
    Description

    El código color hexadecimal que se aplicará al color de texto de en las bandas del reporte de facturas.

  • Name
    base64Logo
    Type
    string?
    Description

    El logo de la empresa en formato base64.

Request

POST
/api/v4/invoices/pdf
curl --location 'https://test.fiscalapi.com/api/v4/invoices/pdf' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data '{
  "invoiceId": "f210a271-71be-47b5-9744-666e498d9e1b"
}'

Response

{
    "data": {
        "base64File": "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v9j/0u5l73TY9P1XGa9mXpe8UX9z4C3rbf+7mHcTM7nvse8rP5h+6PkY9PHup4xPn34D94Tz+w0KZW5kc3RyZWFtDQplbmRvYmoNCjEwIDAgb2JqDQo8PC9UeXBlIC9DYXRhbG9nIC9QYWdlcyAyIDAgUiAvTWV0YWRhdGEgMTEgMCBSIC9PdXRwdXRJbnRlbnRzIFs8PC9UeXBlIC9PdXRwdXRJbnRlbnQgL1MgL0dUUyM1RlBERkExIC9PdXRwdXRDb25kaXRpb25JZGVudGlmaWVyIDxGRUZGMDA3MzAwNTIwMDQ3MDA0MjAwMjAwMDQ5MDA0NTAwNDMwMDM2MDAzMTAwMzkwMDM2MDAzNjAwMkQwMDMyMDAyRTAwMzE+IC9EZXN0T3V0cHV0UHJvZmlsZSAxMiAwIFIgPj4NCl0gL05hbWVzIDw8Pj4NCiA+Pg0KDQplbmRvYmoNCjExIDAgb2JqDQo8PC9UeXBlIC9NZXRhZGF0YSAvU3VidHlwZSAvWE1MIC9MZW5ndGggMTAzMiA+Pg0Kc3RyZWFtDQo8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iPjxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+PHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiIHhtbG5zOnBkZj0iaHR0cDovL25zLmFkb2JlLmNvbS9wZGYvMS4zLyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj48ZGM6Y3JlYXRvcj48cmRmOlNlcT48cmRmOmxpPjwvcmRmOmxpPjwvcmRmOlNlcT48L2RjOmNyZWF0b3I+PHBkZjpLZXl3b3Jkcz48L3BkZjpLZXl3b3Jkcz48ZGM6c3ViamVjdD48cmRmOkJhZz48cmRmOmxp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byAxOCAwIFIgL0RXIDEwMDAgL1cgWzMgWzI3My45MjU4XSA3IFs1MzkuMDYyNV0gMTIgWzY4NC4wODJdIDE0IFszOTkuOTAyMyAyMTYuNzk2OSAzODkuNjQ4NCA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSA1MzkuMDYyNSAyMTYuNzk2OV0gMzAgWzY4NC4wODJdIDM0IFs2NDUuMDE5NSA1NzMuMjQyMiA2MTkuMTQwNiA3MDEuMTcxOSA1MDUuODU5NCA0ODguMjgxMyA2ODYuMDM1MiA3MDkuOTYwOSAyNjYuMTEzMyAzNTYuOTMzNiA1ODAuMDc4MSA0NzAuNzAzMSA4OTcuOTQ5MiA3NDguMDQ2OSA3NTMuOTA2MyA1NjAuMDU4NiA3NTMuOTA2MyA1OTguMTQ0NSA1MzEuMjUgNTIzLjkyNTggNjg3LjAxMTcgNjIxLjA5MzggOTM0LjA4MiA1ODkuODQzOCA1NTIuNzM0NCA1NzAuMzEyNV0gNjYgWzUwOC43ODkxIDU4Ny44OTA2IDQ2MS45MTQxIDU4OC44NjcyIDUyMi45NDkyIDMxMi45ODgzIDU4OC44NjcyIDU2NS45MTggMjQyLjE4NzUgMjQyLjE4NzUgNDk3LjA3MDMgMjQyLjE4NzUgODYxLjMyODEgNTY1LjkxOCA1ODUuOTM3NSA1ODcuODkwNiA1ODguODY3MiAzNDcuNjU2MyA0MjQuMzE2NCAzMzguODY3MiA1NjUuOTE4IDQ3OS4wMDM5IDcyMi42NTYzIDQ1OC45ODQ0IDQ4My44ODY3IDQ1Mi4xNDg0XSAxMzcgWzUwNS44NTk0XSAxNDcgWzc1My45MDYzXV0gL0NJRFRvR0lETWFwIC9JZGVudGl0eSA+Pg0KDQplbmRvYmoNCjMgMCBvYmoNCjw8L1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1R5cGUwIC9CYXNlRm9udCAvREVWRVhQIzJCU2Vnb2VVSSAvRW5jb2RpbmcgL0lkZW50aXR5IzJESCAvVG9Vbmljb2RlIDE2IDAgUiAvRGVzY2VuZGFudEZvbnRzIFsxOSAwIFJdID4+DQoNCmVuZG9iag0KMjAgMCBv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9eFHIiIiZkQcjDRGzohsjjyjj9JP0DfqPzOI/+NP8v/zJ/86n5L/mw/LXu+g6UhA+VCPCFqNGtGjkOYq0AfsXxaVtqND5ZWQXNd6ZKz+W+e5PqRxu0LQqrurSvOQBqWxc/1askg7VVuuLdDaNfGCRhu4vB4tF+eKE8SRolNI4tjlCPewEGl//P64/VH7I/eHujT7YZYQuGGGG8h11Yfd4FCRLxGvHl0pu1ZX+rjaIl8yPdujfQhh3rW6pqKSsnjgz6VfRxZrp2srtC6tQ2MVNGFp7bhrhcyv8RFUtEOohbJCk/N/A6TnctwNCmVuZHN0cmVhbQ0KZW5kb2JqDQoxNyAwIG9iag0KPDwvVHlwZSAvRm9udERlc2NyaXB0b3IgL0ZvbnROYW1lIC9ERVZFWFAjMkJTZWdvZVVJIC9GbGFncyAzMiAvSXRhbGljQW5nbGUgMCAvRm9udEJCb3ggWy05NyAtMjM1IDkyMiA5MjddIC9Bc2NlbnQgMTA3OSAvRGVzY2VudCAtMjUxIC9DYXBIZWlnaHQgNTAwIC9TdGVtViAwIC9DSURTZXQgMzIgMCBSIC9Gb250RmlsZTIgMzMgMCBSID4+DQoNCmVuZG9iag0KeHJlZg0KMCAzNA0KMDAwMDAwMDAwMCAwMDAwMCBmDQowMDAwMDYxNTEwIDAwMDAwIG4NCjAwMDAwNTgxNjkgMDAwMDAgbg0KMDAwMDA2Mzc0NSAwMDAwMCBuDQowMDAwMDAwMDE3IDAwMDAwIG4NCjAwMDAwMjg5MjEgMDAwMDAgbg0KMDAwMDA2NTAzMyAwMDAwMCBuDQowMDAwMDQxNDg2IDAwMDAwIG4NCjAwMDAwNjU2NzkgMDAwMDAgbg0KMDAwMDA2MTg3MiAwMDAwMCBuDQowMDAwMDU2Nzc2IDAwMDAwIG4NCjAwMDAwNTcwNDkgMDAwMDAgbg0KMDAwMDA1NDA3NCAwMDAwMCBuDQowMDAwMDYxODAwIDAwMDAwIG4NCjAwMDAwNjE2NDMgMDAwMDAgbg0KMDAwMDA1ODI0OCAwMDAwMCBuDQowMDAwMDYyMjczIDAwMDAwIG4NCjAwMDAwOTM4NTQgMDAwMDAgbg0KMDAwMDA4NDc5MCAwMDAwMCBuDQowMDAwMDYyODg5IDAwMDAwIG4NCjAwMDAwNjM4OTQgMDAwMDAgbg0KMDAwMDA4NDU1MyAwMDAwMCBuDQowMDAwMDc3NTg0IDAwMDAwIG4NCjAwMDAwNjQzODkgMDAwMDAgbg0KMDAwMDA2NTE4OSAwMDAwMCBuDQowMDAwMDc3MzY0IDAwMDAwIG4NCjAwMDAwNjU4MzEgMDAwMDAgbg0KMDAwMDA2NTQ4OSAwMDAwMCBuDQowMDAwMDY1OTIzIDAwMDAwIG4NCjAwMDAwNjYwMTcgMDAwMDAgbg0KMDAwMDA3NzY3NiAwMDAwMCBuDQowMDAwMDc3NzY2IDAwMDAwIG4NCjAwMDAwODQ4ODIgMDAwMDAgbg0KMDAwMDA4NDk3MiAwMDAwMCBuDQp0cmFpbGVyDQo8PC9TaXplIDM0IC9JbmZvIDkgMCBSIC9JRCBbPEY0MjY2MkNCNkI3QUVFNDZCMDM3OUE0NDVBQzNGMzM4PiA8RjQyNjYyQ0I2QjdBRUU0NkIwMzc5QTQ0NUFDM0YzMzg+XSAvUm9vdCAxMCAwIFIgPj4NCg0Kc3RhcnR4cmVmDQo5NDA2OA0KJSVFT0YNCg==",
        "fileName": "FUNK671228PH6-10.pdf",
        "fileExtension": ".pdf"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices/send

Enviar factura por correo

Este endpoint permite enviar una factura (xml y pdf) vía correo electrónico en el modo de operación por referencias.
Lea cómo crear una regla de reporte para personalizar el PDF.

Modelo

  • Name
    invoiceId
    Type
    string
    required
    Description

    ID de la factura a enviar por correo. Corresponde al id asignado por Fiscalapi al generar la factura.

  • Name
    toEmail
    Type
    string
    required
    Description

    Correo electrónico al que se enviará la factura.

  • Name
    bandColor
    Type
    string?
    Description

    El código color hexadecimal que se aplicará a la bandas del reporte de facturas.

  • Name
    fontColor
    Type
    string?
    Description

    El código color hexadecimal que se aplicará al color de texto de en las bandas del reporte de facturas.

  • Name
    base64Logo
    Type
    string?
    Description

    El logo de la empresa en formato base64.

Request

POST
/api/v4/invoices/send
curl --location 'https://test.fiscalapi.com/api/v4/invoices/send' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data-raw '{
  "invoiceId": "f210a271-71be-47b5-9744-666e498d9e1b",
  "toEmail": "mail@domain.com"
}'

Response

{
    "data": true,
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

DELETE/api/v4/invoices

Cancelar factura

Este endpoint permite cancelar una factura en el modo de operación por valores.

Modelo

  • Name
    invoiceUuid
    Type
    string
    required
    Description

    UUID de la factura a cancelar. Corresponde al folio fiscal UUID de la factura, no al ID de la factura.

  • Name
    tin
    Type
    string
    required
    Description

    RFC del emisor de la factura. (Tax Identification Number)

  • Name
    cancellationReasonCode
    Type
    string enum
    required
    Description

    Código del motivo de cancelación. Catálogo del SAT c_MotivoCancelacion.
    Lea más sobre cómo elegir el motivo de cancelación.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    replacementUuid
    Type
    string?
    conditional required
    Description

    UUID de la nueva factura que reemplaza la factura que será cancelada.
    Requerido cuando cancellationReasonCode es 01

  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)
    required

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Debe ser el contenido del archivo .cer o .key codificado en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    01
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key Debe ser la misma en ambos objetos. (.cer y .key)

Request

DELETE
/api/v4/invoices
curl --location --request DELETE 'https://test.fiscalapi.com/api/v4/invoices' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data '{
  "invoiceUuid": "1c7de47d-9224-4dc2-a1fb-4109537bf913",
  "tin": "FUNK671228PH6",
  "cancellationReasonCode": "01",
  "replacementUuid": "de841944-bd4f-4bb8-adfe-2a2282787c62",
  "taxCredentials": [
      {
        "base64File": "archivo_cer_base64...",
        "fileType": 0,
        "password": "12345678a"
      },
      {
        "base64File": "archivo_key_base64...",
        "fileType": 1,
        "password": "12345678a"
      }
    ]
}'

Response

{
    "data": {
        "base64CancellationAcknowledgement": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48QWN1c2UgeG1sbnM6eHNkPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgRmVjaGE9IjIwMjUtMDUtMTFUMjA6Mzc6MDIuMTcwNDkzMSIgUmZjRW1pc29yPSJGVU5LNjcxMjI4UEg2Ij48Rm9saW9zIHhtbG5zPSJodHRwOi8vY2FuY2VsYWNmZC5zYXQuZ29iLm14Ij48VVVJRD4yMTNGNzMxOS04QkVCLTRCNzQtOTg3QS03QTA1RkNFMDU1RDI8L1VVSUQ+PEVzdGF0dXNVVUlEPjIwMTwvRXN0YXR1c1VVSUQ+PC9Gb2xpb3M+PFNpZ25hdHVyZSB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wOS94bWxkc2lnIyI+PFNpZ25lZEluZm8+PENhbm9uaWNhbGl6YXRpb25NZXRob2QgQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9yZy9UUi8yMDAxL1JFQy14bWwtYzE0bi0yMDAxMDMxNSIgLz48U2lnbmF0dXJlTWV0aG9kIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wOS94bWxkc2lnI3JzYS1zaGExIiAvPjxSZWZlcmVuY2UgVVJJPSIiPjxUcmFuc2Zvcm1zPjxUcmFuc2Zvcm0gQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwLzA5L3htbGRzaWcjZW52ZWxvcGVkLXNpZ25hdHVyZSIgLz48L1RyYW5zZm9ybXM+PERpZ2VzdE1ldGhvZCBBbGdvcml0aG09Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyNzaGExIiAvPjxEaWdlc3RWYWx1ZT40N2syNFQ0T2ZLTHMydWxqdkd4ZlZVQVpVMGc9PC9EaWdlc3RWYWx1ZT48L1JlZmVyZW5jZT48L1NpZ25lZEluZm8+PFNpZ25hdHVyZVZhbHVlPkI0OUhSTHJoWitSV2FUWGxCZ2pDU1BmOCtxdHFuZkdYN3JDajkrdFBCN0JmRGpKZWd3Uld3dHpPUmZRbHgrdUR0NG9YTWM0aVlpZVNvTE9aYkJxSUkvU2RrTEdRWHFYekNJdHBxT29oZm9veXlqTVVPYzA1dlpVYUlGck40TEo1VjdoaWJhN3cwNTJqSEVmaVUzZVVySUNxRkZNanJXcmkxVVB6Q1dHcHlLeSs4T0FDMTZMeU1kaEZKRzJZc1Y2M1FSYjBzcDVPakRhbmVmaGpUb1pjL2V2elppN2dMWVlCUWMrSlc1SmtjUzNHTDNmNEQvWXhRZmNkUDNJN255bEpFTlRrcVgzQktoYlE2UUZ2a2x2VnQxUzBmR2hJMUhRN0xTTmZ1OW9vcDNGV0hSdnpsdVJ0Sk1zc21CMy82S0F3SzA3aXdjNk9YTXIvbFlOVDZTdk5lUT09PC9TaWduYXR1cmVWYWx1ZT48S2V5SW5mbz48WDUwOURhdGE+PFg1MDlJc3N1ZXJTZXJpYWw+PFg1MDlJc3N1ZXJOYW1lPk9JRC4xLjIuODQwLjExMzU0OS4xLjkuMj1yZXNwb25zYWJsZTogQUNETUEtU0FULCBPSUQuMi41LjQuNDU9Mi41LjQuNDUsIEw9Q09ZT0FDQU4sIFM9Q0lVREFEIERFIE1FWElDTywgQz1NWCwgUG9zdGFsQ29kZT0wNjM3MCwgU1RSRUVUPTNyYSBjZXJyYWRhIGRlIGNhbGl6LCBFPW9zY2FyLm1hcnRpbmV6QHNhdC5nb2IubXgsIE9VPVNBVC1JRVMgQXV0aG9yaXR5LCBPPVNFUlZJQ0lPIERFIEFETUlOSVNUUkFDSU9OIFRSSUJVVEFSSUEsIENOPUFDIFVBVDwvWDUwOUlzc3Vlck5hbWU+PFg1MDlTZXJpYWxOdW1iZXI+MzMzMDMwMzAzMTMwMzAzMDMwMzAzMDM1MzAzMDMwMzAzMzM0MzQzNjwvWDUwOVNlcmlhbE51bWJlcj48L1g1MDlJc3N1ZXJTZXJpYWw+PFg1MDlDZXJ0aWZpY2F0ZT5NSUlGZ0RDQ0EyaWdBd0lCQWdJVU16QXdNREV3TURBd01EQTFNREF3TURNME5EWXdEUVlKS29aSWh2Y05BUUVMQlFBd2dnRXJNUTh3RFFZRFZRUUREQVpCUXlCVlFWUXhMakFzQmdOVkJBb01KVk5GVWxaSlEwbFBJRVJGSUVGRVRVbE9TVk5VVWtGRFNVOU9JRlJTU1VKVlZFRlNTVUV4R2pBWUJnTlZCQXNNRVZOQlZDMUpSVk1nUVhWMGFHOXlhWFI1TVNnd0pnWUpLb1pJaHZjTkFRa0JGaGx2YzJOaGNpNXRZWEowYVc1bGVrQnpZWFF1WjI5aUxtMTRNUjB3R3dZRFZRUUpEQlF6Y21FZ1kyVnljbUZrWVNCa1pTQmpZV3hwZWpFT01Bd0dBMVVFRVF3Rk1EWXpOekF4Q3pBSkJnTlZCQVlUQWsxWU1Sa3dGd1lEVlFRSURCQkRTVlZFUVVRZ1JFVWdUVVZZU1VOUE1SRXdEd1lEVlFRSERBaERUMWxQUVVOQlRqRVJNQThHQTFVRUxSTUlNaTQxTGpRdU5EVXhKVEFqQmdrcWhraUc5dzBCQ1FJVEZuSmxjM0J2Ym5OaFlteGxPaUJCUTBSTlFTMVRRVlF3SGhjTk1qTXdOVEU0TVRRek5UTTNXaGNOTWpjd05URTRNVFF6TlRNM1dqQ0JwekVkTUJzR0ExVUVBeE1VUzBGU1RFRWdSbFZGVGxSRklFNVBURUZUUTA4eEhUQWJCZ05WQkNrVEZFdEJVa3hCSUVaVlJVNVVSU0JPVDB4QlUwTlBNUjB3R3dZRFZRUUtFeFJMUVZKTVFTQkdWVVZPVkVVZ1RrOU1RVk5EVHpFV01CUUdBMVVFTFJNTlJsVk9TelkzTVRJeU9GQklOakViTUJrR0ExVUVCUk1TUmxWT1N6WTNNVEl5T0UxRFRFNU1VakExTVJNd0VRWURWUVFMRXdwVGRXTjFjbk5oYkNBeE1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBaE5YYlRTcUdYNisvM1VycGVteXk1dlZHMklkUDJ2N3YwMDErYzRCb014RURGRFEzMmNPRmREaVJ4eTBGcTlhUitPanJvZnE4VmVmdHZONTg2aXlBMUE2YTBRbkE2OGk3Sm5RS0k0dUp5K3UwcWlpeHVIdTZ1M2IzQmhTcG9hVkhjVXRxRldMTGx6cjB5QnhmVkxPcVZuYS8xL3RIYlFKZzloeDU3bXA5N1AwSm1YTzFXZUlxaStacW9iL21WWmgybHNQR2RKOGlxZ2pZRmFGbjlRVk9RMVBxNzRvMVBUcXdmenFnSlNmVjB6T09sRVNEUFdnZ2FEQVlFNFZOeVRCaXNPVWpsTmQweDdwcGNUeFNpM3llbnJKSHFrcS9wcUpzUkxLZjZWSi9zOXA2YnNkMmJqMDdoU0RwamxEQzJsQjI1ZUVma0VrZU1rWG9FN0VyWFE1UUN3SURBUUFCb3gwd0d6QU1CZ05WSFJNQkFmOEVBakFBTUFzR0ExVWREd1FFQXdJR3dEQU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FnRUFId1lwZ2JDbEhVTFhZaEs0R05UZ29udlhoODFvcWZYd0NTV0F5RFBpVFlGRFdWZldNOUM0QXB4TUx5YzBYdkp0ZTc1UmxhK2JQQzA4b1lOM09saGJidlAzdHdCTC93OVNzZnh2a2JwRm4yWmZHU1RYWmh5aXE0dmptUUhXMXBuRnZHZWx3Z1U0djNlZVJFL01qb0NuRTdNL1E1dGhwdW9nNldHZjdDYktFUm5XWm44UXNVYUpzWlNFa2c2QnYyam02OXllNTdhYjVyck9VYWVNbHN0VGZkbGFIQUVrVWdMWC9OWHE3UmJHd3Y4MmhrSFk1YjJ2WWNYZWgzNHRVTUJMNm9zM09kUmxvb045WlFHa1ZJSVN2eFZacFNIa1lDMjBERk5oMUJiMG92amZ1amxUY2thODFHbmJVaEZHWnRSdW9WUTFSVnBNTzh4dHgzWUtCTHA0ZG8zaFBtblJDVjVoQ200M09Jall4OU92MmRxSUNWM0FhTlhTTFYxZFczOUJhay9SQmlJREdIek9JVzIrVk1QanZ2eXBCam1Qdi90bWJxTkhXUFNBV094VHlNeDZFMWdGQ1p2aSs1RitCZ2tkQzNMbTdVMEJVME5mdnNYYWpaZDhzWG5JbGx2RU1yaWtDTG9JL3l1cnZleE5EY0YxUlcvRmhNc291YTBlZXJ3Y3pjTm02NnBHakhtMDVwOURSNmxGZUpacnRxZXFadW9qZHhCV3k0dkg2Z2h5SmF1cGVyZ29YK25tZEczSlllUnR0Q0ZGL0lUSTY4VGVDRVM1VjNZMEMzcHNZQWcxWHhjR1JMR2Q0Y2hQby80eHdpTGtpald0Z3QwL3RvNWxqR0J3Zks3cjYyUEhaZkwxRHAraTdWM3c3aG1PbGhiWHpQK3poTVpuMUdDazdLWT08L1g1MDlDZXJ0aWZpY2F0ZT48L1g1MDlEYXRhPjwvS2V5SW5mbz48L1NpZ25hdHVyZT48L0FjdXNlPg==",
        "invoiceUuids": {
            "213F7319-8BEB-4B74-987A-7A05FCE055D2": "201"
        }
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices/status

Consultar estado de factura

Este endpoint permite consultar el estado de una factura en el modo de operación por valores.

Modelo

  • Name
    issuerTin
    Type
    string
    required
    Description

    RFC Emisor la factura.

  • Name
    recipientTin
    Type
    string
    required
    Description

    RFC Receptor de la factura.

  • Name
    invoiceTotal
    Type
    number | decimal
    required
    Description

    Total de la factura.

  • Name
    invoiceUuid
    Type
    string
    required
    Description

    Folio fiscal factura a consultar.

  • Name
    last8DigitsIssuerSignature
    Type
    string
    required
    Description

    Últimos ocho caracteres del sello digital del la factura a consultar.

Request

POST
/api/v4/invoices/status
curl --location 'https://test.fiscalapi.com/api/v4/invoices/status' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data '{
  "issuerTin": "<POPJ450924HD6>",
  "recipientTin": "MEJJ940824C61",
  "invoiceTotal": 430.00,
  "invoiceUuid": "8e0fdc23-e148-4cf5-b3ce-4459f31c9c45",
  "last8DigitsIssuerSignature": "oxPKRg=="
}'

Response

{
    "data": {
        "statusCode": "S - Comprobante obtenido satisfactoriamente.",
        "status": "Vigente",
        "cancelableStatus": "Cancelable sin aceptación",
        "cancellationStatus": "",
        "efosValidation": "200"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices

Crear factura ingreso

Este endpoint permite crear una factura de ingreso en el modo de operación por valores. La factura de ingreso es la factura más común y también es conocida simplemente como factura.

Modelo

  • Name
    versionCode
    Type
    string
    required
    Description

    Código de la versión de la facturación electrónica en México.

    Default:
    4.0
  • Name
    series
    Type
    string
    required
    Description

    Número de serie que utiliza el contribuyente para control interno de su información. Acepta de uno a 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Fecha y hora de expedición de la factura fiscal. Se expresa en el formato AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local del lugar donde se expide la factura.

  • Name
    paymentFormCode
    Type
    string
    required
    Description

    Código de la forma de pago para la factura. Catálogo del SAT c_FormaPago.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada para expresar los montos. Cuando se usa moneda nacional debe ser MXN. Catálogo del SAT c_Moneda.

    Default:
    MXN
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    typeCode
    Type
    string
    required
    Description

    Código del tipo de factura. Catálogo del SAT c_TipoDeComprobante.

    Type
    enum:
    Values
    I
  • Name
    expeditionZipCode
    Type
    string
    required
    Description

    Código postal del emisor. Debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    exportCode
    Type
    string
    required
    Description

    Código que identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion.

    Default:
    "01"
    Type
    enum:
    Values
    "01""02""03"
  • Name
    paymentMethodCode
    Type
    string
    required
    Description

    Código del método de pago de la factura. Catálogo del SAT c_MetodoPago.

    Type
    enum:
    Values
    "PUE""PPD"
  • Name
    exchangeRate
    Type
    number | decimal
    required
    Description

    Tipo de cambio FIX conforme a la moneda registrada en la factura. Si la moneda es MXN, el tipo de cambio debe ser 1.

    Default:
    1
  • Name
    paymentConditions
    Type
    string?
    Description

    Condiciones comerciales aplicables para el pago de la factura fiscal. Máximo 1000 caracteres.

  • Name
    issuer
    Type
    object (InvoiceIssuer)
    required

    El emisor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del emisor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA. Si el emisor es persona física, debe enviar el nombre completo tal como aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del emisor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)
    required

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Lea cómo codificar los sellos en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    01
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key.
    Debe ser la misma en ambos objetos (.cer y .key).

  • Name
    recipient
    Type
    object (InvoiceRecipient)
    required

    Receptor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del receptor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del receptor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA. Si el receptor es persona física, debe enviar el nombre completo tal como aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del receptor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    cfdiUseCode
    Type
    string
    required
    Description

    Código del uso del CFDI. Catálogo del SAT c_UsoCFDI.

    Type
    enum:
    Values
    "G01""G02""G03"
  • Name
    zipCode
    Type
    string
    required
    Description

    Código postal del receptor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    email
    Type
    string
    required
    Description

    Correo electrónico del receptor. Para enviar la factura desde el dashboard.

  • Name
    items
    Type
    array of objects (InvoiceItem)
    required

    Conceptos de la factura (productos o servicios)

  • Name
    itemCode
    Type
    string
    required
    Description

    Código del producto o servicio del catálogo c_ClaveProdServ.

    Type
    enum:
    Values
    "01010101""01010108""01010109"
  • Name
    quantity
    Type
    number | decimal
    required
    Description

    Cantidad del producto o servicio.

  • Name
    discount
    Type
    number | decimal?
    Description

    Cantidad monetaria del descuento aplicado al producto o servicio.

  • Name
    unitOfMeasurementCode
    Type
    string
    required
    Description

    Código de la unidad de medida del producto o servicio. Catálogo c_ClaveUnidad.

    Type
    enum:
    Values
    "H87""E48""EA"
  • Name
    description
    Type
    string
    required
    Description

    Descripción del producto o servicio.

  • Name
    unitPrice
    Type
    number | decimal
    required
    Description

    Precio unitario del producto o servicio. (Sin impuestos)

  • Name
    taxObjectCode
    Type
    string
    required
    Description

    Código de obligaciones de impuesto aplicables al producto o servicio. Catálogo c_ObjetoImp.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    itemSku
    Type
    string
    required
    Description

    SKU o código interno que identifica al producto o servicio.

  • Name
    itemTaxes
    Type
    array of objects (ItemTax)?
    conditional required

    Impuestos aplicables al producto o servicio.
    Depende de obligaciones de impuesto taxObjectCode del item.

  • Name
    taxCode
    Type
    string
    required
    Description

    Código del impuesto. Catálogo del SAT c_Impuesto.

    Type
    enum:
    Values
    "001""002""003"
  • Name
    taxTypeCode
    Type
    string
    required
    Description

    Tipo de factor. Catálogo del SAT c_TipoFactor.

    Type
    enum:
    Values
    "Tasa""Cuota""Exento"
  • Name
    taxRate
    Type
    number | decimal
    required
    Description

    Tasa del impuesto. Catálogo del SAT c_TasaOCuota.
    Ejemplo: 0.160000 para un 16% de impuesto.

  • Name
    taxFlagCode
    Type
    string
    required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    "T""R"
  • Name
    metadata
    Type
    dictionary<string, string>?

    Metadatos - Información adicional interna asociada a la factura.

  • Name
    key
    Type
    string
    required
    Description

    Clave del metadato. Ejemplo: numero_orden.

  • Name
    value
    Type
    string
    required
    Description

    Valor del metadato. Ejemplo: ORD-12345.

Request

POST
/api/v4/invoices
curl --location 'https://test.fiscalapi.com/api/v4/invoices' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data-raw '{
  "versionCode": "4.0",
  "series": "F",
  "date": "2025-05-21T16:46:42",
  "paymentFormCode": "01",
  "paymentMethodCode": "PUE",
  "currencyCode": "MXN",
  "typeCode": "I",
  "expeditionZipCode": "42501",
  "exchangeRate": 1,
  "exportCode": "01",
  "issuer": {
    "tin": "FUNK671228PH6",
    "legalName": "KARLA FUENTE NOLASCO",
    "taxRegimeCode": "621",
    "taxCredentials": [
      {
        "base64File": "<archivo_cer_en_base64...>",
        "fileType": 0,
        "password": "12345678a"
      },
      {
        "base64File": "<archivo_key_en_base64...>",
        "fileType": 1,
        "password": "12345678a"
      }
    ]
  },
  "recipient": {
    "tin": "EKU9003173C9",
    "legalName": "ESCUELA KEMPER URGATE",
    "zipCode": "42501",
    "taxRegimeCode": "601",
    "cfdiUseCode": "G01",
    "email": "someone@somewhere.com"
  },
  "items": [
    {
      "itemCode": "01010101",
      "quantity": 1,
      "unitOfMeasurementCode": "E48",
      "unitOfMeasurement": "Unidad de servicio",
      "description": "Invoicing software as a service",
      "unitPrice": 100,
      "taxObjectCode": "02",
      "itemSku": "7506022301697",
      "discount": 0,
      "itemTaxes": [
        {
          "taxCode": "002",
          "taxTypeCode": "Tasa",
          "taxRate": 0.160000,
          "TaxFlagCode": "T"
        }
      ]
    }
  ]
}'

Response

{
    "data": {
        "versionCode": "4.0",
        "series": "F",
        "number": "FUNK671228PH6-85",
        "date": "2025-05-21T10:46:42.0000000",
        "paymentFormCode": "01",
        "paymentConditions": null,
        "subtotal": 100,
        "discount": 0,
        "currencyCode": "MXN",
        "exchangeRate": 1,
        "total": 116.00,
        "typeCode": "I",
        "exportCode": "01",
        "uuid": "83a6b4d8-c12b-4956-8a34-b56e0fd49a3d",
        "consecutive": 117,
        "status": null,
        "paymentMethodCode": "PUE",
        "expeditionZipCode": "42501",
        "issuer": {
            "id": null,
            "tin": "FUNK671228PH6",
            "legalName": "KARLA FUENTE NOLASCO",
            "taxRegimeCode": "621"
        },
        "recipient": {
            "id": null,
            "tin": "EKU9003173C9",
            "legalName": "ESCUELA KEMPER URGATE",
            "zipCode": "42501",
            "taxRegimeCode": "601",
            "cfdiUseCode": "G01",
            "email": "someone@somewhere.com"
        },
        "items": [
            {
                "itemCode": "01010101",
                "quantity": 1,
                "unitOfMeasurementCode": "E48",
                "description": "Invoicing software as a service",
                "unitPrice": 100,
                "taxObjectCode": "02",
                "itemSku": "7506022301697",
                "unitOfMeasurement": "Unidad de servicio",
                "discount": 0,
                "itemTaxes": [
                    {
                        "taxCode": "002",
                        "taxTypeCode": "Tasa",
                        "taxRate": 0.160000,
                        "taxFlagCode": "T"
                    }
                ]
            }
        ],
        "responses": [
            {
                "invoiceId": "a4289fe4-2237-4435-b430-9dfefb5b9f45",
                "invoiceUuid": "83a6b4d8-c12b-4956-8a34-b56e0fd49a3d",
                "invoiceCertificateNumber": "30001000000500003446",
                "invoiceBase64Sello": "sello_cfdi_en_base64...",
                "invoiceSignatureDate": "2025-01-07T09:30:48.0000000",
                "invoiceBase64QrCode": "qr_code_image_en_base64...",
                "invoiceBase64": "xml_en_base64...",
                "satBase64Sello": "sello_sat_en_base64...",
                "satBase64OriginalString": "cadena_original_en_base64...",
                "satCertificateNumber": "30001000000500003456",
                "id": "f8380874-e1d1-4b6d-8415-e12987a4403a",
                "createdAt": "2025-05-21T16:42:16.7346618",
                "updatedAt": "2025-05-21T16:42:16.7346618"
            }
        ],
        "metadata": {
          "mode": "values"
        },
        "id": "a4289fe4-2237-4435-b430-9dfefb5b9f45",
        "createdAt": "2025-05-21T16:42:16.7346551",
        "updatedAt": "2025-05-21T16:42:16.7346559"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices

Crear nota de crédito

Este endpoint permite crear una factura de egreso en el modo de operación por valores. La factura de egreso también es conocida como nota de crédito.
Cambios respecto a la factura de ingreso: typeCode y relatedInvoices.

Modelo

  • Name
    versionCode
    Type
    string
    required
    Description

    Código de la versión de la facturación electrónica en México.

    Default:
    4.0
  • Name
    series
    Type
    string
    required
    Description

    Número de serie que utiliza el contribuyente para control interno de su información. Acepta de uno a 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Fecha y hora de expedición de la factura fiscal. Se expresa en el formato AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local del lugar donde se expide la factura.

  • Name
    paymentFormCode
    Type
    string
    required
    Description

    Código de la forma de pago para la factura. Catálogo del SAT c_FormaPago.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada para expresar los montos. Cuando se usa moneda nacional debe ser MXN. Catálogo del SAT c_Moneda.

    Default:
    MXN
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    typeCode
    Type
    string
    required
    Description

    Código del tipo de factura. Catálogo del SAT c_TipoDeComprobante.

    Type
    enum:
    Values
    E
  • Name
    expeditionZipCode
    Type
    string
    required
    Description

    Código postal del emisor. Debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    exportCode
    Type
    string
    required
    Description

    Código que identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion.

    Default:
    "01"
    Type
    enum:
    Values
    "01""02""03"
  • Name
    paymentMethodCode
    Type
    string
    required
    Description

    Código del método de pago de la factura. Catálogo del SAT c_MetodoPago.

    Type
    enum:
    Values
    "PUE""PPD"
  • Name
    exchangeRate
    Type
    number | decimal
    required
    Description

    Tipo de cambio FIX conforme a la moneda registrada en la factura. Si la moneda es MXN, el tipo de cambio debe ser 1.

    Default:
    1
  • Name
    paymentConditions
    Type
    string?
    Description

    Condiciones comerciales aplicables para el pago de la factura fiscal. Máximo 1000 caracteres.

  • Name
    relatedInvoices
    Type
    array of objects (RelatedInvoice)
    required

    Facturas relacionadas. (La factura original)

  • Name
    relationshipTypeCode
    Type
    string
    required
    Description

    Código de la relación. Catálogo del SAT c_TipoRelacion.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    uuid
    Type
    string
    required
    Description

    UUID de la factura relacionada. (uuid, no id)

  • Name
    issuer
    Type
    object (InvoiceIssuer)
    required

    El emisor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del emisor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA. Si el emisor es persona física, debe enviar el nombre completo tal como aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del emisor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)
    required

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Lea cómo codificar los sellos en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    01
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key.
    Debe ser la misma en ambos objetos (.cer y .key).

  • Name
    recipient
    Type
    object (InvoiceRecipient)
    required

    Receptor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del receptor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del receptor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA. Si el receptor es persona física, debe enviar el nombre completo tal como aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del receptor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    cfdiUseCode
    Type
    string
    required
    Description

    Código del uso del CFDI. Catálogo del SAT c_UsoCFDI.

    Type
    enum:
    Values
    "G01""G02""G03"
  • Name
    zipCode
    Type
    string
    required
    Description

    Código postal del receptor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    email
    Type
    string
    required
    Description

    Correo electrónico del receptor. Para enviar la factura desde el dashboard.

  • Name
    items
    Type
    array of objects (InvoiceItem)
    required

    Conceptos de la factura (productos o servicios)

  • Name
    itemCode
    Type
    string
    required
    Description

    Código del producto o servicio del catálogo c_ClaveProdServ.

    Type
    enum:
    Values
    "01010101""01010108""01010109"
  • Name
    quantity
    Type
    number | decimal
    required
    Description

    Cantidad del producto o servicio.

  • Name
    discount
    Type
    number | decimal?
    Description

    Cantidad monetaria del descuento aplicado al producto o servicio.

  • Name
    unitOfMeasurementCode
    Type
    string
    required
    Description

    Código de la unidad de medida del producto o servicio. Catálogo c_ClaveUnidad.

    Type
    enum:
    Values
    "H87""E48""EA"
  • Name
    description
    Type
    string
    required
    Description

    Descripción del producto o servicio.

  • Name
    unitPrice
    Type
    number | decimal
    required
    Description

    Precio unitario del producto o servicio. (Sin impuestos)

  • Name
    taxObjectCode
    Type
    string
    required
    Description

    Código de obligaciones de impuesto aplicables al producto o servicio. Catálogo c_ObjetoImp.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    itemSku
    Type
    string
    required
    Description

    SKU o código interno que identifica al producto o servicio.

  • Name
    itemTaxes
    Type
    array of objects (ItemTax)?
    conditional required

    Impuestos aplicables al producto o servicio.
    Depende de obligaciones de impuesto taxObjectCode del item.

  • Name
    taxCode
    Type
    string
    required
    Description

    Código del impuesto. Catálogo del SAT c_Impuesto.

    Type
    enum:
    Values
    "001""002""003"
  • Name
    taxTypeCode
    Type
    string
    required
    Description

    Tipo de factor. Catálogo del SAT c_TipoFactor.

    Type
    enum:
    Values
    "Tasa""Cuota""Exento"
  • Name
    taxRate
    Type
    number | decimal
    required
    Description

    Tasa del impuesto. Catálogo del SAT c_TasaOCuota.
    Ejemplo: 0.160000 para un 16% de impuesto.

  • Name
    taxFlagCode
    Type
    string
    required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    "T""R"
  • Name
    metadata
    Type
    dictionary<string, string>?

    Metadatos - Información adicional interna asociada a la factura.

  • Name
    key
    Type
    string
    required
    Description

    Clave del metadato. Ejemplo: numero_orden.

  • Name
    value
    Type
    string
    required
    Description

    Valor del metadato. Ejemplo: ORD-12345.

Request

POST
/api/v4/invoices
curl --location 'https://test.fiscalapi.com/api/v4/invoices' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data-raw '{
  "versionCode": "4.0",
  "series": "CN",
  "date": "2025-05-21T16:46:42",
  "paymentFormCode": "03",
  "currencyCode": "MXN",
  "typeCode": "E",
  "expeditionZipCode": "01160",
  "paymentMethodCode": "PUE",
  "exchangeRate": 1,
  "exportCode": "01",
  "issuer": {
    "tin": "FUNK671228PH6",
    "legalName": "KARLA FUENTE NOLASCO",
    "taxRegimeCode": "621",
    "taxCredentials": [
      {
        "base64File": "archivo_cer_base64...",
        "fileType": 0,
        "password": "12345678a"
      },
      {
        "base64File": "archivo_key_base64...",
        "fileType": 1,
        "password": "12345678a"
      }
    ]
  },
  "recipient": {
    "tin": "EKU9003173C9",
    "legalName": "ESCUELA KEMPER URGATE",
    "zipCode": "42501",
    "taxRegimeCode": "601",
    "cfdiUseCode": "G01",
    "email": "someone@somewhere.com"
  },
  "relatedInvoices": [
    {
      "uuid": "5FB2822E-396D-4725-8521-CDC4BDD20CCF",
      "relationshipTypeCode": "01"
    }
  ],
  "items": [
    {
      "itemCode": "01010101",
      "quantity": 0.5,
      "unitOfMeasurementCode": "E48",
      "description": "Invoicing software as a service",
      "unitPrice": 3587.75,
      "taxObjectCode": "02",
      "itemSku": "7506022301697",
      "itemTaxes": [
        {
          "taxCode": "002",
          "taxTypeCode": "Tasa",
          "taxRate": 0.160000,
          "TaxFlagCode": "T"
        }
      ]
    }
  ]
}'

Response

{
    "data": {
        "versionCode": "4.0",
        "series": "CN",
        "number": "FUNK671228PH6-27",
        "date": "2025-04-20T02:59:53.0000000",
        "paymentFormCode": "03",
        "paymentConditions": null,
        "subtotal": 1793.88,
        "discount": 0,
        "currencyCode": "MXN",
        "exchangeRate": 1,
        "total": 2080.9,
        "typeCode": "E",
        "exportCode": "01",
        "uuid": "f6bf3789-5bf4-44c3-90cc-6c4bfc1ddf0e",
        "consecutive": 74,
        "status": null,
        "paymentMethodCode": "PUE",
        "expeditionZipCode": "01160",
        "issuer": {
            "id": null,
            "tin": "FUNK671228PH6",
            "legalName": "KARLA FUENTE NOLASCO",
            "taxRegimeCode": "621"
        },
        "recipient": {
            "id": null,
            "tin": "EKU9003173C9",
            "legalName": "ESCUELA KEMPER URGATE",
            "zipCode": "42501",
            "taxRegimeCode": "601",
            "cfdiUseCode": "G01",
            "email": "someone@somewhere.com"
        },
        "items": [
            {
                "itemCode": "01010101",
                "quantity": 0.5,
                "unitOfMeasurementCode": "E48",
                "description": "Invoicing software as a service",
                "unitPrice": 3587.75,
                "taxObjectCode": "02",
                "itemSku": "7506022301697",
                "unitOfMeasurement": null,
                "discount": 0,
                "itemTaxes": [
                    {
                        "taxCode": "002",
                        "taxTypeCode": "Tasa",
                        "taxRate": 0.16,
                        "taxFlagCode": null
                    }
                ]
            }
        ],
        "responses": [
            {
                "invoiceId": "b5dd8244-2633-4e63-b6df-c87cc20fe485",
                "invoiceUuid": "f6bf3789-5bf4-44c3-90cc-6c4bfc1ddf0e",
                "invoiceCertificateNumber": "30001000000500003446",
                "invoiceBase64Sello": "sello_cfdi_en_base64...",
                "invoiceSignatureDate": "2025-01-07T09:30:48.0000000",
                "invoiceBase64QrCode": "qr_code_image_en_base64...",
                "invoiceBase64": "xml_en_base64...",
                "satBase64Sello": "sello_sat_en_base64...",
                "satBase64OriginalString": "cadena_original_en_base64...",
                "satCertificateNumber": "30001000000500003456",
                "id": "880940df-d320-4888-8e12-728d97537876",
                "createdAt": "2025-04-20T09:06:20.7889763",
                "updatedAt": "2025-04-20T09:06:20.7889764"
            }
        ],
        "metadata": {
          "mode": "values"
        },
        "id": "b5dd8244-2633-4e63-b6df-c87cc20fe485",
        "createdAt": "2025-04-20T09:06:20.7889697",
        "updatedAt": "2025-04-20T09:06:20.7889706"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices

Crear factura de pago

Este endpoint permite crear una factura de pago en el modo de operación por valores. La factura de pago es conocida como complemento de pago.

El campo typeCode debe ser P. Se excluyen: paymentFormCode, paymentMethodCode, exchangeRate e items, y se agrega complement.payment con la información del pago recibido.

Modelo

  • Name
    versionCode
    Type
    string
    required
    Description

    Código de la versión de la facturación electrónica en México.

    Default:
    4.0
  • Name
    series
    Type
    string
    required
    Description

    Es el número de serie que utiliza el contribuyente para control interno de su información. Este campo acepta de uno hasta 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Es la fecha y hora de expedición de la factura fiscal. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local donde se expide la factura.

  • Name
    paymentFormCode
    Type
    string?
    conditional required
    Description

    Código de la forma de pago para la factura. Catálogo del SAT c_FormaPago. Requerido cuando el tipo de factura es I o E. (ingresos o egreso)

    Type
    enum:
    Values
    "01""02""03"
  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada para expresar los montos, cuando se usa moneda nacional debe ser MXN. Catálogo del SAT c_Moneda.

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    typeCode
    Type
    string
    required
    Description

    Código de tipo de factura. Catálogo del SAT c_TipoDeComprobante.

    Type
    enum:
    Values
    "P"
  • Name
    expeditionZipCode
    Type
    string
    required
    Description

    Código postal del emisor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    exportCode
    Type
    string
    required
    Description

    Código que identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion.

    Default:
    "01"
    Type
    enum:
    Values
    "01""02""03"
  • Name
    paymentConditions
    Type
    string?
    Description

    Condiciones comerciales aplicables para el pago de la factura fiscal. Máximo 1000 caracteres.

  • Name
    issuer
    Type
    object (InvoiceIssuer)
    required

    El emisor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del emisor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA, si el emisor es persona física, debe enviar el nombre completo, tal cual aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del emisor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)
    required

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Lea cómo codificar los sellos en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    01
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key.
    Debe ser la misma en ambos objetos (.cer y .key).

  • Name
    recipient
    Type
    object (InvoiceRecipient)
    required

    Receptor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del receptor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del receptor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA, si el receptor es persona física, debe enviar el nombre completo, tal cual aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del receptor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    cfdiUseCode
    Type
    string
    required
    Description

    Código del uso del CFDI. Catálogo del SAT c_UsoCFDI.

    Type
    enum:
    Values
    "G01""G02""G03"
  • Name
    zipCode
    Type
    string
    required
    Description

    Código postal del receptor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    email
    Type
    string
    required
    Description

    Correo electrónico del receptor. Para enviar la factura desde el dashboard.

  • Name
    complement
    Type
    object (Complement)
    required

    Complementos de la factura - Información adicional específica según el tipo de factura y complemento CFDI.

  • Name
    payment
    Type
    object (Payment)
    required

    Pago recibido para liquidar parcial o totalmente una factura de ingreso emitida previamente.

  • Name
    paymentDate
    Type
    string
    required
    Description

    Fecha de pago. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la fecha y hora en la que el beneficiario recibió el pago.

  • Name
    paymentFormCode
    Type
    string
    required
    Description

    Código de la forma de pago del pago recibido. Catálogo del SAT c_FormaPago

    Type
    enum:
    Values
    "01""02""03"
  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada en el pago. Catálogo del SAT c_Moneda

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    exchangeRate
    Type
    number | decimal?
    Description

    Tipo de cambio del pago a la fecha en que se recibió el mismo.
    Si la moneda del pago es MXN, el tipo de cambio debe ser 1.

    Default:
    1
  • Name
    amount
    Type
    number | decimal
    required
    Description

    Monto del pago.

  • Name
    sourceBankTin
    Type
    string?
    Description

    RFC del banco origen. (Rfc del banco emisor del pago)

  • Name
    sourceBankAccount
    Type
    string?
    Description

    Cuenta bancaria origen. (Cuenta bancaria en el banco emisor del pago)

  • Name
    targetBankTin
    Type
    string?
    Description

    RFC del banco destino. (Rfc del banco receptor del pago)

  • Name
    targetBankAccount
    Type
    string?
    Description

    Cuenta bancaria destino (Cuenta bancaria en el banco receptor del pago)

  • Name
    paidInvoices
    Type
    array of objects (PaidInvoice)
    required

    Facturas pagadas con el pago recibido.

  • Name
    uuid
    Type
    string
    required
    Description

    UUID de la factura pagada.

  • Name
    series
    Type
    string?
    Description

    Serie de la factura pagada

  • Name
    amount
    Type
    number | decimal
    required
    Description

    Monto pagado de la factura.

  • Name
    number
    Type
    string?
    Description

    Folio de la factura pagada.

  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda de la factura pagada. Catálogo del SAT c_Moneda

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    partialityNumber
    Type
    number | decimal
    required
    Description

    Número de parcialidad.

  • Name
    subTotal
    Type
    number | decimal
    required
    Description

    Subtotal de la factura pagada.

  • Name
    previousBalance
    Type
    number | decimal
    required
    Description

    Saldo anterior de la factura pagada. Corresponde al saldo de la factura pagada antes de aplicar el pago recibido.

  • Name
    remainingBalance
    Type
    number | decimal
    required
    Description

    Saldo restante de la factura pagada. Corresponde al saldo de la factura pagada después de aplicar el pago recibido.

  • Name
    taxObjectCode
    Type
    string
    required
    Description

    Código de obligaciones de impuesto aplicables a la factura pagada. Catálogo del SAT c_ObjetoImp

    Type
    enum:
    Values
    "01""02""03"
  • Name
    equivalence
    Type
    number | decimal?
    Description

    Tipo de cambio entre la moneda de la factura y la moneda del pago.
    Corresponde a cuántas unidades de la moneda de la factura pagada equivalen a 1 unidad de la moneda del pago.

    Default:
    1
  • Name
    paidInvoiceTaxes
    Type
    array of objects (PaidInvoiceTax)
    required

    Impuestos aplicables a la factura pagada.

  • Name
    taxCode
    Type
    string
    required
    Description

    Código del impuesto. Catálogo del SAT c_Impuesto.

    Type
    enum:
    Values
    "001""002""003"
  • Name
    taxTypeCode
    Type
    string
    required
    Description

    Tipo de factor. Catálogo del SAT c_TipoFactor.

    Type
    enum:
    Values
    "Tasa""Cuota""Exento"
  • Name
    taxRate
    Type
    number | decimal
    required
    Description

    Tasa del impuesto. Catálogo del SAT c_TasaOCuota.
    Ejemplo: 0.160000 para un 16% de impuesto.

  • Name
    taxFlagCode
    Type
    string
    required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    "T""R"
  • Name
    metadata
    Type
    dictionary<string, string>?

    Metadatos - Información adicional interna asociada a la factura.

  • Name
    key
    Type
    string
    required
    Description

    Clave del metadato. Ejemplo: numero_orden.

  • Name
    value
    Type
    string
    required
    Description

    Valor del metadato. Ejemplo: ORD-12345.

Request

POST
/api/v4/invoices
curl --location 'https://test.fiscalapi.com/api/v4/invoices' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data-raw '{
  "versionCode": "4.0",
  "series": "F",
  "date": "2025-04-17T08:56:40",
  "currencyCode": "XXX",
  "typeCode": "P",
  "expeditionZipCode": "42060",
  "exportCode": "01",
  "issuer": {
    "tin": "EKU9003173C9",
    "legalName": "ESCUELA KEMPER URGATE",
    "taxRegimeCode": "601",
    "taxCredentials": [
      {
        "base64File": "archivo_cer_base64...",
        "fileType": 0,
        "password": "12345678a"
      },
      {
        "base64File": "archivo_key_base64...",
        "fileType": 1,
        "password": "12345678a"
      }
    ]
  },
  "recipient": {
    "tin": "URE180429TM6",
    "legalName": "UNIVERSIDAD ROBOTICA ESPAÑOLA",
    "zipCode": "86991",
    "taxRegimeCode": "601",
    "cfdiUseCode": "CP01"
  },
  "complement": {
    "payment": {
      "paymentDate": "2022-01-31T17:49:04",
      "paymentFormCode": "01",
      "currencyCode": "MXN",
      "exchangeRate": 1,
      "amount": 921.23,
      "paidInvoices": [
        {
          "uuid": "4a5d025b-813a-4acf-9f32-8fb61f4918ac",
          "currencyCode": "MXN",
          "partialityNumber": 1,
          "previousBalance": 921.23,
          "paymentAmount": 921.23,
          "remainingBalance": 0.00,
          "taxObjectCode": "02",
          "equivalence": 1,
          "subtotal": 794.1638,
          "paidInvoiceTaxes": [
            {
              "taxCode": "002",
              "taxTypeCode": "Tasa",
              "taxRate": 0.160000,
              "taxFlagCode": "T"
            }
          ]
        }
      ]
    }
  }
}'

Response

{
  "data": {
    "versionCode": "4.0",
    "series": "F",
    "number": "EKU9003173C9-134",
    "date": "2025-10-19T10:25:16.000",
    "paymentFormCode": null,
    "paymentConditions": null,
    "subtotal": 0,
    "discount": 0,
    "currencyCode": "XXX",
    "exchangeRate": 1,
    "total": 0,
    "typeCode": "P",
    "exportCode": "01",
    "uuid": "90d380ff-9051-46ed-a7df-1752fa5cb954",
    "consecutive": 334,
    "status": null,
    "paymentMethodCode": null,
    "expeditionZipCode": "42060",
    "issuer": {
      "id": null,
      "tin": "EKU9003173C9",
      "legalName": "ESCUELA KEMPER URGATE",
      "taxRegimeCode": "601"
    },
    "recipient": {
      "id": null,
      "tin": "URE180429TM6",
      "legalName": "UNIVERSIDAD ROBOTICA ESPAÑOLA",
      "zipCode": "86991",
      "taxRegimeCode": "601",
      "cfdiUseCode": "CP01",
      "email": null
    },
    "items": [
      {
        "itemCode": "84111506",
        "quantity": 1,
        "unitOfMeasurementCode": "ACT",
        "description": "Pago",
        "unitPrice": 0,
        "taxObjectCode": "01",
        "itemSku": null,
        "unitOfMeasurement": null,
        "discount": 0,
        "itemTaxes": []
      }
    ],
    "responses": [
      {
        "invoiceId": "2dd275aa-b0fb-469a-98c2-83eec8f34bb7",
        "invoiceUuid": "90d380ff-9051-46ed-a7df-1752fa5cb954",
        "invoiceCertificateNumber": "30001000000500003416",
        "invoiceBase64Sello": "sello_cfdi_en_base64...",
        "invoiceSignatureDate": "2025-10-19T19:26:45.000",
        "invoiceBase64QrCode": "qr_code_image_en_base64...",
        "invoiceBase64": "xml_en_base64...",
        "satBase64Sello": "sello_sat_en_base64...",
        "satBase64OriginalString": "cadena_original_en_base64...",
        "satCertificateNumber": "30001000000500003456",
        "id": "331b7f9d-ca16-4c48-a3ca-36008ff2ee3a",
        "createdAt": "2025-10-19T19:26:44.421",
        "updatedAt": "2025-10-19T19:26:44.421"
      }
    ],
    "metadata": {
      "mode": "values"
    },
    "id": "2dd275aa-b0fb-469a-98c2-83eec8f34bb7",
    "createdAt": "2025-10-19T19:26:44.421",
    "updatedAt": "2025-10-19T19:26:44.421"
  },
  "succeeded": true,
  "message": "",
  "details": "",
  "httpStatusCode": 200
}

POST/api/v4/invoices

Crear factura de nómina

Este endpoint permite crear una factura de nómina en el modo de operación por valores. La factura de nómina es conocida como complemento de nómina.

El campo typeCode debe ser N. Se excluyen: paymentConditions, exchangeRate, paymentFormCode e items y se agrega complement.payroll con la información de la nómina.

Modelo

  • Name
    versionCode
    Type
    string
    required
    Description

    Código de la versión de la facturación electrónica en México.

    Default:
    4.0
  • Name
    series
    Type
    string
    required
    Description

    Es el número de serie que utiliza el contribuyente para control interno de su información. Este campo acepta de uno hasta 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Es la fecha y hora de expedición de la factura fiscal. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local donde se expide la factura.

  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada para expresar los montos, cuando se usa moneda nacional debe ser MXN. Catálogo del SAT c_Moneda.

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    typeCode
    Type
    string
    required
    Description

    Código de tipo de factura. Catálogo del SAT c_TipoDeComprobante.

    Type
    enum:
    Values
    "N"
  • Name
    expeditionZipCode
    Type
    string
    required
    Description

    Código postal del emisor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    exportCode
    Type
    string
    required
    Description

    Código que identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion.

    Default:
    "01"
    Type
    enum:
    Values
    "01"
  • Name
    paymentMethodCode
    Type
    string?
    conditional required
    Description

    Código de método de pago de la factura. Catálogo del SAT c_MetodoPago.

    Type
    enum:
    Values
    "PUE"
  • Name
    issuer
    Type
    object (InvoiceIssuer)
    required

    El emisor de la factura

  • Name
    tin
    Type
    string?
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    Description

    Razón social del emisor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA, si el emisor es persona física, debe enviar el nombre completo, tal cual aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string?
    Description

    Código del régimen fiscal del emisor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    employerData
    Type
    object (EmployerData)
    required

    Datos del empleador - Información específica del patrón para facturas de nómina

  • Name
    curp
    Type
    string?
    Description

    CURP del emisor de la factura de nómina cuando es una persona física.
    Requerido cuando el emisor es una persona física.

  • Name
    employerRegistration
    Type
    string?
    Description

    Registro patronal, clave de ramo-pagaduría o la asignada por la institución de seguridad social al patrón.
    Requerido cuando las obligaciones fiscales del emisor lo exigen.

  • Name
    originEmployerTin
    Type
    string?
    Description

    RFC de la persona que fungió como patrón cuando el pago se realiza a través de un tercero.
    Requerido cuando el origen del pago es un tercero (subcontratación).

  • Name
    satFundSourceId
    Type
    string?
    Description

    Clave del origen del recurso utilizado para el pago de nómina del personal. Catálogo del SAT c_OrigenRecurso.
    Requerido cuando el emisor sea una empresa que pertenece al SNCF.

    Type
    enum:
    Values
    IPIFIM
  • Name
    ownResourceAmount
    Type
    number | decimal?
    Description

    Monto del recurso pagado con cargo a participaciones u otros ingresos locales cuando el origen es mixto.
    Requerido cuando el emisor sea una empresa que pertenece al SNCF.

  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)?

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Lea cómo codificar los sellos en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    012
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key.
    Debe ser la misma en ambos objetos (.cer y .key).

  • Name
    recipient
    Type
    object (InvoiceRecipient)
    required

    Receptor de la factura

  • Name
    tin
    Type
    string?
    Description

    RFC del receptor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    Description

    Razón social del receptor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA, si el receptor es persona física, debe enviar el nombre completo, tal cual aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string?
    Description

    Código del régimen fiscal del receptor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    cfdiUseCode
    Type
    string?
    Description

    Código del uso del CFDI. Catálogo del SAT c_UsoCFDI.

    Type
    enum:
    Values
    "G01""G02""G03"
  • Name
    zipCode
    Type
    string?
    Description

    Código postal del receptor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    email
    Type
    string?
    Description

    Correo electrónico del receptor. Para enviar la factura.

  • Name
    employeeData
    Type
    object (EmployeeData)
    required

    Datos del empleado - Información específica del trabajador para facturas de nómina. Requerido cuando el tipo de factura es N (nómina).

  • Name
    curp
    Type
    string
    required
    Description

    CURP del receptor de la factura de nómina.

  • Name
    socialSecurityNumber
    Type
    string?
    Description

    Número de seguridad social del trabajador.

  • Name
    laborRelationStartDate
    Type
    string?
    Description

    Fecha de inicio de la relación laboral entre el empleador y el empleado. Formato AAAA-MM-DD.

  • Name
    seniority
    Type
    string?
    Description

    Antigüedad del empleado en formato período de duración ISO 8601. Ejemplo: P437W para 437 semanas o P1Y5M para 1 año y 5 meses.

  • Name
    satContractTypeId
    Type
    string
    required
    expandible
    Description

    Clave del tipo de contrato que tiene el trabajador. Catálogo del SAT c_TipoContrato.

    Type
    enum:
    Values
    010203
  • Name
    satUnionizedStatusId
    Type
    string?
    Description

    Indica si el trabajador está asociado a un sindicato.

    Type
    enum:
    Values
    No
  • Name
    satWorkdayTypeId
    Type
    string?
    Description

    Clave del tipo de jornada que cubre el trabajador. Catálogo del SAT c_TipoJornada.

    Type
    enum:
    Values
    010203
  • Name
    satTaxRegimeTypeId
    Type
    string
    required
    Description

    Clave del régimen por el cual se tiene contratado al trabajador. Catálogo del SAT c_TipoRegimen.

    Type
    enum:
    Values
    020304
  • Name
    employeeNumber
    Type
    string
    required
    Description

    Número de empleado asignado por el empleador.

  • Name
    department
    Type
    string?
    Description

    Departamento o área a la que pertenece el trabajador.

  • Name
    position
    Type
    string?
    Description

    Puesto asignado al empleado o actividad que realiza.

  • Name
    satJobRiskId
    Type
    string?
    Description

    Riesgo de trabajo del empleado. Catálogo del SAT c_RiesgoTrabajo.

    Type
    enum:
    Values
    123
  • Name
    satPaymentPeriodicityId
    Type
    string
    required
    Description

    Clave de la forma en que se establece el pago del salario. Catálogo del SAT c_PeriodicidadPago.

    Type
    enum:
    Values
    010203
  • Name
    satBankId
    Type
    string?
    Description

    Clave del Banco conforme al catálogo donde se realiza el depósito de nómina. Catálogo del SAT c_Banco.

  • Name
    bankAccount
    Type
    string?
    Description

    Cuenta bancaria del empleado donde se recibe el pago de nómina.

  • Name
    baseSalaryForContributions
    Type
    number | decimal?
    Description

    Salario base de cotización o aportaciones del empleado.

  • Name
    integratedDailySalary
    Type
    number | decimal?
    Description

    Salario diario integrado del empleado.

  • Name
    satPayrollStateId
    Type
    string?
    Description

    Clave de la entidad federativa en donde el receptor del recibo prestó el servicio. Catálogo del SAT c_Estado.

    Type
    enum:
    Values
    AGUBCNBCS
  • Name
    subcontractorRfc
    Type
    string?
    Description

    RFC de la persona que subcontrata. Cuando el empleado es subcontratado.

  • Name
    timePercentage
    Type
    number | decimal?
    Description

    Porcentaje del tiempo que prestó sus servicios con el RFC que lo subcontrata. Cuando el empleado es subcontratado.

  • Name
    complement
    Type
    object (Complement)
    required

    Complementos de la factura - Información adicional específica según el tipo de factura y complemento CFDI.

  • Name
    payroll
    Type
    object (Payroll)?

    Complemento de nómina.

  • Name
    version
    Type
    string
    required
    Description

    Versión del complemento de nómina. Valor fijo 1.2.

  • Name
    payrollTypeCode
    Type
    string
    required
    Description

    Clave del tipo de nómina. Catálogo del SAT c_TipoNomina.

    Type
    enum:
    Values
    OE
  • Name
    paymentDate
    Type
    date
    required
    Description

    Fecha efectiva de erogación del pago de la nómina. Formato AAAA-MM-DD.

  • Name
    initialPaymentDate
    Type
    date
    required
    Description

    Fecha inicial del período de pago. Formato AAAA-MM-DD.

  • Name
    finalPaymentDate
    Type
    date
    required
    Description

    Fecha final del período de pago. Formato AAAA-MM-DD.

  • Name
    daysPaid
    Type
    number | decimal
    required
    Description

    Número o fracción de días pagados.

  • Name
    earnings
    Type
    object (PayrollEarnings)
    required

    Percepciones de la nómina - Ingresos por salarios y conceptos asimilados a salarios.

  • Name
    earnings
    Type
    array of objects (Earning)
    required

    Lista de percepciones.

  • Name
    earningTypeCode
    Type
    string
    required
    Description

    Clave agrupadora bajo la cual se clasifica la percepción. Catálogo del SAT c_TipoPercepcion.

    Type
    enum:
    Values
    001002003
  • Name
    code
    Type
    string
    required
    Description

    Clave de percepción de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string
    required
    Description

    Descripción de la percepción.

  • Name
    taxedAmount
    Type
    number | decimal
    required
    Description

    Importe gravado de la percepción.

  • Name
    exemptAmount
    Type
    number | decimal
    required
    Description

    Importe exento de la percepción.

  • Name
    stockOptions
    Type
    object (StockOptions)?

    Opciones de acciones - Ingresos por acciones o títulos valor que representan bienes.

  • Name
    marketPrice
    Type
    number | decimal
    required
    Description

    Valor de mercado de las acciones o títulos valor al ejercer la opción.

  • Name
    grantPrice
    Type
    number | decimal
    required
    Description

    Precio establecido al otorgarse la opción de ingresos en acciones o títulos valor.

  • Name
    overtime
    Type
    array of objects (Overtime)?

    Horas extra - Información sobre horas extraordinarias trabajadas.

  • Name
    days
    Type
    number | decimal
    required
    Description

    Número de días en que el trabajador realizó horas extra en el periodo.

  • Name
    hoursTypeCode
    Type
    string
    required
    Description

    Clave del tipo de pago de las horas extra. Catálogo del SAT c_TipoHoras.

    Type
    enum:
    Values
    010203
  • Name
    extraHours
    Type
    number | decimal
    required
    Description

    Número de horas extra trabajadas en el periodo.

  • Name
    amountPaid
    Type
    number | decimal
    required
    Description

    Importe pagado por las horas extra.

  • Name
    otherPayments
    Type
    array of objects (OtherPayment)?

    Otros pagos - Pagos adicionales aplicables a la nómina.

  • Name
    otherPaymentTypeCode
    Type
    string
    required
    Description

    Clave agrupadora bajo la cual se clasifica el otro pago. Catálogo del SAT c_TipoOtroPago.

    Type
    enum:
    Values
    001002003
  • Name
    code
    Type
    string
    required
    Description

    Clave de otro pago de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string
    required
    Description

    Descripción del concepto de otro pago.

  • Name
    amount
    Type
    number | decimal
    required
    Description

    Importe del concepto de otro pago.

  • Name
    subsidyCaused
    Type
    number | decimal?
    Description

    Subsidio causado conforme a la tabla del subsidio para el empleo.

  • Name
    balanceCompensation
    Type
    object (BalanceCompensation)?

    Compensación de saldos - Información sobre compensación de saldos a favor del trabajador.

  • Name
    favorableBalance
    Type
    number | decimal
    required
    Description

    Saldo a favor determinado por el patrón al trabajador en periodos o ejercicios anteriores.

  • Name
    year
    Type
    number | decimal
    required
    Description

    Año en que se determinó el saldo a favor del trabajador por el patrón.

  • Name
    remainingFavorableBalance
    Type
    number | decimal
    required
    Description

    Remanente del saldo a favor del trabajador.

  • Name
    retirement
    Type
    object (Retirement)?

    Jubilación y pensiones - Pagos por jubilación, pensiones o haberes de retiro.

  • Name
    totalOneTime
    Type
    number | decimal?
    Description

    Monto total del pago cuando se realiza en una sola exhibición.

  • Name
    totalInstallments
    Type
    number | decimal?
    Description

    Ingresos totales por pago cuando se hace en parcialidades.

  • Name
    dailyAmount
    Type
    number | decimal?
    Description

    Monto diario percibido por jubilación, pensiones o haberes de retiro cuando se realiza en parcialidades.

  • Name
    accumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos acumulables.

  • Name
    nonAccumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos no acumulables.

  • Name
    severance
    Type
    object (Severance)?

    Separación e indemnización - Otros pagos por separación del trabajador.

  • Name
    totalPaid
    Type
    number | decimal
    required
    Description

    Monto total del pago por separación.

  • Name
    yearsOfService
    Type
    number | decimal
    required
    Description

    Número de años de servicio del trabajador.

  • Name
    lastMonthlySalary
    Type
    number | decimal
    required
    Description

    Último sueldo mensual ordinario.

  • Name
    accumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos acumulables por separación.

  • Name
    nonAccumulableIncome
    Type
    number | decimal
    required
    Description

    Ingresos no acumulables por separación.

  • Name
    deductions
    Type
    array of objects (Deduction)?

    Deducciones de la nómina - Descuentos aplicables a la nómina del trabajador.

  • Name
    deductionTypeCode
    Type
    string
    required
    Description

    Clave agrupadora que clasifica la deducción. Catálogo del SAT c_TipoDeduccion.

    Type
    enum:
    Values
    001002003
  • Name
    code
    Type
    string
    required
    Description

    Clave de deducción de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string
    required
    Description

    Descripción del concepto de deducción.

  • Name
    amount
    Type
    number | decimal
    required
    Description

    Importe del concepto de deducción.

  • Name
    disabilities
    Type
    array of objects (Disability)?

    Incapacidades de la nómina - Información sobre incapacidades del trabajador.

  • Name
    disabilityDays
    Type
    number | decimal
    required
    Description

    Número de días enteros que el trabajador se incapacitó en el periodo.

  • Name
    disabilityTypeCode
    Type
    string
    required
    Description

    Clave de la razón de la incapacidad. Catálogo del SAT c_TipoIncapacidad.

    Type
    enum:
    Values
    010203
  • Name
    monetaryAmount
    Type
    number | decimal?
    Description

    Monto del importe monetario de la incapacidad.

  • Name
    metadata
    Type
    dictionary<string, string>?

    Metadatos - Información adicional interna asociada a la factura.

  • Name
    key
    Type
    string
    required
    Description

    Clave del metadato. Ejemplo: numero_orden.

  • Name
    value
    Type
    string
    required
    Description

    Valor del metadato. Ejemplo: ORD-12345.

Request

POST
/api/v4/invoices
curl --location 'https://test.fiscalapi.com/api/v4/invoices' \
--header 'X-TENANT-KEY: <tenant-key>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '{
    "versionCode": "4.0",
    "series": "F",
    "date": "2025-10-22T15:40:18",
    "paymentMethodCode": "PUE",
    "currencyCode": "MXN",
    "typeCode": "N",
    "expeditionZipCode": "20000",
    "exportCode": "01",
    "issuer": {
        "tin": "EKU9003173C9",
        "legalName": "ESCUELA KEMPER URGATE",
        "taxRegimeCode": "601",
        "employerData": {
            "employerRegistration": "B5510768108"
        },
        "taxCredentials": [
            {
                "base64File": "archivo_cer_en_base64...",
                "fileType": 0,
                "password": "12345678a"
            },
            {
                "base64File": "archivo_key_en_base64...",
                "fileType": 1,
                "password": "12345678a"
            }
        ]
    },
    "recipient": {
        "tin": "FUNK671228PH6",
        "legalName": "KARLA FUENTE NOLASCO",
        "zipCode": "01160",
        "taxRegimeCode": "605",
        "cfdiUseCode": "CN01",
        "employeeData": {
            "curp": "XEXX010101MNEXXXA8",
            "socialSecurityNumber": "04078873454",
            "laborRelationStartDate": "2024-08-18",
            "seniority": "P54W",
            "satContractTypeId": "01",
            "satTaxRegimeTypeId": "02",
            "employeeNumber": "123456789",
            "department": "GenAI",
            "position": "Sr Software Engineer",
            "satJobRiskId": "1",
            "satPaymentPeriodicityId": "05",
            "satBankId": "012",
            "baseSalaryForContributions": 2828.50,
            "integratedDailySalary": 0.00,
            "satPayrollStateId": "JAL"
        }
    },
    "complement": {
        "payroll": {
            "version": "1.2",
            "payrollTypeCode": "O",
            "paymentDate": "2025-08-30",
            "initialPaymentDate": "2025-07-31",
            "finalPaymentDate": "2025-08-30",
            "daysPaid": 30,
            "earnings": {
                "earnings": [
                    {
                        "earningTypeCode": "001",
                        "code": "1003",
                        "concept": "Sueldo Nominal",
                        "taxedAmount": 9503.00,
                        "exemptAmount": 0.00
                    },
                    {
                        "earningTypeCode": "005",
                        "code": "5913",
                        "concept": "Fondo de Ahorro Aportación Patrón",
                        "taxedAmount": 0.00,
                        "exemptAmount": 412.46
                    }
                ],
                "otherPayments": [
                    {
                        "otherPaymentTypeCode": "002",
                        "code": "5050",
                        "concept": "Exceso de subsidio al empleo",
                        "amount": 0.00,
                        "subsidyCaused": 0.00
                    }
                ]
            },
            "deductions": [
                {
                    "deductionTypeCode": "004",
                    "code": "1942",
                    "concept": "Vales Despensa Electrónico",
                    "amount": 343.00
                },
                {
                    "deductionTypeCode": "001",
                    "code": "1895",
                    "concept": "IMSS",
                    "amount": 239.13
                }
            ]
        }
    }
}'

Response

{
    "data": {
        "versionCode": "4.0",
        "series": "F",
        "number": "EKU9003173C9-79",
        "date": "2025-10-22T09:40:18.000",
        "paymentFormCode": null,
        "paymentConditions": null,
        "subtotal": 9915.46,
        "discount": 582.13,
        "currencyCode": "MXN",
        "exchangeRate": 1,
        "total": 9333.33,
        "typeCode": "N",
        "exportCode": "01",
        "uuid": "bcb4d576-8212-4847-b45e-517ed925edf2",
        "consecutive": 217,
        "status": null,
        "paymentMethodCode": "PUE",
        "expeditionZipCode": "20000",
        "issuer": {
            "id": null,
            "tin": "EKU9003173C9",
            "legalName": "ESCUELA KEMPER URGATE",
            "taxRegimeCode": "601"
        },
        "recipient": {
            "id": null,
            "tin": "FUNK671228PH6",
            "legalName": "KARLA FUENTE NOLASCO",
            "zipCode": "01160",
            "taxRegimeCode": "605",
            "cfdiUseCode": "CN01",
            "email": null
        },
        "items": [
            {
                "itemCode": "84111505",
                "quantity": 1,
                "unitOfMeasurementCode": "ACT",
                "description": "Pago de nómina",
                "unitPrice": 9915.46,
                "taxObjectCode": "01",
                "itemSku": null,
                "unitOfMeasurement": null,
                "discount": 582.13,
                "itemTaxes": []
            }
        ],
        "responses": [
            {
                "invoiceId": "6af69a69-b1ee-4bb5-92a9-973272962b5d",
                "invoiceUuid": "bcb4d576-8212-4847-b45e-517ed925edf2",
                "invoiceCertificateNumber": "30001000000500003416",
                "invoiceBase64Sello": "sello_cfdi_en_base64...",
                "invoiceSignatureDate": "2025-10-24T11:36:37.000",
                "invoiceBase64QrCode": "qr_code_image_en_base64...",
                "invoiceBase64": "xml_en_base64...",
                "satBase64Sello": "sello_sat_en_base64...",
                "satBase64OriginalString": "cadena_original_en_base64...",
                "satCertificateNumber": "30001000000500003456",
                "id": "00c7247d-4212-4307-a17d-a604d3eb3d57",
                "createdAt": "2025-10-24T17:36:37.433",
                "updatedAt": "2025-10-24T17:36:37.433"
            }
        ],
        "metadata": {
            "mode": "values"
        },
        "id": "6af69a69-b1ee-4bb5-92a9-973272962b5d",
        "createdAt": "2025-10-24T17:36:37.433",
        "updatedAt": "2025-10-24T17:36:37.433"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices

Crear factura de carta porte

Este endpoint permite crear una factura con complemento Carta Porte en el modo de operación por valores. La Carta Porte es un complemento obligatorio para amparar el traslado de bienes y/o mercancías en territorio nacional.

El campo typeCode debe ser T (traslado) o I (ingreso). Se agrega complement.cartaPorte con la información del traslado de mercancías.

Modelo

  • Name
    versionCode
    Type
    string
    required
    Description

    Código de la versión de la facturación electrónica en México.

    Default:
    4.0
  • Name
    series
    Type
    string
    required
    Description

    Es el número de serie que utiliza el contribuyente para control interno de su información. Este campo acepta de uno hasta 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Es la fecha y hora de expedición de la factura fiscal. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local donde se expide la factura.

  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada para expresar los montos, cuando se usa moneda nacional debe ser MXN. Catálogo del SAT c_Moneda.

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    typeCode
    Type
    string
    required
    Description

    Código de tipo de factura. Catálogo del SAT c_TipoDeComprobante.

    Type
    enum:
    Values
    "T""I"
  • Name
    expeditionZipCode
    Type
    string
    required
    Description

    Código postal del emisor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    exportCode
    Type
    string
    required
    Description

    Código que identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion.

    Default:
    "01"
    Type
    enum:
    Values
    "01""02""03"
  • Name
    issuer
    Type
    object (InvoiceIssuer)
    required

    El emisor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del emisor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA, si el emisor es persona física, debe enviar el nombre completo, tal cual aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Clave del régimen fiscal del emisor. Catálogo del SAT c_RegimenFiscal.

  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)
    required

    Certificados CSD del emisor (archivo .cer y .key en base64).

  • Name
    base64File
    Type
    string
    required
    Description

    Contenido del archivo en base64.

  • Name
    fileType
    Type
    number
    required
    Description

    Tipo de archivo: 0 para certificado (.cer), 1 para llave privada (.key).

  • Name
    password
    Type
    string
    required
    Description

    Contraseña del certificado.

  • Name
    recipient
    Type
    object (InvoiceRecipient)
    required

    Receptor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del receptor.

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del receptor.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Clave del régimen fiscal del receptor. Catálogo del SAT c_RegimenFiscal.

  • Name
    zipCode
    Type
    string
    required
    Description

    Código postal del domicilio fiscal del receptor.

  • Name
    cfdiUseCode
    Type
    string
    required
    Description

    Clave del uso del CFDI. Catálogo del SAT c_UsoCFDI.

    Type
    enum:
    Values
    "S01""G01""G03"
  • Name
    complement
    Type
    object (Complement)
    required

    Complementos de la factura - Información adicional específica según el tipo de factura y complemento CFDI.

  • Name
    cartaPorte
    Type
    object (CartaPorte)
    required

    Complemento Carta Porte 3.1 Información del traslado de bienes y/o mercancías en territorio nacional por los distintos medios de transporte.

  • Name
    transpInternacId
    Type
    string
    required
    Description

    Indica si el transporte es internacional. Catálogo del SAT SatFlagTranspInternac.

    Type
    enum:
    Values
    "Sí""No"
  • Name
    unidadPesoId
    Type
    string
    required
    Description

    Clave de la unidad de medida de peso aplicable. Catálogo del SAT c_ClaveUnidadPeso.

  • Name
    totalDistRec
    Type
    number | decimal?
    Description

    Suma total de las distancias recorridas en kilómetros.

  • Name
    metadata
    Type
    dictionary<string, string>?

    Metadatos - Información adicional interna asociada a la factura.

  • Name
    key
    Type
    string
    required
    Description

    Clave del metadato. Ejemplo: numero_orden.

  • Name
    value
    Type
    string
    required
    Description

    Valor del metadato. Ejemplo: ORD-12345.

Request

POST
/api/v4/invoices
curl --location 'https://test.fiscalapi.com/api/v4/invoices' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data-raw '{
  "versionCode": "4.0",
  "series": "CCP",
  "date": "2025-06-15T10:30:00",
  "currencyCode": "XXX",
  "typeCode": "T",
  "expeditionZipCode": "42501",
  "exportCode": "01",
  "issuer": {
    "tin": "EKU9003173C9",
    "legalName": "ESCUELA KEMPER URGATE",
    "taxRegimeCode": "601",
    "taxCredentials": [
      {
        "base64File": "archivo_cer_base64...",
        "fileType": 0,
        "password": "12345678a"
      },
      {
        "base64File": "archivo_key_base64...",
        "fileType": 1,
        "password": "12345678a"
      }
    ]
  },
  "recipient": {
    "tin": "URE180429TM6",
    "legalName": "UNIVERSIDAD ROBOTICA ESPAÑOLA",
    "zipCode": "86991",
    "taxRegimeCode": "601",
    "cfdiUseCode": "S01"
  },
  "complement": {
    "cartaPorte": {
      "transpInternacId": "No",
      "unidadPesoId": "XKG",
      "totalDistRec": 150.5,
      "ubicaciones": [
        {
          "tipoUbicacion": "Origen",
          "iDUbicacion": "OR000001",
          "rFCRemitenteDestinatario": "EKU9003173C9",
          "fechaHoraSalidaLlegada": "2025-06-15T10:30:00",
          "distanciaRecorrida": 0,
          "domicilio": {
            "calle": "Av. Reforma",
            "numeroExterior": "222",
            "coloniaId": "0001",
            "municipioId": "014",
            "estadoId": "HID",
            "paisId": "MEX",
            "codigoPostalId": "42501"
          }
        },
        {
          "tipoUbicacion": "Destino",
          "iDUbicacion": "DE000001",
          "rFCRemitenteDestinatario": "URE180429TM6",
          "fechaHoraSalidaLlegada": "2025-06-15T14:00:00",
          "distanciaRecorrida": 150.5,
          "domicilio": {
            "calle": "Blvd. Manuel Ávila Camacho",
            "numeroExterior": "40",
            "coloniaId": "0001",
            "municipioId": "004",
            "estadoId": "CMX",
            "paisId": "MEX",
            "codigoPostalId": "11000"
          }
        }
      ],
      "mercancias": [
        {
          "bienesTranspId": "11121900",
          "descripcion": "Cajas de producto alimenticio",
          "cantidad": 100,
          "claveUnidadId": "H87",
          "pesoEnKg": 500
        }
      ],
      "autotransporte": {
        "permSCTId": "TPAF01",
        "numPermisoSCT": "123456",
        "configVehicularId": "C2",
        "pesoBrutoVehicular": 15,
        "placaVM": "ABC1234",
        "anioModeloVM": 2022,
        "aseguraRespCivil": "Seguros Atlas",
        "polizaRespCivil": "POL-123456"
      },
      "tiposFigura": [
        {
          "tipoFiguraId": "01",
          "rFCFigura": "XAXX010101000",
          "numLicencia": "B0012345",
          "nombreFigura": "Juan Pérez López"
        }
      ]
    }
  }
}'

Response

{
    "data": {
        "versionCode": "4.0",
        "series": "CCP",
        "date": "2025-06-15T10:30:00",
        "currencyCode": "XXX",
        "typeCode": "T",
        "exportCode": "01",
        "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "expeditionZipCode": "42501",
        "issuer": {
            "tin": "EKU9003173C9",
            "legalName": "ESCUELA KEMPER URGATE",
            "taxRegimeCode": "601"
        },
        "recipient": {
            "tin": "URE180429TM6",
            "legalName": "UNIVERSIDAD ROBOTICA ESPAÑOLA",
            "zipCode": "86991",
            "taxRegimeCode": "601",
            "cfdiUseCode": "S01"
        },
        "responses": [
            {
                "invoiceId": "f1a2b3c4-d5e6-7890-abcd-ef1234567890",
                "invoiceUuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
                "invoiceCertificateNumber": "30001000000500003446",
                "invoiceBase64Sello": "sello_cfdi_en_base64...",
                "invoiceSignatureDate": "2025-06-15T10:30:00.0000000",
                "invoiceBase64QrCode": "qr_code_image_en_base64...",
                "invoiceBase64": "xml_en_base64...",
                "satBase64Sello": "sello_sat_en_base64...",
                "satBase64OriginalString": "cadena_original_en_base64...",
                "satCertificateNumber": "30001000000500003456",
                "id": "e1f2a3b4-c5d6-7890-abcd-ef1234567890",
                "createdAt": "2025-06-15T10:30:00.0000000",
                "updatedAt": "2025-06-15T10:30:00.0000000"
            }
        ],
        "metadata": {
          "mode": "values"
        },
        "id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890",
        "createdAt": "2025-06-15T10:30:00.0000000",
        "updatedAt": "2025-06-15T10:30:00.0000000"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

POST/api/v4/invoices

Crear factura global

Este endpoint permite crear una factura global en el modo de operación por referencias. La factura global es una factura de ingreso que representa todas las ventas realizadas al público en general (clientes que no solicitaron factura) de un período de tiempo determinado.

En la factura global:

  • Cada item representa una venta individual al público general
  • Los itemTaxes de cada item representan todos los impuestos únicos de todos los productos de la venta al público general

Modelo

  • Name
    versionCode
    Type
    string?
    Description

    Código de la versión de la facturación electrónica en México.

    Default:
    4.0
  • Name
    typeCode
    Type
    string
    required
    Description

    Código de tipo de factura. Catálogo del SAT c_TipoDeComprobante.
    Debe ser I para factura global.

    Type
    enum:
    Values
    "I""E""T"
  • Name
    series
    Type
    string
    required
    Description

    Es el número de serie que utiliza el contribuyente para control interno de su información. Este campo acepta de uno hasta 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Es la fecha y hora de expedición del comprobante fiscal. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local donde se expide el comprobante.

  • Name
    paymentFormCode
    Type
    string
    required
    Description

    Código de la forma de pago para la factura. Catálogo del SAT c_FormaPago.
    Depende del criterio del contribuyente.

    Type
    enum:
    Values
    "01""02""03"
  • Name
    paymentMethodCode
    Type
    string
    required
    Description

    Código de método de pago de la factura. Catálogo del SAT c_MetodoPago.
    Debe ser PUE para factura global.

    Type
    enum:
    Values
    "PUE""PPD"
  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda utilizada para expresar los montos, cuando se usa moneda nacional debe ser MXN. Catálogo del SAT c_Moneda.

    Default:
    "MXN"
    Type
    enum:
    Values
    "MXN""USD""EUR"
  • Name
    expeditionZipCode
    Type
    string
    required
    Description

    Código postal del emisor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.

  • Name
    exchangeRate
    Type
    number | decimal?
    Description

    Tipo de cambio FIX conforme a la moneda registrada en la factura. Si la moneda es MXN, el tipo de cambio debe ser 1.

    Default:
    1
  • Name
    exportCode
    Type
    string
    required
    Description

    Código que identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion.

    Default:
    "01"
    Type
    enum:
    Values
    "01""02""03"
  • Name
    globalInformation
    Type
    object (GlobalInformation)
    required

    Información que describe la factura global.

  • Name
    periodicityCode
    Type
    string
    required
    Description

    Código de la frecuencia (periodicidad) con que se generan las facturas globales. Catálogo del SAT c_Periodicidad

    Type
    enum:
    Values
    "01""02""03"
  • Name
    monthCode
    Type
    string
    required
    Description

    Código del mes o los meses al que corresponde la información de las transacciones reportadas. Catálogo del SAT c_Meses

    Type
    enum:
    Values
    "01""02""03"
  • Name
    year
    Type
    number | decimal
    required
    Description

    Año al que corresponde la información de las transacciones reportadas en formato 4 dígitos.

  • Name
    issuer
    Type
    object (InvoiceIssuer)
    required

    El emisor de la factura

  • Name
    tin
    Type
    string
    required
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del emisor sin régimen de capital. Por ejemplo: si la razón social es MI EMPRESA S.A. de C.V., debe enviar MI EMPRESA, si el emisor es persona física, debe enviar el nombre completo, tal cual aparece en la constancia de situación fiscal.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del emisor. Catálogo del SAT c_RegimenFiscal.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    taxCredentials
    Type
    array of objects (TaxCredential)
    required

    Sellos del emisor (archivos .cer y .key). Debe enviar exactamente dos objetos TaxCredential.

  • Name
    base64File
    Type
    string
    required
    Description

    Archivo en formato base64. Lea cómo codificar los sellos en base64.

  • Name
    fileType
    Type
    number | decimal
    required
    Description

    Tipo de archivo.

    Type
    enum:
    Values
    01
  • Name
    password
    Type
    string
    required
    Description

    Contraseña del archivo .key.
    Debe ser la misma en ambos objetos (.cer y .key).

  • Name
    recipient
    Type
    object (InvoiceRecipient)
    required

    Receptor de la factura 💡Esta persona debe tener los datos del RFC genérico.

  • Name
    tin
    Type
    string?
    Description

    RFC del receptor. Debe ser XAXX010101000 para facturas globales.

  • Name
    legalName
    Type
    string
    required
    Description

    Razón social del receptor sin régimen de capital.
    Debe ser PUBLICO EN GENERAL para facturas globales.

  • Name
    taxRegimeCode
    Type
    string
    required
    Description

    Código del régimen fiscal del receptor. Catálogo del SAT c_RegimenFiscal.
    Debe ser 616 Sin obligaciones fiscales para facturas globales.

    Type
    enum:
    Values
    "601""603""605"
  • Name
    cfdiUseCode
    Type
    string
    required
    Description

    Código del uso del CFDI. Catálogo del SAT c_UsoCFDI.
    Debe ser S01 Sin efectos fiscales para facturas globales.

    Type
    enum:
    Values
    "G01""G02""G03"
  • Name
    zipCode
    Type
    string
    required
    Description

    Código postal del receptor, debe corresponder con el código postal expresado en su constancia de situación fiscal. Catálogo del SAT c_CodigoPostal.
    Debe ser el mismo código postal del emisor para facturas globales.

  • Name
    email
    Type
    string
    required
    Description

    Correo electrónico del receptor. Para enviar la factura desde el dashboard.
    Puede ser el mismo correo electrónico del emisor.

  • Name
    items
    Type
    array of objects (InvoiceItem)
    required

    Conceptos de la factura (ventas)

  • Name
    itemCode
    Type
    string
    required
    Description

    Debe ser 01010101 para todos los items de la factura global.

  • Name
    itemSku
    Type
    string
    required
    Description

    Debe ser número interno (folio, número de venta, id, etc.) de la venta.

  • Name
    quantity
    Type
    number | decimal
    required
    Description

    Debe ser 1 para todos los items de la factura global.

  • Name
    unitOfMeasurementCode
    Type
    string
    required
    Description

    Debe ser ACT para todos los items de la factura global.

  • Name
    description
    Type
    string
    required
    Description

    Debe ser Venta para todos los items de la factura global.

  • Name
    unitPrice
    Type
    number | decimal
    required
    Description

    Debe ser el subtotal de la venta especificada en itemSku.
    Corresponde al total - impuestos de la venta especificada en itemSku.

  • Name
    taxObjectCode
    Type
    string
    required
    Description

    Debe ser 02 para todos los items de la factura global.

  • Name
    itemTaxes
    Type
    array of objects (InvoiceItemTax)
    required

    Impuestos aplicables a la venta especificada en itemSku.

  • Name
    taxCode
    Type
    string
    required
    Description

    Código del impuesto. Catálogo del SAT c_Impuesto.

    Type
    enum:
    Values
    "001""002""003"
  • Name
    taxTypeCode
    Type
    string
    required
    Description

    Tipo de factor. Catálogo del SAT c_TipoFactor.

    Type
    enum:
    Values
    "Tasa""Cuota""Exento"
  • Name
    taxRate
    Type
    number | decimal
    required
    Description

    Tasa del impuesto. Catálogo del SAT c_TasaOCuota.
    Ejemplo: 0.160000 para un 16% de impuesto.

  • Name
    taxFlagCode
    Type
    string
    required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    "T""R"
  • Name
    complement
    Type
    object (Complement)?

    Complementos del comprobante - Información adicional específica según el tipo de comprobante

  • Name
    localTaxes
    Type
    object (LocalTaxes)?

    Impuestos locales - Complemento para impuestos locales aplicables al comprobante

  • Name
    taxes
    Type
    array of objects (LocalTax)?

    Lista de impuestos locales

  • Name
    taxName
    Type
    string?
    Description

    Nombre del impuesto local aplicable.

  • Name
    taxRate
    Type
    number | decimal?
    Description

    Porcentaje del impuesto local aplicable.

  • Name
    taxAmount
    Type
    number | decimal?
    Description

    Monto del impuesto local aplicable.

  • Name
    taxFlagCode
    Type
    string?
    Description

    Indica si el impuesto local es retenido o trasladado.

  • Name
    payment
    Type
    object (Payment)?

    Complemento de pagos - Información sobre la recepción de pagos del comprobante

  • Name
    paymentDate
    Type
    string?
    Description

    Fecha y hora en la que el beneficiario recibe el pago. Formato AAAA-MM-DDThh:mm:ss.

  • Name
    paymentFormCode
    Type
    string?
    Description

    Clave de la forma en que se realiza el pago.

  • Name
    currencyCode
    Type
    string?
    Description

    Clave de la moneda utilizada para realizar el pago conforme ISO 4217.

  • Name
    exchangeRate
    Type
    number | decimal?
    Description

    Tipo de cambio de la moneda a la fecha en que se realizó el pago.

  • Name
    amount
    Type
    number | decimal?
    Description

    Importe del pago.

  • Name
    operationNumber
    Type
    string?
    Description

    Número de cheque, autorización, referencia, clave de rastreo SPEI, línea de captura o número de referencia análogo.

  • Name
    sourceBankTin
    Type
    string?
    Description

    RFC de la entidad emisora de la cuenta origen.

  • Name
    sourceBankAccount
    Type
    string?
    Description

    Número de la cuenta con la que se realizó el pago.

  • Name
    targetBankTin
    Type
    string?
    Description

    RFC de la entidad operadora de la cuenta destino.

  • Name
    targetBankAccount
    Type
    string?
    Description

    Número de cuenta en donde se recibió el pago.

  • Name
    foreignBankName
    Type
    string?
    Description

    Nombre del banco ordenante cuando es extranjero.

  • Name
    paymentTypeCode
    Type
    string?
    Description

    Clave del tipo de cadena de pago que genera la entidad receptora del pago.

  • Name
    base64PaymentCertificate
    Type
    string?
    Description

    Certificado que ampara al pago como cadena de texto en formato base 64.

  • Name
    paymentOriginalString
    Type
    string?
    Description

    Cadena original del comprobante de pago generado por la entidad emisora de la cuenta beneficiaria.

  • Name
    signatureValue
    Type
    string?
    Description

    Sello digital que se asocie al pago expresado como cadena de texto en formato base 64.

  • Name
    paidInvoices
    Type
    array of objects (PaidInvoice)?

    Facturas pagadas - Lista de documentos relacionados con los pagos recibidos

  • Name
    uuid
    Type
    string?
    Description

    Identificador del documento relacionado con el pago (Folio Fiscal o número de operación).

  • Name
    series
    Type
    string?
    Description

    Serie del comprobante para control interno del contribuyente.

  • Name
    number
    Type
    string?
    Description

    Folio del comprobante para control interno del contribuyente.

  • Name
    currencyCode
    Type
    string?
    Description

    Clave de la moneda utilizada en los importes del documento relacionado.

  • Name
    partialityNumber
    Type
    number | decimal?
    Description

    Número de parcialidad que corresponde al pago.

  • Name
    subTotal
    Type
    number | decimal?
    Description

    Subtotal del documento relacionado.

  • Name
    previousBalance
    Type
    number | decimal?
    Description

    Monto del saldo insoluto de la parcialidad anterior.

  • Name
    paymentAmount
    Type
    number | decimal?
    Description

    Importe pagado para el documento relacionado.

  • Name
    remainingBalance
    Type
    number | decimal?
    Description

    Diferencia entre el importe del saldo anterior y el monto del pago.

  • Name
    taxObjectCode
    Type
    string?
    Description

    Clave que expresa si el pago del documento relacionado es objeto o no de impuesto.

  • Name
    equivalence
    Type
    number | decimal?
    Description

    Tipo de cambio conforme con la moneda registrada en el documento relacionado.

  • Name
    exchangeRate
    Type
    number | decimal?
    Description

    Tipo de cambio del documento relacionado.

  • Name
    paidInvoiceTaxes
    Type
    array of objects (PaidInvoiceTax)?

    Impuestos de facturas pagadas - Impuestos aplicables conforme al monto del pago recibido

  • Name
    base
    Type
    number | decimal?
    Description

    Base para el cálculo del impuesto conforme al monto del pago aplicable al documento relacionado.

  • Name
    taxCode
    Type
    string?
    Description

    Clave del tipo de impuesto aplicable conforme al monto del pago.

  • Name
    taxTypeCode
    Type
    string?
    Description

    Clave del tipo de factor que se aplica a la base del impuesto.

  • Name
    taxRate
    Type
    number | decimal?
    Description

    Valor de la tasa o cuota del impuesto aplicable.

  • Name
    taxFlagCode
    Type
    string?
    Description

    Indica si el impuesto es retenido o trasladado conforme al monto del pago.

  • Name
    payroll
    Type
    object (Payroll)?

    Complemento de nómina - Información específica para comprobantes de nómina

  • Name
    version
    Type
    string?
    Description

    Versión del complemento de nómina. Valor fijo "1.2".

  • Name
    payrollTypeCode
    Type
    string?
    Description

    Clave del tipo de nómina (O=Ordinaria, E=Extraordinaria).

  • Name
    paymentDate
    Type
    string?
    Description

    Fecha efectiva de erogación del gasto. Formato AAAA-MM-DD.

  • Name
    initialPaymentDate
    Type
    string?
    Description

    Fecha inicial del período de pago. Formato AAAA-MM-DD.

  • Name
    finalPaymentDate
    Type
    string?
    Description

    Fecha final del período de pago. Formato AAAA-MM-DD.

  • Name
    daysPaid
    Type
    number | decimal?
    Description

    Número o fracción de días pagados.

  • Name
    earnings
    Type
    object (Earnings)?

    Percepciones de la nómina - Ingresos por salarios y conceptos asimilados a salarios

  • Name
    earnings
    Type
    array of objects (Earning)?

    Lista de percepciones

  • Name
    earningTypeCode
    Type
    string?
    Description

    Clave agrupadora bajo la cual se clasifica la percepción.

  • Name
    code
    Type
    string?
    Description

    Clave de percepción de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string?
    Description

    Descripción del concepto de percepción.

  • Name
    taxedAmount
    Type
    number | decimal?
    Description

    Importe gravado de un concepto de percepción.

  • Name
    exemptAmount
    Type
    number | decimal?
    Description

    Importe exento de un concepto de percepción.

  • Name
    stockOptions
    Type
    object (StockOptions)?

    Opciones de acciones - Ingresos por acciones o títulos valor que representan bienes

  • Name
    marketPrice
    Type
    number | decimal?
    Description

    Valor de mercado de las Acciones o Títulos valor al ejercer la opción.

  • Name
    grantPrice
    Type
    number | decimal?
    Description

    Precio establecido al otorgarse la opción de ingresos en acciones o títulos valor.

  • Name
    overtime
    Type
    array of objects (Overtime)?

    Horas extra - Información sobre horas extraordinarias trabajadas

  • Name
    days
    Type
    number | decimal?
    Description

    Número de días en que el trabajador realizó horas extra en el periodo.

  • Name
    hoursTypeCode
    Type
    string?
    Description

    Clave del tipo de pago de las horas extra.

  • Name
    extraHours
    Type
    number | decimal?
    Description

    Número de horas extra trabajadas en el periodo.

  • Name
    amountPaid
    Type
    number | decimal?
    Description

    Importe pagado por las horas extra.

  • Name
    otherPayments
    Type
    array of objects (OtherPayment)?

    Otros pagos - Pagos adicionales aplicables a la nómina

  • Name
    otherPaymentTypeCode
    Type
    string?
    Description

    Clave agrupadora bajo la cual se clasifica el otro pago.

  • Name
    code
    Type
    string?
    Description

    Clave de otro pago de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string?
    Description

    Descripción del concepto de otro pago.

  • Name
    amount
    Type
    number | decimal?
    Description

    Importe del concepto de otro pago.

  • Name
    subsidyCaused
    Type
    number | decimal?
    Description

    Subsidio causado conforme a la tabla del subsidio para el empleo.

  • Name
    balanceCompensation
    Type
    object (BalanceCompensation)?

    Compensación de saldos - Información sobre compensación de saldos a favor del trabajador

  • Name
    favorableBalance
    Type
    number | decimal?
    Description

    Saldo a favor determinado por el patrón al trabajador en periodos o ejercicios anteriores.

  • Name
    year
    Type
    number | decimal?
    Description

    Año en que se determinó el saldo a favor del trabajador por el patrón.

  • Name
    remainingFavorableBalance
    Type
    number | decimal?
    Description

    Remanente del saldo a favor del trabajador.

  • Name
    retirement
    Type
    object (Retirement)?

    Jubilación y pensiones - Pagos por jubilación, pensiones o haberes de retiro

  • Name
    totalOneTime
    Type
    number | decimal?
    Description

    Monto total del pago cuando se realiza en una sola exhibición.

  • Name
    totalInstallments
    Type
    number | decimal?
    Description

    Ingresos totales por pago cuando se hace en parcialidades.

  • Name
    dailyAmount
    Type
    number | decimal?
    Description

    Monto diario percibido por jubilación, pensiones o haberes de retiro cuando se realiza en parcialidades.

  • Name
    accumulableIncome
    Type
    number | decimal?
    Description

    Ingresos acumulables.

  • Name
    nonAccumulableIncome
    Type
    number | decimal?
    Description

    Ingresos no acumulables.

  • Name
    severance
    Type
    object (Severance)?

    Separación e indemnización - Otros pagos por separación del trabajador

  • Name
    totalPaid
    Type
    number | decimal?
    Description

    Monto total del pago por separación.

  • Name
    yearsOfService
    Type
    number | decimal?
    Description

    Número de años de servicio del trabajador.

  • Name
    lastMonthlySalary
    Type
    number | decimal?
    Description

    Último sueldo mensual ordinario.

  • Name
    accumulableIncome
    Type
    number | decimal?
    Description

    Ingresos acumulables por separación.

  • Name
    nonAccumulableIncome
    Type
    number | decimal?
    Description

    Ingresos no acumulables por separación.

  • Name
    deductions
    Type
    array of objects (Deduction)?

    Deducciones de la nómina - Descuentos aplicables a la nómina del trabajador

  • Name
    deductionTypeCode
    Type
    string?
    Description

    Clave agrupadora que clasifica la deducción.

  • Name
    code
    Type
    string?
    Description

    Clave de deducción de nómina propia de la contabilidad de cada patrón.

  • Name
    concept
    Type
    string?
    Description

    Descripción del concepto de deducción.

  • Name
    amount
    Type
    number | decimal?
    Description

    Importe del concepto de deducción.

  • Name
    disabilities
    Type
    array of objects (Disability)?

    Incapacidades de la nómina - Información sobre incapacidades del trabajador

  • Name
    disabilityDays
    Type
    number | decimal?
    Description

    Número de días enteros que el trabajador se incapacitó en el periodo.

  • Name
    disabilityTypeCode
    Type
    string?
    Description

    Clave de la razón de la incapacidad.

  • Name
    monetaryAmount
    Type
    number | decimal?
    Description

    Monto del importe monetario de la incapacidad.

  • Name
    cartaPorte
    Type
    object (CartaPorte)?

    Complemento Carta Porte 3.1 Información del traslado de bienes y/o mercancías en territorio nacional.

  • Name
    metadata
    Type
    object (Metadata)?

    Metadatos adicionales - Información personalizada del comprobante

  • Name
    additionalProp1
    Type
    string?
    Description

    Propiedad adicional personalizada para metadatos del comprobante.

  • Name
    additionalProp2
    Type
    string?
    Description

    Propiedad adicional personalizada para metadatos del comprobante.

  • Name
    additionalProp3
    Type
    string?
    Description

    Propiedad adicional personalizada para metadatos del comprobante.

Request

POST
/api/v4/invoices
curl --location 'https://test.fiscalapi.com/api/v4/invoices' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <apiKey>' \
--data-raw '{
  "versionCode": "4.0",
  "series": "F",
  "date": "2025-05-21T16:46:42",
  "paymentFormCode": "01",
  "paymentMethodCode": "PUE",
  "currencyCode": "MXN",
  "typeCode": "I",
  "expeditionZipCode": "01160",
  "exchangeRate": 1,
  "exportCode": "01",
  "globalInformation": {
    "periodicityCode": "01",
    "monthCode": "01",
    "year": 2025
  },
  "issuer": {
    "tin": "FUNK671228PH6",
    "legalName": "KARLA FUENTE NOLASCO",
    "taxRegimeCode": "621",
    "taxCredentials": [
      {
        "base64File": "archivo_cer_base64...",
        "fileType": 0,
        "password": "12345678a"
      },
      {
        "base64File": "archivo_key_base64...",
        "fileType": 1,
        "password": "12345678a"
      }
    ]
  },
  "recipient": {
    "tin": "XAXX010101000",
    "legalName": "PUBLICO EN GENERAL",
    "zipCode": "01160",
    "taxRegimeCode": "616",
    "cfdiUseCode": "S01",
    "email": "someone@somewhere.com"
  },
  "items": [
    {
      "itemCode": "01010101",
      "quantity": 1,
      "unitOfMeasurementCode": "ACT",
      "description": "Venta",
      "unitPrice": 1230.00,
      "taxObjectCode": "02",
      "itemSku": "1",
      "itemTaxes": [
        {
          "taxCode": "002",
          "taxTypeCode": "Tasa",
          "taxRate": 0.160000,
          "taxFlagCode": "T"
        }
      ]
    }
  ]
}'

Response

    {
    "data": {
        "versionCode": "4.0",
        "series": "F",
        "number": "FUNK671228PH6-55",
        "date": "2025-05-12T11:20:48.0000000",
        "paymentFormCode": "01",
        "paymentConditions": null,
        "subtotal": 2365,
        "discount": 0,
        "currencyCode": "MXN",
        "exchangeRate": 1,
        "total": 2743.4,
        "typeCode": "I",
        "exportCode": "01",
        "uuid": "217ad098-b9d5-4612-8923-20f0f8b85596",
        "consecutive": 94,
        "status": null,
        "paymentMethodCode": "PUE",
        "expeditionZipCode": "01160",
        "issuer": {
            "id": "78d380fd-1b69-4e3c-8bc0-4f57737f7d5f",
            "tin": "FUNK671228PH6",
            "legalName": "KARLA FUENTE NOLASCO",
            "taxRegimeCode": "626"
        },
        "recipient": {
            "id": "4e7ba2d7-2302-42f1-9fe4-6b75069f0fc9",
            "tin": "XAXX010101000",
            "legalName": "PUBLICO EN GENERAL",
            "zipCode": "01160",
            "taxRegimeCode": "616",
            "cfdiUseCode": "S01",
            "email": "general@fiscalapi.com"
        },
        "items": [
            {
                "itemCode": "01010101",
                "quantity": 1,
                "unitOfMeasurementCode": "ACT",
                "description": "Venta",
                "unitPrice": 2365,
                "taxObjectCode": "02",
                "itemSku": "NoVenta",
                "unitOfMeasurement": null,
                "discount": 0,
                "itemTaxes": [
                    {
                        "taxCode": "002",
                        "taxTypeCode": "Tasa",
                        "taxRate": 0.16,
                        "taxFlagCode": "T"
                    }
                ]
            }
        ],
        "responses": [
            {
                "invoiceId": "5afe2d1c-d5e7-482c-aa9a-496bec6bae98",
                "invoiceUuid": "217ad098-b9d5-4612-8923-20f0f8b85596",
                "invoiceCertificateNumber": "30001000000500003446",
                "invoiceBase64Sello": "sello_cfdi_en_base64...",
                "invoiceSignatureDate": "2025-01-07T09:30:48.0000000",
                "invoiceBase64QrCode": "qr_code_image_en_base64...",
                "invoiceBase64": "xml_en_base64...",
                "satBase64Sello": "sello_sat_en_base64...",
                "satBase64OriginalString": "cadena_original_en_base64...",
                "satCertificateNumber": "30001000000500003456",
                "id": "c6dd74dc-6a89-41b9-86b9-a0f39e07c25a",
                "createdAt": "2025-05-13T07:24:36.3624453",
                "updatedAt": "2025-05-13T07:24:36.3624454"
            }
        ],
        "metadata": {
            "mode": "values"
        },
        "id": "5afe2d1c-d5e7-482c-aa9a-496bec6bae98",
        "createdAt": "2025-05-13T07:24:36.3624365",
        "updatedAt": "2025-05-13T07:24:36.3624373"
    },
    "succeeded": true,
    "message": "",
    "details": "",
    "httpStatusCode": 200
}

¿Le resultó útil esta página?