Facturación

El recurso de facturación es uno de los pilares centrales de FiscalAPI. Este recurso permite la creación, validación, timbrado, consulta, descarga y generación de PDFs de Comprobantes Fiscales Digitales por Internet (CFDI 4.0), asegurando el cumplimiento con la normativa vigente del SAT. Con este recurso, puedes gestionar todo el ciclo de vida de tus facturas electrónicas, desde su emisión hasta su cancelación.

Cómo funciona

Este recurso ha sido diseñado para ser simple y eficiente. El motor de facturación de FiscalAPI se encarga de todo el proceso: generar el XML, calcularlo, validarlo, sellarlo y timbrarlo. Una vez timbrado, FiscalAPI retorna un objeto invoice que representa la factura timbrada. Este objeto contiene toda la información relevante de la factura, incluyendo los detalles del timbrado.


El modelo de factura

El modelo de factura se refiere a los modelos (DTO) utilizados para crear y recuperar facturas. El SAT define cinco tipos de facturas en México: Ingreso (I), Egreso (E), Traslado (T), Nómina (N) y Pago (P). Cada uno de estos tipos está compuesto por diferentes elementos, como el emisor, el receptor, los conceptos, los impuestos, entre otros.

FiscalAPI utiliza modelos equivalentes, optimizados y estandarizados con nomenclaturas claras. Por ejemplo:

  • Los modelos de solicitud incluyen el sufijo InputModel.
  • Los modelos de respuesta incluyen el sufijo OutputModel.

Este enfoque contribuye a la claridad y simplicidad durante el proceso de integración.

Modelos de entrada

ModeloDescripciónTipo FacturaDetalles
incomeInvoiceInputModelModelo para crear una factura de ingreso.Idetalles
invoiceGlobalInformationInputModelModelo para representar la información global en la factura global de ingreso.Idetalles
creditNoteInvoiceInputModelModelo para crear una factura de egreso (nota de crédito).Edetalles
paymentInvoiceInputModelModelo para crear una factura de pago (complemento de pago).Pdetalles
paidPaymentModelo para representar el pago en la factura de pago (complemento de pago).Pdetalles
paidInvoiceModelo para representar cada factura pagada en la factura de pago (complemento de pago).Pdetalles
paidInvoiceTaxModelo para representar cada impuesto de cada factura pagada en la factura de pago.Pdetalles
payrollInvoiceInputModelModelo para crear una factura de nómina.Ndetalles
transportationInvoiceInputModelModelo para crear una factura de transporte.Tdetalles
invoiceItemInputModelModelo para representar un concepto de la factura.I, E, P, N, Tdetalles
invoiceItemTaxInputModelModelo para representar un impuesto de un concepto de la factura.I, E, P, N, Tdetalles
invoiceRelatedInvoiceInputModelModelo para representar los CFDIs relacionados.I, E, P, N, Tdetalles
invoiceIssuerInputModelModelo para representar el emisor de la factura.I, E, P, N, Tdetalles
invoiceRecipientInputModelModelo para representar el receptor de la factura.I, E, P, N, Tdetalles
credentialInputModelModelo para representar los sellos del emisor (archivos CSD).I, E, P, N, Tdetalles

Modelo para crear una factura de ingreso

El modelo incomeInvoiceInputModel se utiliza para crear una factura de ingreso. Este modelo contiene toda la información necesaria para crear una factura de ingreso, incluyendo los conceptos, los impuestos, el emisor, el receptor, etc. Tenga en cuenta que las propiedades con el sufijo Code deben ser valores válidos según los catálogos del SAT. Puedes consultar los catálogos CFDI 4.0

  • Name
    versionCode
    Type
    string?
    Description

    Código de la versión de la facura.

    Default:
    "4.0"
  • Name
    series
    Type
    string
    required
    Description

    Serie de la factura. Este campo acepta de uno hasta 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Es la fecha y hora de la factura. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la fecha y hora de la transacción.

  • Name
    paymentFormCode
    Type
    string enum
    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
    paymentConditions
    Type
    string?
    Description

    Condiciones de pago. Se pueden registrar las condiciones comerciales aplicables para el pago de la factura cuando existan y el tipo de comprobante sea ingreso o egreso.

  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda para la factura. Se debe registrar la clave de la moneda utilizada en la transacción. Catálogo del SAT c_Moneda

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

    Código de tipo de factura del 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
    paymentMethodCode
    Type
    string
    required
    Description

    Código de método para la factura de pago del catálogo del SAT c_MetodoPago

    Type
    enum:
    Values
    "PUE""PPD"
  • Name
    exchangeRate
    Type
    number?
    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 se identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion

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

    El emisor de la factura

  • Name
    id
    Type
    string?
    conditional required
    Description

    ID del emisor en fiscalapi.

    Este campo es mutuamente excluyente con los demás campos de este objeto. Es decir debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente.

  • Name
    tin
    Type
    string?
    conditional required
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    conditional required
    Description

    Razón social del emisor sin regimen de capital.

  • Name
    taxRegimeCode
    Type
    string?
    Description

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

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

    Sellos del emisor (archivos .cer y .key). Debe envíar exactamente dos objetos Credential.

  • Name
    base64File
    Type
    string?
    conditional required
    Description

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

  • Name
    fileType
    Type
    number?
    conditional required
    Description

    Tipo de archivo.

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

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

  • Name
    recipient
    Type
    object (Recipient)
    required

    Receptor de la factura

  • Name
    id
    Type
    string?
    conditional required
    Description

    ID del receptor en fiscalapi.

    Este campo es mutuamente excluyente con los demás campos de este objeto. Es decir debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente.

  • Name
    tin
    Type
    string?
    conditional required
    Description

    RFC del receptor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    conditional required
    Description

    Razón social del receptor sin regimen de capital.

  • Name
    taxRegimeCode
    Type
    string?
    conditional required
    Description

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

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

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

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

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

  • Name
    items
    Type
    array of objects (InvoiceItem)
    required

    Conceptos de la factura (productos o servicios)

  • Name
    id
    Type
    string?
    conditional required
    Description

    ID del producto en fiscalapi.

    Este campo es mutuamente excluyente con los demás campos de este objeto. Es decir debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente.

  • Name
    itemCode
    Type
    string?
    conditional 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
    unitOfMeasurementCode
    Type
    string?
    conditional 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?
    conditional required
    Description

    Precio unitario del producto o servicio. (Sin impuestos)

  • Name
    taxObjectCode
    Type
    string?
    conditional 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?
    Description

    SKU o clave del sistema externo que identifica al producto o servicio.

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

    Impuestos aplicables al producto o servicio.

  • Name
    taxCode
    Type
    string?
    conditional required
    Description

    Código del impuesto del catálogo c_Impuesto

  • Name
    taxTypeCode
    Type
    string?
    conditional required
    Description

    Tipo de factor del catálogo c_TipoFactor

  • Name
    taxRate
    Type
    number | decimal?
    conditional required
    Description

    Tasa del impuesto.

  • Name
    taxFlagCode
    Type
    string?
    conditional required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    "T""R"

Modelo JSON

{
"versionCode": "4.0",
"series": "F",
"date": "2024-11-12T18:53:57",
"paymentFormCode": "01",
"paymentConditions": "Contado",
"currencyCode": "MXN",
"typeCode": "I",
"expeditionZipCode": "01160",
"paymentMethodCode": "PUE",
"exchangeRate": 1,
"exportCode": "01",
"issuer": {
"tin": "FUNK671228PH6",
"legalName": "KARLA FUENTE NOLASCO",
"taxRegimeCode": "621",
"taxCredentials": [
  {
    "base64File": "MIIFgDCCA2igAwIBAgIUMzAwMDEwMDAwMDA1MDAwMDM0NDYwDQYJKoZIhvcNAQELBQAwggErMQ8wDQYDVQQDDAZBQyBVQVQxLjAsBgNVBAoMJVNFUlZJQ0lPIERFIEFETUlOSVNUUkFDSU9OIFRSSUJVVEFSSUExGjAYBgNVBAsMEVNBVC1JRVMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlvc2Nhci5tYXJ0aW5lekBzYXQuZ29iLm14MR0wGwYDVQQJDBQzcmEgY2VycmFkYSBkZSBjYWxpejEOMAwGA1UEEQwFMDYzNzAxCzAJBgNVBAYTAk1YMRkwFwYDVQQIDBBDSVVEQUQgREUgTUVYSUNPMREwDwYDVQQHDAhDT1lPQUNBTjERMA8GA1UELRMIMi41LjQuNDUxJTAjBgkqhkiG9w0BCQITFnJlc3BvbnNhYmxlOiBBQ0RNQS1TQVQwHhcNMjMwNTE4MTQzNTM3WhcNMjcwNTE4MTQzNTM3WjCBpzEdMBsGA1UEAxMUS0FSTEEgRlVFTlRFIE5PTEFTQ08xHTAbBgNVBCkTFEtBUkxBIEZVRU5URSBOT0xBU0NPMR0wGwYDVQQKExRLQVJMQSBGVUVOVEUgTk9MQVNDTzEWMBQGA1UELRMNRlVOSzY3MTIyOFBINjEbMBkGA1UEBRMSRlVOSzY3MTIyOE1DTE5MUjA1MRMwEQYDVQQLEwpTdWN1cnNhbCAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhNXbTSqGX6+/3Urpemyy5vVG2IdP2v7v001+c4BoMxEDFDQ32cOFdDiRxy0Fq9aR+Ojrofq8VeftvN586iyA1A6a0QnA68i7JnQKI4uJy+u0qiixuHu6u3b3BhSpoaVHcUtqFWLLlzr0yBxfVLOqVna/1/tHbQJg9hx57mp97P0JmXO1WeIqi+Zqob/mVZh2lsPGdJ8iqgjYFaFn9QVOQ1Pq74o1PTqwfzqgJSfV0zOOlESDPWggaDAYE4VNyTBisOUjlNd0x7ppcTxSi3yenrJHqkq/pqJsRLKf6VJ/s9p6bsd2bj07hSDpjlDC2lB25eEfkEkeMkXoE7ErXQ5QCwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAHwYpgbClHULXYhK4GNTgonvXh81oqfXwCSWAyDPiTYFDWVfWM9C4ApxMLyc0XvJte75Rla+bPC08oYN3OlhbbvP3twBL/w9SsfxvkbpFn2ZfGSTXZhyiq4vjmQHW1pnFvGelwgU4v3eeRE/MjoCnE7M/Q5thpuog6WGf7CbKERnWZn8QsUaJsZSEkg6Bv2jm69ye57ab5rrOUaeMlstTfdlaHAEkUgLX/NXq7RbGwv82hkHY5b2vYcXeh34tUMBL6os3OdRlooN9ZQGkVIISvxVZpSHkYC20DFNh1Bb0ovjfujlTcka81GnbUhFGZtRuoVQ1RVpMO8xtx3YKBLp4do3hPmnRCV5hCm43OIjYx9Ov2dqICV3AaNXSLV1dW39Bak/RBiIDGHzOIW2+VMPjvvypBjmPv/tmbqNHWPSAWOxTyMx6E1gFCZvi+5F+BgkdC3Lm7U0BU0NfvsXajZd8sXnIllvEMrikCLoI/yurvexNDcF1RW/FhMsoua0eerwczcNm66pGjHm05p9DR6lFeJZrtqeqZuojdxBWy4vH6ghyJaupergoX+nmdG3JYeRttCFF/ITI68TeCES5V3Y0C3psYAg1XxcGRLGd4chPo/4xwiLkijWtgt0/to5ljGBwfK7r62PHZfL1Dp+i7V3w7hmOlhbXzP+zhMZn1GCk7KY=",
    "fileType": 0,
    "password": "12345678a"
  },
  {
    "base64File": "MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIAgEAAoIBAQACAggAMBQGCCqGSIb3DQMHBAgwggS9AgEAMASCBMh4EHl7aNSCaMDA1VlRoXCZ5UUmqErAbucRBAKNQXH8t8gVCl/ItHMI2hMJ76QOECOqEi1Y89cDpegDvh/INXyMsXbzi87tfFzgq1O+9ID6aPWGg+bNGADXyXxDVdy7Nq/SCdoXvo66MTYwq8jyJeUHDHEGMVBcmZpD44VJCvLBxDcvByuevP4Wo2NKqJCwK+ecAdZc/8Rvd947SjbMHuS8BppfQWARVUqA5BLOkTAHNv6tEk/hncC7O2YOGSShart8fM8dokgGSyewHVFe08POuQ+WDHeVpvApH/SP29rwktSoiHRoL6dK+F2YeEB5SuFW9LQgYCutjapmUP/9TC3Byro9Li6UrvQHxNmgMFGQJSYjFdqlGjLibfuguLp7pueutbROoZaSxU8HqlfYxLkpJUxUwNI1ja/1t3wcivtWknVXBd13R06iVfU1HGe8Kb4u5il4a4yP4p7VT4RE3b1SBLJeG+BxHiE8gFaaKcX/Cl6JV14RPTvk/6VnAtEQ66qHJex21KKuiJo2JoOmDXVHmvGQlWXNjYgoPx28Xd5WsofL+n7HDR2Ku8XgwJw6IXBJGuoday9qWN9v/k7DGlNGB6Sm4gdVUmycMP6EGhB1vFTiDfOGQO42ywmcpKoMETPVQ5InYKE0xAOckgcminDgxWjtUHjBDPEKifEjYudPwKmR6Cf4ZdGvUWwY/zq9pPAC9bu423KeBCnSL8AQ4r5SVsW6XG0njamwfNjpegwh/YG7sS7sDtZ8gi7r6tZYjsOqZlCYU0j7QTBpuQn81Yof2nQRCFxhRJCeydmIA8+z0nXrcElk7NDPk4kYQS0VitJ2qeQYNENzGBglROkCl2y6GlxAG80IBtReCUp/xOSdlwDR0eim+SNkdStvmQM5IcWBuDKwGZc1A4v/UoLl7niV9fpl4X6bUX8lZzY4gidJOafoJ30VoY/lYGkrkEuz3GpbbT5v8fF3iXVRlEqhlpe8JSGu7Rd2cPcJSkQ1Cuj/QRhHPhFMF2KhTEf95c9ZBKI8H7SvBi7eLXfSW2Y0ve6vXBZKyjK9whgCU9iVOsJjqRXpAccaWOKi420CjmS0+uwj/Xr2wLZhPEjBA/G6Od30+eG9mICmbp/5wAGhK/ZxCT17ZETyFmOMo49jl9pxdKocJNuzMrLpSz7/g5Jwp8+y8Ck5YP7AX0R/dVA0t37DO7nAbQT5XVSYpMVh/yvpYJ9WR+tb8Yg1h2lERLR2fbuhQRcwmisZR2W3Sr2b7hX9MCMkMQw8y2fDJrzLrqKqkHcjvnI/TdzZW2MzeQDoBBb3fmgvjYg07l4kThS73wGX992w2Y+a1A2iirSmrYEm9dSh16JmXa8boGQAONQzQkHh7vpw0IBs9cnvqO1QLB1GtbBztUBXonA4TxMKLYZkVrrd2RhrYWMsDp7MpC4M0p/DA3E/qscYwq1OpwriewNdx6XXqMZbdUNqMP2viBY2VSGmNdHtVfbN/rnaeJetFGX7XgTVYD7wDq8TW9yseCK944jcT+y/o0YiT9j3OLQ2Ts0LDTQskpJSxRmXEQGy3NBDOYFTvRkcGJEQJItuol8NivJN1H9LoLIUAlAHBZxfHpUYx66YnP4PdTdMIWH+nxyekKPFfAT7olQ=",
    "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": 2.5,
  "unitOfMeasurementCode": "E48",
  "unitOfMeasurement": "Unidad de servicio",
  "description": "Computer model acme",
  "unitPrice": 1250.75,
  "taxObjectCode": "02",
  "itemSku": "7506022301699",
  "itemTaxes": [
    {
      "taxCode": "002",
      "taxTypeCode": "Tasa",
      "taxRate": 0.160000,
      "TaxFlagCode": "T"
    },
    {
      "taxCode": "002",
      "taxTypeCode": "Tasa",
      "taxRate": 0.106666,
      "TaxFlagCode": "R"
    }
  ]
}
]
}

POST/api/v4/invoices/income

Crear factura

Este endpoint permite crear una factura, formalmente conocida cómo factura de ingreso o CFDI de ingreso.

Modelo de la factura de ingreso

  • Name
    versionCode
    Type
    string?
    Description

    Código de la versión de la facura.

    Default:
    "4.0"
  • Name
    series
    Type
    string
    required
    Description

    Serie de la factura. Este campo acepta de uno hasta 25 caracteres alfanuméricos.

  • Name
    date
    Type
    string
    required
    Description

    Es la fecha y hora de la factura. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la fecha y hora de la transacción.

  • Name
    paymentFormCode
    Type
    string enum
    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
    paymentConditions
    Type
    string?
    Description

    Condiciones de pago. Se pueden registrar las condiciones comerciales aplicables para el pago de la factura cuando existan y el tipo de comprobante sea ingreso o egreso.

  • Name
    currencyCode
    Type
    string
    required
    Description

    Código de la moneda para la factura. Se debe registrar la clave de la moneda utilizada en la transacción. Catálogo del SAT c_Moneda

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

    Código de tipo de factura del 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
    paymentMethodCode
    Type
    string
    required
    Description

    Código de método para la factura de pago del catálogo del SAT c_MetodoPago

    Type
    enum:
    Values
    "PUE""PPD"
  • Name
    exchangeRate
    Type
    number?
    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 se identifica si la factura ampara una operación de exportación. Catálogo del SAT c_Exportacion

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

    El emisor de la factura

  • Name
    id
    Type
    string?
    conditional required
    Description

    ID del emisor en fiscalapi.

    Este campo es mutuamente excluyente con los demás campos de este objeto. Es decir debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente.

  • Name
    tin
    Type
    string?
    conditional required
    Description

    RFC del emisor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    conditional required
    Description

    Razón social del emisor sin regimen de capital.

  • Name
    taxRegimeCode
    Type
    string?
    Description

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

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

    Sellos del emisor (archivos .cer y .key). Debe envíar exactamente dos objetos Credential.

  • Name
    base64File
    Type
    string?
    conditional required
    Description

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

  • Name
    fileType
    Type
    number?
    conditional required
    Description

    Tipo de archivo.

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

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

  • Name
    recipient
    Type
    object (Recipient)
    required

    Receptor de la factura

  • Name
    id
    Type
    string?
    conditional required
    Description

    ID del receptor en fiscalapi.

    Este campo es mutuamente excluyente con los demás campos de este objeto. Es decir debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente.

  • Name
    tin
    Type
    string?
    conditional required
    Description

    RFC del receptor (Tax Identification Number).

  • Name
    legalName
    Type
    string?
    conditional required
    Description

    Razón social del receptor sin regimen de capital.

  • Name
    taxRegimeCode
    Type
    string?
    conditional required
    Description

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

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

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

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

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

  • Name
    items
    Type
    array of objects (InvoiceItem)
    required

    Conceptos de la factura (productos o servicios)

  • Name
    id
    Type
    string?
    conditional required
    Description

    ID del producto en fiscalapi.

    Este campo es mutuamente excluyente con los demás campos de este objeto. Es decir debe enviar o bien el campo id o bien los demás campos del objeto, pero nunca ambos simultáneamente.

  • Name
    itemCode
    Type
    string?
    conditional 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
    unitOfMeasurementCode
    Type
    string?
    conditional 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?
    conditional required
    Description

    Precio unitario del producto o servicio. (Sin impuestos)

  • Name
    taxObjectCode
    Type
    string?
    conditional 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?
    Description

    SKU o clave del sistema externo que identifica al producto o servicio.

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

    Impuestos aplicables al producto o servicio.

  • Name
    taxCode
    Type
    string?
    conditional required
    Description

    Código del impuesto del catálogo c_Impuesto

  • Name
    taxTypeCode
    Type
    string?
    conditional required
    Description

    Tipo de factor del catálogo c_TipoFactor

  • Name
    taxRate
    Type
    number | decimal?
    conditional required
    Description

    Tasa del impuesto.

  • Name
    taxFlagCode
    Type
    string?
    conditional required
    Description

    Código que indica la naturaleza del impuesto.

    Type
    enum:
    Values
    "T""R"

Request

POST
/api/v4/invoices/income
curl --location 'https://test.fiscalapi.com/api/v4/invoices/income' \
--header 'Content-Type: application/json' \
--header 'X-TENANT-KEY: <tenant>' \
--header 'X-API-KEY: <apiKey>' \
--data-raw '{
"versionCode": "4.0",
"series": "F",
"date": "2024-11-19T19:51:18",
"paymentFormCode": "01",
"paymentConditions": "Contado",
"currencyCode": "MXN",
"typeCode": "I",
"expeditionZipCode": "01160",
"paymentMethodCode": "PUE",
"exchangeRate": 1,
"exportCode": "01",
"issuer": {
  "tin": "FUNK671228PH6",
  "legalName": "KARLA FUENTE NOLASCO",
  "taxRegimeCode": "621",
  "taxCredentials": [
    {
      "base64File": "MIIFgDCCA2igAwIBAgIUMzAwMDEwMDAwMDA1MDAwMDM0NDYwDQYJKoZIhvcNAQELBQAwggErMQ8wDQYDVQQDDAZBQyBVQVQxLjAsBgNVBAoMJVNFUlZJQ0lPIERFIEFETUlOSVNUUkFDSU9OIFRSSUJVVEFSSUExGjAYBgNVBAsMEVNBVC1JRVMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlvc2Nhci5tYXJ0aW5lekBzYXQuZ29iLm14MR0wGwYDVQQJDBQzcmEgY2VycmFkYSBkZSBjYWxpejEOMAwGA1UEEQwFMDYzNzAxCzAJBgNVBAYTAk1YMRkwFwYDVQQIDBBDSVVEQUQgREUgTUVYSUNPMREwDwYDVQQHDAhDT1lPQUNBTjERMA8GA1UELRMIMi41LjQuNDUxJTAjBgkqhkiG9w0BCQITFnJlc3BvbnNhYmxlOiBBQ0RNQS1TQVQwHhcNMjMwNTE4MTQzNTM3WhcNMjcwNTE4MTQzNTM3WjCBpzEdMBsGA1UEAxMUS0FSTEEgRlVFTlRFIE5PTEFTQ08xHTAbBgNVBCkTFEtBUkxBIEZVRU5URSBOT0xBU0NPMR0wGwYDVQQKExRLQVJMQSBGVUVOVEUgTk9MQVNDTzEWMBQGA1UELRMNRlVOSzY3MTIyOFBINjEbMBkGA1UEBRMSRlVOSzY3MTIyOE1DTE5MUjA1MRMwEQYDVQQLEwpTdWN1cnNhbCAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhNXbTSqGX6+/3Urpemyy5vVG2IdP2v7v001+c4BoMxEDFDQ32cOFdDiRxy0Fq9aR+Ojrofq8VeftvN586iyA1A6a0QnA68i7JnQKI4uJy+u0qiixuHu6u3b3BhSpoaVHcUtqFWLLlzr0yBxfVLOqVna/1/tHbQJg9hx57mp97P0JmXO1WeIqi+Zqob/mVZh2lsPGdJ8iqgjYFaFn9QVOQ1Pq74o1PTqwfzqgJSfV0zOOlESDPWggaDAYE4VNyTBisOUjlNd0x7ppcTxSi3yenrJHqkq/pqJsRLKf6VJ/s9p6bsd2bj07hSDpjlDC2lB25eEfkEkeMkXoE7ErXQ5QCwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAHwYpgbClHULXYhK4GNTgonvXh81oqfXwCSWAyDPiTYFDWVfWM9C4ApxMLyc0XvJte75Rla+bPC08oYN3OlhbbvP3twBL/w9SsfxvkbpFn2ZfGSTXZhyiq4vjmQHW1pnFvGelwgU4v3eeRE/MjoCnE7M/Q5thpuog6WGf7CbKERnWZn8QsUaJsZSEkg6Bv2jm69ye57ab5rrOUaeMlstTfdlaHAEkUgLX/NXq7RbGwv82hkHY5b2vYcXeh34tUMBL6os3OdRlooN9ZQGkVIISvxVZpSHkYC20DFNh1Bb0ovjfujlTcka81GnbUhFGZtRuoVQ1RVpMO8xtx3YKBLp4do3hPmnRCV5hCm43OIjYx9Ov2dqICV3AaNXSLV1dW39Bak/RBiIDGHzOIW2+VMPjvvypBjmPv/tmbqNHWPSAWOxTyMx6E1gFCZvi+5F+BgkdC3Lm7U0BU0NfvsXajZd8sXnIllvEMrikCLoI/yurvexNDcF1RW/FhMsoua0eerwczcNm66pGjHm05p9DR6lFeJZrtqeqZuojdxBWy4vH6ghyJaupergoX+nmdG3JYeRttCFF/ITI68TeCES5V3Y0C3psYAg1XxcGRLGd4chPo/4xwiLkijWtgt0/to5ljGBwfK7r62PHZfL1Dp+i7V3w7hmOlhbXzP+zhMZn1GCk7KY=",
      "fileType": 0,
      "password": "12345678a"
    },
    {
      "base64File": "MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIAgEAAoIBAQACAggAMBQGCCqGSIb3DQMHBAgwggS9AgEAMASCBMh4EHl7aNSCaMDA1VlRoXCZ5UUmqErAbucRBAKNQXH8t8gVCl/ItHMI2hMJ76QOECOqEi1Y89cDpegDvh/INXyMsXbzi87tfFzgq1O+9ID6aPWGg+bNGADXyXxDVdy7Nq/SCdoXvo66MTYwq8jyJeUHDHEGMVBcmZpD44VJCvLBxDcvByuevP4Wo2NKqJCwK+ecAdZc/8Rvd947SjbMHuS8BppfQWARVUqA5BLOkTAHNv6tEk/hncC7O2YOGSShart8fM8dokgGSyewHVFe08POuQ+WDHeVpvApH/SP29rwktSoiHRoL6dK+F2YeEB5SuFW9LQgYCutjapmUP/9TC3Byro9Li6UrvQHxNmgMFGQJSYjFdqlGjLibfuguLp7pueutbROoZaSxU8HqlfYxLkpJUxUwNI1ja/1t3wcivtWknVXBd13R06iVfU1HGe8Kb4u5il4a4yP4p7VT4RE3b1SBLJeG+BxHiE8gFaaKcX/Cl6JV14RPTvk/6VnAtEQ66qHJex21KKuiJo2JoOmDXVHmvGQlWXNjYgoPx28Xd5WsofL+n7HDR2Ku8XgwJw6IXBJGuoday9qWN9v/k7DGlNGB6Sm4gdVUmycMP6EGhB1vFTiDfOGQO42ywmcpKoMETPVQ5InYKE0xAOckgcminDgxWjtUHjBDPEKifEjYudPwKmR6Cf4ZdGvUWwY/zq9pPAC9bu423KeBCnSL8AQ4r5SVsW6XG0njamwfNjpegwh/YG7sS7sDtZ8gi7r6tZYjsOqZlCYU0j7QTBpuQn81Yof2nQRCFxhRJCeydmIA8+z0nXrcElk7NDPk4kYQS0VitJ2qeQYNENzGBglROkCl2y6GlxAG80IBtReCUp/xOSdlwDR0eim+SNkdStvmQM5IcWBuDKwGZc1A4v/UoLl7niV9fpl4X6bUX8lZzY4gidJOafoJ30VoY/lYGkrkEuz3GpbbT5v8fF3iXVRlEqhlpe8JSGu7Rd2cPcJSkQ1Cuj/QRhHPhFMF2KhTEf95c9ZBKI8H7SvBi7eLXfSW2Y0ve6vXBZKyjK9whgCU9iVOsJjqRXpAccaWOKi420CjmS0+uwj/Xr2wLZhPEjBA/G6Od30+eG9mICmbp/5wAGhK/ZxCT17ZETyFmOMo49jl9pxdKocJNuzMrLpSz7/g5Jwp8+y8Ck5YP7AX0R/dVA0t37DO7nAbQT5XVSYpMVh/yvpYJ9WR+tb8Yg1h2lERLR2fbuhQRcwmisZR2W3Sr2b7hX9MCMkMQw8y2fDJrzLrqKqkHcjvnI/TdzZW2MzeQDoBBb3fmgvjYg07l4kThS73wGX992w2Y+a1A2iirSmrYEm9dSh16JmXa8boGQAONQzQkHh7vpw0IBs9cnvqO1QLB1GtbBztUBXonA4TxMKLYZkVrrd2RhrYWMsDp7MpC4M0p/DA3E/qscYwq1OpwriewNdx6XXqMZbdUNqMP2viBY2VSGmNdHtVfbN/rnaeJetFGX7XgTVYD7wDq8TW9yseCK944jcT+y/o0YiT9j3OLQ2Ts0LDTQskpJSxRmXEQGy3NBDOYFTvRkcGJEQJItuol8NivJN1H9LoLIUAlAHBZxfHpUYx66YnP4PdTdMIWH+nxyekKPFfAT7olQ=",
      "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.5,
    "unitOfMeasurementCode": "E48",
    "unitOfMeasurement": "Unidad de servicio",
    "description": "Invoicing software as a service",
    "unitPrice": 1225.75,
    "taxObjectCode": "02",
    "itemSku": "7506022301697",
    "discount": 255.85,
    "itemTaxes": [
      {
        "taxCode": "002",
        "taxTypeCode": "Tasa",
        "taxRate": 0.160000,
        "TaxFlagCode": "T"
      }
    ]
  },
  {
    "itemCode": "01010101",
    "quantity": 9,
    "unitOfMeasurementCode": "E48",
    "unitOfMeasurement": "Unidad de servicio2",
    "description": "Software Consultant",
    "unitPrice": 635.85,
    "taxObjectCode": "02",
    "itemSku": "7506022301698",
    "discount": 255.85,
    "itemTaxes": [
      {
        "taxCode": "002",
        "taxTypeCode": "Tasa",
        "taxRate": 0.160000,
        "TaxFlagCode": "T"
      }
    ]
  },
  {
    "itemCode": "01010101",
    "quantity": 2.5,
    "unitOfMeasurementCode": "E48",
    "unitOfMeasurement": "Unidad de servicio3",
    "description": "Computer software",
    "unitPrice": 1250.75,
    "taxObjectCode": "02",
    "itemSku": "7506022301699",
    "itemTaxes": [
      {
        "taxCode": "002",
        "taxTypeCode": "Tasa",
        "taxRate": 0.160000,
        "TaxFlagCode": "T"
      },
      {
        "taxCode": "002",
        "taxTypeCode": "Tasa",
        "taxRate": 0.106666,
        "TaxFlagCode": "R"
      }
    ]
  }
]
}'

Response

{
"data": {
    "versionCode": "4.0",
    "series": "F",
    "number": "FUNK671228PH6-10",
    "date": "2024-11-19T19:51:18",
    "paymentFormCode": "01",
    "paymentConditions": "Contado",
    "subtotal": 10688.15,
    "discount": 511.70,
    "currencyCode": "MXN",
    "exchangeRate": 1,
    "total": 11553.02,
    "typeCode": "I",
    "exportCode": "01",
    "paymentMethodCode": "PUE",
    "expeditionZipCode": "01160",
    "issuerId": null,
    "recipientId": null,
    "invoiceIssuer": {
        "tin": "FUNK671228PH6",
        "legalName": "KARLA FUENTE NOLASCO",
        "taxRegimeCode": "621",
        "tenantId": "494a5958-0993-4a53-972e-f3b51e16358d",
        "id": "490e5b6f-55d2-42e3-9d7b-7d7ca3429d34",
        "createdAt": "2024-11-20T02:45:10.1575768Z",
        "updatedAt": "2024-11-20T02:45:10.1575769Z"
    },
    "issuerTin": "FUNK671228PH6",
    "issuerLegalName": "KARLA FUENTE NOLASCO",
    "invoiceRecipient": {
        "tin": "EKU9003173C9",
        "legalName": "ESCUELA KEMPER URGATE",
        "zipCode": "42501",
        "taxRegimeCode": "601",
        "cfdiUseCode": "G01",
        "email": "someone@somewhere.com",
        "id": "a0987655-17b3-48a0-8e96-f62c580186e9",
        "createdAt": "2024-11-20T02:45:10.1575843Z",
        "updatedAt": "2024-11-20T02:45:10.1575845Z"
    },
    "recipientTin": "EKU9003173C9",
    "recipientLegalName": "ESCUELA KEMPER URGATE",
    "invoiceResponses": [
        {
            "invoiceId": "b1da2d54-8a56-4fbc-b5ac-21a12745bd0a",
            "base64TaOriginalString": "fHwxLjF8NDIzNDY2NGMtY2Y5ZC00ZDM5LTlkNGUtY2I2NDQ0NjAyNmRmfDIwMjQtMTEtMTlUMjA6NDU6MDl8U1BSMTkwNjEzSTUyfENzbGliZi9RUkgxWkVRdTJ6MTZtYklmZWMzbVh4c1Y0MjRhbVp4UHpaejVuaktaMGsyeVRwUkFMUWdWeU5sdGsxK3hwRnBRUjhqZnZ6Ty9EMUE2UTNKWnFmVXBLb1E5Z09HbGdGTmlIWTJTZ2p2L3orbFdiVlEvbmRNaEVnRko5enlGUGFoM3d4aU9kOVV6aWk3aWh3ZldvUXVabENTdXJLbWQxakdmZlBQRmpXV1JaMW9hV1U2VElsa0pSVTN2N2JIRXM5cGNQTllac21Gb1hIT3NHTnBCbGgyV3F0MlBWeVRLVHk5em1pSlMvbWcrRlRtZ21NY3pqMkpZT2VZYVU1SlJkRnpPdE92a3I4OXc0OVV1c1g1MVQ0aXFiak9keHE4Wk9mdERyVG8xazlGVS9aVXVKeDl5akU1cXdicURMY2lPWlVyS041TjZBMTJndDFteGtVQT09fDMwMDAxMDAwMDAwNTAwMDAzNDU2fHw=",
            "taCertificateNumber": "30001000000500003456",
            "invoiceCertificateNumber": "30001000000500003446",
            "invoiceUuid": "4234664c-cf9d-4d39-9d4e-cb64446026df",
            "base64TaSignatureValue": "Ldp0hUXLcW6YnyTTq9M5FRecsXEA4FPteozoqiiaBjgBPB9qQ9B44LQACOTg4sGK3Ks7nzAJDVAqyeJnm18K7Szuj3gRzKG+E6WcrSO1hUYc4eUzpKULTk13ekAJIXobi//QlHAGHbDqT0LxX/ZmW1+8ln0zguNKpCClADZI8tUX6rlX6rlbR62ZbNZ3/CSE+gWd/Fl9z8TgEBPueDlJ8pM2n/xOHzAuT9tDytMdjJWMFq+86cHqmDeXXYAVecz0ZuBeU8fnfIDivtORL0tlXn6Wo4OXwf++whlQ5q3HE+40UjHX6y9VkFDnsoke9zo8NoyQe20rNVZrEjJpI0ziJw==",
            "base64InvoiceSignatureValue": "Cslibf/QRH1ZEQu2z16mbIfec3mXxsV424amZxPzZz5njKZ0k2yTpRALQgVyNltk1+xpFpQR8jfvzO/D1A6Q3JZqfUpKoQ9gOGlgFNiHY2Sgjv/z+lWbVQ/ndMhEgFJ9zyFPah3wxiOd9Uzii7ihwfWoQuZlCSurKmd1jGffPPFjWWRZ1oaWU6TIlkJRU3v7bHEs9pcPNYZsmFoXHOsGNpBlh2Wqt2PVyTKTy9zmiJS/mg+FTmgmMczj2JYOeYaU5JRdFzOtOvkr89w49UusX51T4iqbjOdxq8ZOftDrTo1k9FU/ZUuJx9yjE5qwbqDLciOZUrKN5N6A12gt1mxkUA==",
            "invoiceSignatureDate": "2024-11-19T20:45:09Z",
            "base64InvoiceQrCode": "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",
            "base64Invoice": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48Y2ZkaTpDb21wcm9iYW50ZSB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9jZmQvNCBodHRwOi8vd3d3LnNhdC5nb2IubXgvc2l0aW9faW50ZXJuZXQvY2ZkLzQvY2ZkdjQwLnhzZCIgTHVnYXJFeHBlZGljaW9uPSIwMTE2MCIgTWV0b2RvUGFnbz0iUFVFIiBFeHBvcnRhY2lvbj0iMDEiIFRpcG9EZUNvbXByb2JhbnRlPSJJIiBUb3RhbD0iMTE1NTMuMDIiIFRpcG9DYW1iaW89IjEiIERlc2N1ZW50bz0iNTExLjcwIiBTdWJUb3RhbD0iMTA2ODguMTUiIENvbmRpY2lvbmVzRGVQYWdvPSJDb250YWRvIiBDZXJ0aWZpY2Fkbz0iTUlJRmdEQ0NBMmlnQXdJQkFnSVVNekF3TURFd01EQXdNREExTURBd01ETTBORFl3RFFZSktvWklodmNOQVFFTEJRQXdnZ0VyTVE4d0RRWURWUVFEREFaQlF5QlZRVlF4TGpBc0JnTlZCQW9NSlZORlVsWkpRMGxQSUVSRklFRkVUVWxPU1ZOVVVrRkRTVTlPSUZSU1NVSlZWRUZTU1VFeEdqQVlCZ05WQkFzTUVWTkJWQzFKUlZNZ1FYVjBhRzl5YVhSNU1TZ3dKZ1lKS29aSWh2Y05BUWtCRmhsdmMyTmhjaTV0WVhKMGFXNWxla0J6WVhRdVoyOWlMbTE0TVIwd0d3WURWUVFKREJRemNtRWdZMlZ5Y21Ga1lTQmtaU0JqWVd4cGVqRU9NQXdHQTFVRUVRd0ZNRFl6TnpBeEN6QUpCZ05WQkFZVEFrMVlNUmt3RndZRFZRUUlEQkJEU1ZWRVFVUWdSRVVnVFVWWVNVTlBNUkV3RHdZRFZRUUhEQWhEVDFsUFFVTkJUakVSTUE4R0ExVUVMUk1JTWk0MUxqUXVORFV4SlRBakJna3Foa2lHOXcwQkNRSVRGbkpsYzNCdmJuTmhZbXhsT2lCQlEwUk5RUzFUUVZRd0hoY05Nak13TlRFNE1UUXpOVE0zV2hjTk1qY3dOVEU0TVRRek5UTTNXakNCcHpFZE1Cc0dBMVVFQXhNVVMwRlNURUVnUmxWRlRsUkZJRTVQVEVGVFEwOHhIVEFiQmdOVkJDa1RGRXRCVWt4QklFWlZSVTVVUlNCT1QweEJVME5QTVIwd0d3WURWUVFLRXhSTFFWSk1RU0JHVlVWT1ZFVWdUazlNUVZORFR6RVdNQlFHQTFVRUxSTU5SbFZPU3pZM01USXlPRkJJTmpFYk1Ca0dBMVVFQlJNU1JsVk9TelkzTVRJeU9FMURURTVNVWpBMU1STXdFUVlEVlFRTEV3cFRkV04xY25OaGJDQXhNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQWhOWGJUU3FHWDYrLzNVcnBlbXl5NXZWRzJJZFAydjd2MDAxK2M0Qm9NeEVERkRRMzJjT0ZkRGlSeHkwRnE5YVIrT2pyb2ZxOFZlZnR2TjU4Nml5QTFBNmEwUW5BNjhpN0puUUtJNHVKeSt1MHFpaXh1SHU2dTNiM0JoU3BvYVZIY1V0cUZXTExsenIweUJ4ZlZMT3FWbmEvMS90SGJRSmc5aHg1N21wOTdQMEptWE8xV2VJcWkrWnFvYi9tVlpoMmxzUEdkSjhpcWdqWUZhRm45UVZPUTFQcTc0bzFQVHF3ZnpxZ0pTZlYwek9PbEVTRFBXZ2dhREFZRTRWTnlUQmlzT1VqbE5kMHg3cHBjVHhTaTN5ZW5ySkhxa3EvcHFKc1JMS2Y2VkovczlwNmJzZDJiajA3aFNEcGpsREMybEIyNWVFZmtFa2VNa1hvRTdFclhRNVFDd0lEQVFBQm94MHdHekFNQmdOVkhSTUJBZjhFQWpBQU1Bc0dBMVVkRHdRRUF3SUd3REFOQmdrcWhraUc5dzBCQVFzRkFBT0NBZ0VBSHdZcGdiQ2xIVUxYWWhLNEdOVGdvbnZYaDgxb3FmWHdDU1dBeURQaVRZRkRXVmZXTTlDNEFweE1MeWMwWHZKdGU3NVJsYStiUEMwOG9ZTjNPbGhiYnZQM3R3QkwvdzlTc2Z4dmticEZuMlpmR1NUWFpoeWlxNHZqbVFIVzFwbkZ2R2Vsd2dVNHYzZWVSRS9Nam9DbkU3TS9RNXRocHVvZzZXR2Y3Q2JLRVJuV1puOFFzVWFKc1pTRWtnNkJ2MmptNjl5ZTU3YWI1cnJPVWFlTWxzdFRmZGxhSEFFa1VnTFgvTlhxN1JiR3d2ODJoa0hZNWIydlljWGVoMzR0VU1CTDZvczNPZFJsb29OOVpRR2tWSUlTdnhWWnBTSGtZQzIwREZOaDFCYjBvdmpmdWpsVGNrYTgxR25iVWhGR1p0UnVvVlExUlZwTU84eHR4M1lLQkxwNGRvM2hQbW5SQ1Y1aENtNDNPSWpZeDlPdjJkcUlDVjNBYU5YU0xWMWRXMzlCYWsvUkJpSURHSHpPSVcyK1ZNUGp2dnlwQmptUHYvdG1icU5IV1BTQVdPeFR5TXg2RTFnRkNadmkrNUYrQmdrZEMzTG03VTBCVTBOZnZzWGFqWmQ4c1huSWxsdkVNcmlrQ0xvSS95dXJ2ZXhORGNGMVJXL0ZoTXNvdWEwZWVyd2N6Y05tNjZwR2pIbTA1cDlEUjZsRmVKWnJ0cWVxWnVvamR4Qld5NHZINmdoeUphdXBlcmdvWCtubWRHM0pZZVJ0dENGRi9JVEk2OFRlQ0VTNVYzWTBDM3BzWUFnMVh4Y0dSTEdkNGNoUG8vNHh3aUxraWpXdGd0MC90bzVsakdCd2ZLN3I2MlBIWmZMMURwK2k3VjN3N2htT2xoYlh6UCt6aE1abjFHQ2s3S1k9IiBOb0NlcnRpZmljYWRvPSIzMDAwMTAwMDAwMDUwMDAwMzQ0NiIgRm9ybWFQYWdvPSIwMSIgU2VsbG89IkNzbGliZi9RUkgxWkVRdTJ6MTZtYklmZWMzbVh4c1Y0MjRhbVp4UHpaejVuaktaMGsyeVRwUkFMUWdWeU5sdGsxK3hwRnBRUjhqZnZ6Ty9EMUE2UTNKWnFmVXBLb1E5Z09HbGdGTmlIWTJTZ2p2L3orbFdiVlEvbmRNaEVnRko5enlGUGFoM3d4aU9kOVV6aWk3aWh3ZldvUXVabENTdXJLbWQxakdmZlBQRmpXV1JaMW9hV1U2VElsa0pSVTN2N2JIRXM5cGNQTllac21Gb1hIT3NHTnBCbGgyV3F0MlBWeVRLVHk5em1pSlMvbWcrRlRtZ21NY3pqMkpZT2VZYVU1SlJkRnpPdE92a3I4OXc0OVV1c1g1MVQ0aXFiak9keHE4Wk9mdERyVG8xazlGVS9aVXVKeDl5akU1cXdicURMY2lPWlVyS041TjZBMTJndDFteGtVQT09IiBGZWNoYT0iMjAyNC0xMS0xOVQxOTo1MToxOCIgRm9saW89IkZVTks2NzEyMjhQSDYtMTAiIFNlcmllPSJGIiBNb25lZGE9Ik1YTiIgVmVyc2lvbj0iNC4wIiB4bWxuczpjZmRpPSJodHRwOi8vd3d3LnNhdC5nb2IubXgvY2ZkLzQiPjxjZmRpOkVtaXNvciBSZmM9IkZVTks2NzEyMjhQSDYiIE5vbWJyZT0iS0FSTEEgRlVFTlRFIE5PTEFTQ08iIFJlZ2ltZW5GaXNjYWw9IjYyMSIgLz48Y2ZkaTpSZWNlcHRvciBSZmM9IkVLVTkwMDMxNzNDOSIgTm9tYnJlPSJFU0NVRUxBIEtFTVBFUiBVUkdBVEUiIERvbWljaWxpb0Zpc2NhbFJlY2VwdG9yPSI0MjUwMSIgUmVnaW1lbkZpc2NhbFJlY2VwdG9yPSI2MDEiIFVzb0NGREk9IkcwMSIgLz48Y2ZkaTpDb25jZXB0b3M+PGNmZGk6Q29uY2VwdG8gQ2xhdmVQcm9kU2Vydj0iMDEwMTAxMDEiIENhbnRpZGFkPSIxLjUiIENsYXZlVW5pZGFkPSJFNDgiIERlc2NyaXBjaW9uPSJJbnZvaWNpbmcgc29mdHdhcmUgYXMgYSBzZXJ2aWNlIiBWYWxvclVuaXRhcmlvPSIxMjI1Ljc1IiBJbXBvcnRlPSIxODM4LjYyNSIgT2JqZXRvSW1wPSIwMiIgTm9JZGVudGlmaWNhY2lvbj0iNzUwNjAyMjMwMTY5NyIgVW5pZGFkPSJVbmlkYWQgZGUgc2VydmljaW8iIERlc2N1ZW50bz0iMjU1Ljg1Ij48Y2ZkaTpJbXB1ZXN0b3M+PGNmZGk6VHJhc2xhZG9zPjxjZmRpOlRyYXNsYWRvIEJhc2U9IjE4MzguNjI1IiBJbXB1ZXN0bz0iMDAyIiBUaXBvRmFjdG9yPSJUYXNhIiBUYXNhT0N1b3RhPSIwLjE2MDAwMCIgSW1wb3J0ZT0iMjk0LjE4MDAwMCIgLz48L2NmZGk6VHJhc2xhZG9zPjwvY2ZkaTpJbXB1ZXN0b3M+PC9jZmRpOkNvbmNlcHRvPjxjZmRpOkNvbmNlcHRvIENsYXZlUHJvZFNlcnY9IjAxMDEwMTAxIiBDYW50aWRhZD0iOSIgQ2xhdmVVbmlkYWQ9IkU0OCIgRGVzY3JpcGNpb249IlNvZnR3YXJlIENvbnN1bHRhbnQiIFZhbG9yVW5pdGFyaW89IjYzNS44NSIgSW1wb3J0ZT0iNTcyMi42NSIgT2JqZXRvSW1wPSIwMiIgTm9JZGVudGlmaWNhY2lvbj0iNzUwNjAyMjMwMTY5OCIgVW5pZGFkPSJVbmlkYWQgZGUgc2VydmljaW8yIiBEZXNjdWVudG89IjI1NS44NSI+PGNmZGk6SW1wdWVzdG9zPjxjZmRpOlRyYXNsYWRvcz48Y2ZkaTpUcmFzbGFkbyBCYXNlPSI1NzIyLjY1IiBJbXB1ZXN0bz0iMDAyIiBUaXBvRmFjdG9yPSJUYXNhIiBUYXNhT0N1b3RhPSIwLjE2MDAwMCIgSW1wb3J0ZT0iOTE1LjYyNDAwMCIgLz48L2NmZGk6VHJhc2xhZG9zPjwvY2ZkaTpJbXB1ZXN0b3M+PC9jZmRpOkNvbmNlcHRvPjxjZmRpOkNvbmNlcHRvIENsYXZlUHJvZFNlcnY9IjAxMDEwMTAxIiBDYW50aWRhZD0iMi41IiBDbGF2ZVVuaWRhZD0iRTQ4IiBEZXNjcmlwY2lvbj0iQ29tcHV0ZXIgc29mdHdhcmUiIFZhbG9yVW5pdGFyaW89IjEyNTAuNzUiIEltcG9ydGU9IjMxMjYuODc1IiBPYmpldG9JbXA9IjAyIiBOb0lkZW50aWZpY2FjaW9uPSI3NTA2MDIyMzAxNjk5IiBVbmlkYWQ9IlVuaWRhZCBkZSBzZXJ2aWNpbzMiPjxjZmRpOkltcHVlc3Rvcz48Y2ZkaTpUcmFzbGFkb3M+PGNmZGk6VHJhc2xhZG8gQmFzZT0iMzEyNi44NzUiIEltcHVlc3RvPSIwMDIiIFRpcG9GYWN0b3I9IlRhc2EiIFRhc2FPQ3VvdGE9IjAuMTYwMDAwIiBJbXBvcnRlPSI1MDAuMzAwMDAwIiAvPjwvY2ZkaTpUcmFzbGFkb3M+PGNmZGk6UmV0ZW5jaW9uZXM+PGNmZGk6UmV0ZW5jaW9uIEJhc2U9IjMxMjYuODc1IiBJbXB1ZXN0bz0iMDAyIiBUaXBvRmFjdG9yPSJUYXNhIiBUYXNhT0N1b3RhPSIwLjEwNjY2NiIgSW1wb3J0ZT0iMzMzLjUzMTI0OSIgLz48L2NmZGk6UmV0ZW5jaW9uZXM+PC9jZmRpOkltcHVlc3Rvcz48L2NmZGk6Q29uY2VwdG8+PC9jZmRpOkNvbmNlcHRvcz48Y2ZkaTpJbXB1ZXN0b3MgVG90YWxJbXB1ZXN0b3NSZXRlbmlkb3M9IjMzMy41MyIgVG90YWxJbXB1ZXN0b3NUcmFzbGFkYWRvcz0iMTcxMC4xMCI+PGNmZGk6UmV0ZW5jaW9uZXM+PGNmZGk6UmV0ZW5jaW9uIEltcHVlc3RvPSIwMDIiIEltcG9ydGU9IjMzMy41MyIgLz48L2NmZGk6UmV0ZW5jaW9uZXM+PGNmZGk6VHJhc2xhZG9zPjxjZmRpOlRyYXNsYWRvIEJhc2U9IjEwNjg4LjE1IiBJbXB1ZXN0bz0iMDAyIiBUaXBvRmFjdG9yPSJUYXNhIiBUYXNhT0N1b3RhPSIwLjE2MDAwMCIgSW1wb3J0ZT0iMTcxMC4xMCIgLz48L2NmZGk6VHJhc2xhZG9zPjwvY2ZkaTpJbXB1ZXN0b3M+PGNmZGk6Q29tcGxlbWVudG8+PHRmZDpUaW1icmVGaXNjYWxEaWdpdGFsIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5zYXQuZ29iLm14L1RpbWJyZUZpc2NhbERpZ2l0YWwgaHR0cDovL3d3dy5zYXQuZ29iLm14L3NpdGlvX2ludGVybmV0L2NmZC9UaW1icmVGaXNjYWxEaWdpdGFsL1RpbWJyZUZpc2NhbERpZ2l0YWx2MTEueHNkIiBWZXJzaW9uPSIxLjEiIFVVSUQ9IjQyMzQ2NjRjLWNmOWQtNGQzOS05ZDRlLWNiNjQ0NDYwMjZkZiIgRmVjaGFUaW1icmFkbz0iMjAyNC0xMS0xOVQyMDo0NTowOSIgUmZjUHJvdkNlcnRpZj0iU1BSMTkwNjEzSTUyIiBTZWxsb0NGRD0iQ3NsaWJmL1FSSDFaRVF1MnoxNm1iSWZlYzNtWHhzVjQyNGFtWnhQelp6NW5qS1owazJ5VHBSQUxRZ1Z5Tmx0azEreHBGcFFSOGpmdnpPL0QxQTZRM0pacWZVcEtvUTlnT0dsZ0ZOaUhZMlNnanYveitsV2JWUS9uZE1oRWdGSjl6eUZQYWgzd3hpT2Q5VXppaTdpaHdmV29RdVpsQ1N1ckttZDFqR2ZmUFBGaldXUloxb2FXVTZUSWxrSlJVM3Y3YkhFczlwY1BOWVpzbUZvWEhPc0dOcEJsaDJXcXQyUFZ5VEtUeTl6bWlKUy9tZytGVG1nbU1jemoySllPZVlhVTVKUmRGek90T3Zrcjg5dzQ5VXVzWDUxVDRpcWJqT2R4cThaT2Z0RHJUbzFrOUZVL1pVdUp4OXlqRTVxd2JxRExjaU9aVXJLTjVONkExMmd0MW14a1VBPT0iIE5vQ2VydGlmaWNhZG9TQVQ9IjMwMDAxMDAwMDAwNTAwMDAzNDU2IiBTZWxsb1NBVD0iTGRwMGhVWExjVzZZbnlUVHE5TTVGUmVjc1hFQTRGUHRlb3pvcWlpYUJqZ0JQQjlxUTlCNDRMUUFDT1RnNHNHSzNLczduekFKRFZBcXllSm5tMThLN1N6dWozZ1J6S0crRTZXY3JTTzFoVVljNGVVenBLVUxUazEzZWtBSklYb2JpLy9RbEhBR0hiRHFUMEx4WC9abVcxKzhsbjB6Z3VOS3BDQ2xBRFpJOHRVWDZybFg2cmxiUjYyWmJOWjMvQ1NFK2dXZC9GbDl6OFRnRUJQdWVEbEo4cE0ybi94T0h6QXVUOXREeXRNZGpKV01GcSs4NmNIcW1EZVhYWUFWZWN6MFp1QmVVOGZuZklEaXZ0T1JMMHRsWG42V280T1h3Zisrd2hsUTVxM0hFKzQwVWpIWDZ5OVZrRkRuc29rZTl6bzhOb3lRZTIwck5WWnJFakpwSTB6aUp3PT0iIHhtbG5zOnRmZD0iaHR0cDovL3d3dy5zYXQuZ29iLm14L1RpbWJyZUZpc2NhbERpZ2l0YWwiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIC8+PC9jZmRpOkNvbXBsZW1lbnRvPjwvY2ZkaTpDb21wcm9iYW50ZT4=",
            "id": "be7ac385-61e9-4333-b39b-9e4bc9033c32",
            "createdAt": "2024-11-20T02:45:10.157585Z",
            "updatedAt": "2024-11-20T02:45:10.1575852Z"
        }
    ],
    "id": "b1da2d54-8a56-4fbc-b5ac-21a12745bd0a",
    "createdAt": "2024-11-20T02:45:10.1575731Z",
    "updatedAt": "2024-11-20T02:45:10.1575751Z"
},
"succeeded": true,
"message": "",
"details": "",
"httpStatusCode": 200
}

¿Le resultó útil esta página?