{"info":{"_postman_id":"83065773-c69e-49f1-861b-ac0b4ee965c6","name":"Factura Digital API v5","description":"<html><head></head><body><p>Bienvenido a la documentación oficial para integrar tu aplicación a nuestra API de <strong>Factura Digital México</strong> que te permitirá automatizar toda tu facturación electrónica, mantener el control de tu cobranza y estar al día con el SAT. Nuestra API cumple todos los requerimientos establecidos por el SAT y se actualiza constantemente.</p>\n<p>Nuestra API te permitirá generar y timbrar <strong>Comprobantes Fiscales Digitales</strong> en versión 4.0 con pocas líneas de código, manteniendo la misma estructura de datos establecida por el SAT, por lo que podrás basarte en el Anexo 20 oficial.</p>\n<p>Entre las funciones más destacadas tenemos:</p>\n<ul>\n<li><p>Generación y timbrado de facturas de <strong>(ingreso)</strong></p>\n</li>\n<li><p>Generación y timbrado de notas de crédito <strong>(egreso)</strong></p>\n</li>\n<li><p>Generación y timbrado de recibos de nómina <strong>(nomina)</strong></p>\n</li>\n<li><p>Traslado <strong>(traslado)</strong></p>\n</li>\n<li><p>Pagos 2.x (versión más reciente)</p>\n</li>\n<li><p>CFDIs con complementos como:</p>\n<ul>\n<li><p>Donatarias</p>\n</li>\n<li><p>IEDU</p>\n</li>\n<li><p>INE (Partidos Políticos)</p>\n</li>\n<li><p>Aerolíneas</p>\n</li>\n<li><p>Nómina</p>\n</li>\n<li><p>Detallista (AMECE)</p>\n</li>\n<li><p>Impuestos Locales</p>\n</li>\n<li><p>Comercio Exterior 2.x (versión mas reciente)</p>\n</li>\n<li><p>Hidrocarburos</p>\n</li>\n<li><p>Carta Porte versión 3.x <strong>(ingreso y traslado)</strong></p>\n</li>\n<li><p>Y muchos más...</p>\n</li>\n</ul>\n</li>\n</ul>\n<h1 id=\"endpoints\">Endpoints</h1>\n<blockquote>\n<p><strong>Productivo:</strong> </p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>https://app.facturadigital.com.mx\n\n</code></pre><blockquote>\n<p><strong>Sandbox:</strong> </p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>https://sandbox-app.facturadigital.com.mx\n\n</code></pre><h2 id=\"primer-paso-crear-tu-cuenta\">Primer paso: Crear tu cuenta</h2>\n<p>Para comenzar a interactuar con nuestro ambiente de sandbox, debes crear una cuenta directamente en nuestro portal de sandbox, ingresando a la siguiente dirección:<br><a href=\"https://sandbox-app.facturadigital.com.mx/registro\">Registro de Cuenta Sandbox</a></p>\n<p>Debes registrarte con los datos reales con los que estarás facturando, ya que el sistema te solicitará que subas tus Certificados de Sello Digital <strong>(archivos .key y .cer del CSD)</strong>. Es importante que cuentes con ellos al momento de realizar el registro.</p>\n<h2 id=\"subir-tus-certificados-csd\">Subir tus certificados CSD</h2>\n<p>Una vez que ya te registraste en nuestro portal, deberás iniciar sesión en <a href=\"https://sandbox-app.facturadigital.com.mx\"><b>https://sandbox-app.facturadigital.com.mx</b></a> con tus datos de acceso y dar click en el menú: <strong>Configuración -&gt; Certificados SAT</strong>.</p>\n<blockquote>\n<p><strong>Importante: No confundir los archivos de la e.Firma (FIEL) con los del CSD (Certificado de Sello Digital). Los que deberás subir son los del CSD.</strong> </p>\n</blockquote>\n<p>En caso de que requieras activar funciones de sincronización con el SAT, entonces si deberás subir los archivos de la e.Firma (FIEL).</p>\n<h2 id=\"obtén-tu-api-key\">Obtén tu API Key</h2>\n<p>Para obtener tu API KEY, que te permitirá realizar las peticiones a nuestro servicio, deberás ingresar al menú: <strong>Configuración -&gt; Datos fiscales</strong>, y en la parte inferior encontrarás tu <em><strong>API Key Desarrolladores</strong></em>. Cópialo en un lugar seguro.</p>\n<h2 id=\"tu-primera-petición-a-la-api\">Tu primera petición a la API</h2>\n<p>Para verificar que tu API Key está activada y funcionando correctamente, puedes realizar la primera petición. Abre tu ventana de Terminal (en Mac es la app <strong>Terminal</strong>, en Windows puedes bajar <strong>PowerShell</strong> ó utilizar <strong>Windows Terminal</strong>).</p>\n<p><strong>Copia y pega</strong> la siguiente petición en tu terminal. Esta petición te retornará el balance de créditos (timbres disponibles en tu cuenta). Deberás tener 10 disponibles.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">curl --location --request GET 'https://sandbox-app.facturadigital.com.mx/api/v5/account/balance' \\\n--header 'X-Api-Key: {{api_key_demo}}'\n\n</code></pre>\n<blockquote>\n<p>Antes de ejecutar el comando en la terminal, deberás <strong>reemplazar</strong> <em>{{api_key_demo}}</em> por tu <strong>API Key</strong> que copiaste anteriormente. </p>\n</blockquote>\n<p><strong>Deberá quedar algo así:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">curl --location --request GET 'https://sandbox-app.facturadigital.com.mx/api/v5/account/balance' \\\n--header 'X-Api-Key: QVFVSSBGDDDWQSBNSSBBUEkgS0VREUgQ09ORklHVVJBQ0nDk04='\n\n</code></pre>\n<h2 id=\"entendiendo-la-respuesta\">Entendiendo la respuesta</h2>\n<p>Nuestra API REST se comunica utilizando el lenguaje <strong>JSON</strong>, el cual es un simple string con estructura que te permitirá enviar y recibir cualquier tipo de dato de forma muy bien estructurada.</p>\n<blockquote>\n<p>Si eres principiante en el lenguaje JSON, te recomiendo leer el siguiente artículo de Mozilla:<br><a href=\"https://developer.mozilla.org/es/docs/Learn/JavaScript/Objects/JSON\">¿Que es JSON y como se utiliza?</a> </p>\n</blockquote>\n<p>Una vez que entendamos JSON, podemos leer la respuesta que obtuvimos a de la petición anterior:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">{\n  \"message\": \"13540 credits available.\",\n  \"balance\": 13540,\n  \"code\": 200\n}\n\n</code></pre>\n<p>Podemos ver que el servicio nos retorna un mensaje (message) entendible por el usuario, un balance (tus créditos disponibles) y un código <strong>200</strong> que significa <strong>éxito</strong>.</p>\n<h2 id=\"crea-tu-primer-cfdi\">Crea tu primer CFDI</h2>\n<p>Comencemos creando nuestro primer CFDI, en donde básicamente debemos armar nuestro string JSON (en el lenguaje de nuestra preferencia).</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Endpoints","slug":"endpoints"}],"owner":"8359405","collectionId":"83065773-c69e-49f1-861b-ac0b4ee965c6","publishedId":"SVYrrdM9","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"1277D7"},"publishDate":"2020-09-18T06:45:09.000Z"},"item":[{"name":"Conexión y Cuenta","item":[{"name":"Obtener Api Key","id":"c112682f-0807-422a-b0c4-78c88116bd47","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"api-usuario","value":"","description":"<p>RFC o nombre de usuario que registraste en la plataforma</p>\n"},{"key":"api-password","value":"","description":"<p>Contraseña que registraste en la plataforma</p>\n"}],"url":"{{URI}}/account/authorize","description":"<p>Verifica el usuario y contraseña de una cuenta, y devuelve el X-Api-Key infinito, que deberá ser utilizado en cualquier otra petición de la API como método de autenticación. </p>\n<p>El X-Api-Key se deberá enviar en los Headers de todas las demás peticiones, manteniendo el formato camel case, es decir, el nombre del header debe ser exactamente \"X-Api-Key\", con la primera letra en mayúscula y las demás en minúsculas.</p>\n","urlObject":{"path":["account","authorize"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"ce9fb6bf-2878-4eab-85e1-191ae76bb0c5","name":"Ejemplo para obtener mi X-Api-Key","originalRequest":{"method":"GET","header":[{"key":"api-usuario","value":"miusuario","description":"RFC o Usuario que utilizaste en el registro de tu cuenta"},{"key":"api-password","value":"demo","description":"Contraseña de registro de tu cuenta"}],"url":"{{URI}}/account/authorize"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"323"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 18 Sep 2020 06:52:03 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Successful connection\",\n    \"code\": 200,\n    \"x_api_key\": \"Q0FDWDc2MDUxMDFQOC02MmY3YjJkOS03OGRlLTRjZmUtYjExYi01NGU4ODAyMGY5NWM=\",\n    \"account\": {\n        \"company\": \"APIExpress SA de CV\",\n        \"rfc\": \"CACX7605101P8\",\n        \"username\": \"demo33\",\n        \"contact\": \"Demo WS1\",\n        \"email\": \"soporte@facturadigital.com.mx\",\n        \"active\": \"1\",\n        \"last_seen\": \"2020-09-17 23:59:11\"\n    }\n}"}],"_postman_id":"c112682f-0807-422a-b0c4-78c88116bd47"},{"name":"Obtener el saldo de créditos","id":"1b51c361-cbf9-4223-ad82-90c7762918b6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"url":"{{URI}}/account/balance","description":"<p>Devuelve los créditos disponibles de la cuenta. Cada crédito es equivalente a un timbre. Solo el método de Crear nuevo CFDI consume timbre.</p>\n<p>Para autenticarte, debes enviar únicamente el header \"X-Api-Key\".</p>\n","urlObject":{"path":["account","balance"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"ffcd656a-d7b4-489d-814c-4fe64e6edf92","name":"Ejemplo: Obtener el saldo de créditos (timbres) disponibles","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"url":"{{URI}}/account/balance"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Sep 2020 07:26:06 GMT"},{"key":"Server","value":"Apache"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Upgrade","value":"h2,h2c"},{"key":"Connection","value":"Upgrade, Keep-Alive"},{"key":"Vary","value":"User-Agent"},{"key":"Content-Length","value":"65"},{"key":"Keep-Alive","value":"timeout=5, max=200"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"13540 credits available.\",\n    \"balance\": 13540,\n    \"code\": 200\n}"}],"_postman_id":"1b51c361-cbf9-4223-ad82-90c7762918b6"}],"id":"3586b11b-7feb-4331-8d96-b813706f5313","description":"<p>Methods for account management like add new accounts, get api tokens, set the public certificate and private key.</p>\n<p>Métodos para el manejo de cuentas, como obtener el token (X-Api-Key), registrar nuevas cuentas, configurar certificados de sello digital, entre otras funciones.</p>\n","event":[{"listen":"prerequest","script":{"id":"1895450d-e7e8-4a36-85b8-a7b1ea5511e8","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"6e1a4b6c-c604-411b-92ac-7ebeae57adea","type":"text/javascript","exec":[""]}}],"_postman_id":"3586b11b-7feb-4331-8d96-b813706f5313"},{"name":"Documentos","item":[{"name":"Crear CFDI via JSON","id":"9d890302-5f91-4e6a-aab2-9a237b06ac51","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n  \"Serie\":\"CFDI40-\",\n  \"Folio\":\"67404\",\n  \"Fecha\":\"AUTO\",\n  \"FormaPago\":\"99\",\n  \"CondicionesDePago\":null,\n  \"SubTotal\":\"463.00\",\n  \"Descuento\":\"0.00\",\n  \"Moneda\":\"MXN\",\n  \"TipoCambio\":\"1\",\n  \"Total\":\"537.08\",\n  \"TipoDeComprobante\":\"I\",\n  \"MetodoPago\":\"PPD\",\n  \"LugarExpedicion\":\"64710\",\n  \"Version\":\"4.0\",\n  \"Exportacion\":\"01\",\n  \"Emisor\":{\n    \"RegimenFiscal\":\"601\"\n  },\n  \"Receptor\":{\n    \"Rfc\":\"NDI120326HF5\",\n    \"Nombre\":\"NOVATECH DIGITAL\",\n    \"UsoCFDI\":\"G03\",\n    \"RegimenFiscalReceptor\":\"601\",\n    \"DomicilioFiscalReceptor\":\"66265\"\n  },\n  \"Conceptos\":[\n    {\n      \"ClaveProdServ\":\"01010101\",\n      \"NoIdentificacion\":\"1\",\n      \"Cantidad\":\"1\",\n      \"ClaveUnidad\":\"H87\",\n      \"Unidad\":\"PZA\",\n      \"Descripcion\":\"Producto 1\",\n      \"ValorUnitario\":\"159.00\",\n      \"Importe\":\"159.00\",\n      \"Descuento\":\"0.00\",\n      \"ObjetoImp\":\"02\",\n      \"Impuestos\":{\n        \"Traslados\":[\n          {\n            \"Base\":\"159.00\",\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"25.44\"\n          }\n        ]\n      }\n    },{\n      \n      \"ClaveProdServ\":\"01010101\",\n      \"NoIdentificacion\":\"2\",\n      \"Cantidad\":\"1\",\n      \"ClaveUnidad\":\"H87\",\n      \"Unidad\":\"PZA\",\n      \"Descripcion\":\"Producto 2\",\n      \"ValorUnitario\":\"180.00\",\n      \"Importe\":\"180.00\",\n      \"Descuento\":\"0.00\",\n      \"ObjetoImp\":\"02\",\n      \"Impuestos\":{\n        \"Traslados\":[\n          {\n            \"Base\":\"180.00\",\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"28.80\"\n          }\n        ]\n      }\n    },{\n      \n      \"ClaveProdServ\":\"01010101\",\n      \"NoIdentificacion\":\"3\",\n      \"Cantidad\":\"1\",\n      \"ClaveUnidad\":\"H87\",\n      \"Unidad\":\"PZA\",\n      \"Descripcion\":\"Producto 3\",\n      \"ValorUnitario\":\"124.00\",\n      \"Importe\":\"124.00\",\n      \"Descuento\":\"0.00\",\n      \"ObjetoImp\":\"02\",\n      \"Impuestos\":{\n        \"Traslados\":[\n          {\n            \"Base\":\"124.00\",\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"19.84\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\":{\n    \"TotalImpuestosTrasladados\":\"74.08\",\n    \"Traslados\":[\n      {\n        \"Base\":\"463.00\",\n        \"Impuesto\":\"002\",\n        \"TipoFactor\":\"Tasa\",\n        \"TasaOCuota\":\"0.160000\",\n        \"Importe\":\"74.08\"\n      }\n    ]\n  }\n}","description":"<p>Cadena JSON con los datos del CFDI que deseas timbrar. Puedes solicitarnos ejemplos de la estructura de este JSON en <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n","type":"text"}]},"url":"{{URI}}/invoice/create","description":"<h1 id=\"guía-completa-generación-de-cfdi-40\">Guía Completa: Generación de CFDI 4.0</h1>\n<h2 id=\"introducción\">Introducción</h2>\n<p>La API de FacturaDigital te permite generar Comprobantes Fiscales Digitales por Internet (CFDI) versión 4.0 de cualquier tipo (Ingreso, Egreso, Traslado, Nómina, Pago) mediante una estructura JSON simple y estandarizada.</p>\n<h3 id=\"¿qué-hace-la-api-por-ti\">¿Qué hace la API por ti?</h3>\n<p>Nuestra solución automatiza todos los procesos complejos de generación de CFDI:</p>\n<ul>\n<li><p>✅ <strong>Validación automática</strong> de datos fiscales según normativa SAT</p>\n</li>\n<li><p>✅ <strong>Estructuración XML</strong> conforme al esquema oficial</p>\n</li>\n<li><p>✅ <strong>Generación de cadena original</strong> y sello digital</p>\n</li>\n<li><p>✅ <strong>Timbrado</strong> con Proveedor Autorizado de Certificación (PAC)</p>\n</li>\n<li><p>✅ <strong>Verificación</strong> de validez fiscal</p>\n</li>\n<li><p>✅ <strong>Generación de PDF</strong> con diseño personalizable</p>\n</li>\n<li><p>✅ <strong>Manejo de codificación UTF-8</strong> y caracteres especiales</p>\n</li>\n</ul>\n<h3 id=\"ventajas-de-usar-nuestra-api\">Ventajas de usar nuestra API</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Ventaja</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Generación en un solo paso</strong></td>\n<td>Envía un JSON y recibe tu CFDI timbrado listo</td>\n</tr>\n<tr>\n<td><strong>Sin complejidad técnica</strong></td>\n<td>No necesitas manejar sellado, XML, o certificados</td>\n</tr>\n<tr>\n<td><strong>PDF automático</strong></td>\n<td>Generación y almacenamiento de PDF incluido</td>\n</tr>\n<tr>\n<td><strong>Infraestructura optimizada</strong></td>\n<td>Servidores de alta disponibilidad y respaldo automático</td>\n</tr>\n<tr>\n<td><strong>Actualizaciones automáticas</strong></td>\n<td>Siempre compatible con las últimas normativas del SAT</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"requisitos-previos\">Requisitos Previos</h2>\n<h3 id=\"datos-fiscales-del-receptor\">Datos Fiscales del Receptor</h3>\n<p>Antes de generar un CFDI 4.0, debes contar con los siguientes datos fiscales válidos del receptor (cliente):</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n<th>Fuente</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Nombre o Razón Social</strong></td>\n<td>Nombre completo sin abreviaciones</td>\n<td>Constancia de Situación Fiscal o CIF</td>\n</tr>\n<tr>\n<td><strong>RFC</strong></td>\n<td>Registro Federal de Contribuyentes (13 caracteres)</td>\n<td>Constancia de Situación Fiscal</td>\n</tr>\n<tr>\n<td><strong>Código Postal</strong></td>\n<td>Código postal del domicilio fiscal</td>\n<td>Constancia de Situación Fiscal</td>\n</tr>\n<tr>\n<td><strong>Régimen Fiscal</strong></td>\n<td>Clave del régimen fiscal según catálogo SAT</td>\n<td>Constancia de Situación Fiscal</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"⚠️-reglas-importantes-para-nombres\">⚠️ Reglas Importantes para Nombres</h3>\n<p><strong>Para Personas Morales:</strong> Debes eliminar las denominaciones legales (S.A. de C.V., S. de R.L., S.C., SAPI, SOFOM, etc.)</p>\n<p><strong>Para Personas Físicas:</strong> Debes incluir el nombre completo con apellidos.</p>\n<h4 id=\"ejemplos-de-nombres-correctos-e-incorrectos\">Ejemplos de Nombres Correctos e Incorrectos</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>❌ Incorrecto</th>\n<th>✅ Correcto</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><del>CEMEX, S.A.B. DE C.V.</del></td>\n<td>CEMEX</td>\n</tr>\n<tr>\n<td><del>Cadena Comercial OXXO, S.A. de C.V.</del></td>\n<td>OXXO</td>\n</tr>\n<tr>\n<td><del>JUAN PEREZ</del></td>\n<td>JUAN IGNACIO PEREZ ROBLEDO</td>\n</tr>\n<tr>\n<td><del>CUPRUM S.A. DE C.V.</del></td>\n<td>CUPRUM</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"estructura-base-del-json\">Estructura Base del JSON</h2>\n<h3 id=\"campos-principales-del-cfdi-40\">Campos Principales del CFDI 4.0</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"F\",\n  \"Folio\": \"987750\",\n  \"Fecha\": \"2024-12-20T10:30:00\",\n  \"FormaPago\": \"01\",\n  \"CondicionesDePago\": \"CONTADO\",\n  \"SubTotal\": \"200.00\",\n  \"Descuento\": null,\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"232.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"67150\"\n}\n\n</code></pre>\n<h3 id=\"explicación-de-campos-principales\">Explicación de Campos Principales</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores Comunes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Version</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Versión del CFDI</td>\n<td><code>\"4.0\"</code></td>\n</tr>\n<tr>\n<td><code>Exportacion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Indica si aplica exportación</td>\n<td><code>\"01\"</code> (No aplica), <code>\"02\"</code> (Temporal), <code>\"03\"</code> (Definitiva)</td>\n</tr>\n<tr>\n<td><code>Serie</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Serie del comprobante</td>\n<td>Alfanumérico (ej: \"F\", \"A\", \"INV\")</td>\n</tr>\n<tr>\n<td><code>Folio</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Folio del comprobante</td>\n<td>Numérico o alfanumérico</td>\n</tr>\n<tr>\n<td><code>Fecha</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Fecha y hora de emisión</td>\n<td>Formato ISO: <code>\"YYYY-MM-DDTHH:mm:ss\"</code> o <code>\"AUTO\"</code></td>\n</tr>\n<tr>\n<td><code>FormaPago</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Forma de pago</td>\n<td>Ver catálogo c_FormaPago del SAT</td>\n</tr>\n<tr>\n<td><code>CondicionesDePago</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Condiciones de pago</td>\n<td>Texto libre (ej: \"CONTADO\", \"30 DÍAS\")</td>\n</tr>\n<tr>\n<td><code>SubTotal</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Subtotal sin impuestos</td>\n<td>Decimal con 2 decimales</td>\n</tr>\n<tr>\n<td><code>Descuento</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Descuento global</td>\n<td>Decimal con 2 decimales o <code>null</code></td>\n</tr>\n<tr>\n<td><code>Moneda</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Código de moneda</td>\n<td><code>\"MXN\"</code>, <code>\"USD\"</code>, <code>\"EUR\"</code>, etc.</td>\n</tr>\n<tr>\n<td><code>TipoCambio</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de cambio</td>\n<td><code>\"1\"</code> para MXN, decimal para otras</td>\n</tr>\n<tr>\n<td><code>Total</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Total del comprobante</td>\n<td>Decimal con 2 decimales</td>\n</tr>\n<tr>\n<td><code>TipoDeComprobante</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de comprobante</td>\n<td><code>\"I\"</code> (Ingreso), <code>\"E\"</code> (Egreso), <code>\"T\"</code> (Traslado), <code>\"N\"</code> (Nómina), <code>\"P\"</code> (Pago)</td>\n</tr>\n<tr>\n<td><code>MetodoPago</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Método de pago</td>\n<td><code>\"PUE\"</code> (Pago en una exhibición), <code>\"PPD\"</code> (Pago en parcialidades)</td>\n</tr>\n<tr>\n<td><code>LugarExpedicion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Código postal de expedición</td>\n<td>Código postal de 5 dígitos</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"ejemplo-1-factura-de-ingreso-simple\">Ejemplo 1: Factura de Ingreso Simple</h2>\n<p>Este es el ejemplo más básico para generar una factura de ingreso con IVA.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"F\",\n  \"Folio\": \"987750\",\n  \"Fecha\": \"2024-12-20T10:30:00\",\n  \"FormaPago\": \"01\",\n  \"CondicionesDePago\": \"CONTADO\",\n  \"SubTotal\": \"200.00\",\n  \"Descuento\": null,\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"232.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"67150\",\n  \"LeyendaFolio\": \"FACTURA\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"G03\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\",\n    \"Calle\": \"Palmas\",\n    \"NoExt\": \"123\",\n    \"Colonia\": \"Anahuac\",\n    \"Municipio\": \"Apodaca\",\n    \"Estado\": \"Nuevo Leon\",\n    \"Pais\": \"México\",\n    \"CodigoPostal\": \"66265\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"02\",\n      \"ClaveProdServ\": \"01010101\",\n      \"NoIdentificacion\": \"PROD-001\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"PIEZA\",\n      \"Descripcion\": \"Mezcal Oaxaca Premium\",\n      \"ValorUnitario\": \"200.00\",\n      \"Importe\": \"200.00\",\n      \"Descuento\": null,\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"200.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"32.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"32.00\",\n    \"Traslados\": [\n      {\n        \"Base\": \"200.00\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"32.00\"\n      }\n    ]\n  }\n}\n\n</code></pre>\n<h3 id=\"explicación-de-nodos\">Explicación de Nodos</h3>\n<h4 id=\"nodo-emisor\">Nodo <code>Emisor</code></h4>\n<p>Contiene los datos del emisor del CFDI. Solo requiere el régimen fiscal.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Emisor\": {\n  \"RegimenFiscal\": \"612\"\n}\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>RegimenFiscal</code></td>\n<td>Clave del régimen fiscal según catálogo c_RegimenFiscal del SAT</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-receptor\">Nodo <code>Receptor</code></h4>\n<p>Contiene los datos fiscales del receptor (cliente).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Receptor\": {\n  \"Rfc\": \"XAXX010101000\",\n  \"Nombre\": \"NOVATECH DIGITAL\",\n  \"UsoCFDI\": \"G03\",\n  \"DomicilioFiscalReceptor\": \"66265\",\n  \"RegimenFiscalReceptor\": \"601\",\n  \"Calle\": \"Palmas\",\n  \"NoExt\": \"123\",\n  \"Colonia\": \"Anahuac\",\n  \"Municipio\": \"Apodaca\",\n  \"Estado\": \"Nuevo Leon\",\n  \"Pais\": \"México\",\n  \"CodigoPostal\": \"66265\"\n}\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Rfc</code></td>\n<td>✅</td>\n<td>RFC del receptor (13 caracteres)</td>\n</tr>\n<tr>\n<td><code>Nombre</code></td>\n<td>✅</td>\n<td>Nombre o razón social completa</td>\n</tr>\n<tr>\n<td><code>UsoCFDI</code></td>\n<td>✅</td>\n<td>Uso que le dará el receptor al CFDI (ver catálogo c_UsoCFDI)</td>\n</tr>\n<tr>\n<td><code>DomicilioFiscalReceptor</code></td>\n<td>✅</td>\n<td>Código postal del domicilio fiscal</td>\n</tr>\n<tr>\n<td><code>RegimenFiscalReceptor</code></td>\n<td>✅</td>\n<td>Régimen fiscal del receptor</td>\n</tr>\n<tr>\n<td><code>Calle</code>, <code>NoExt</code>, <code>Colonia</code>, etc.</td>\n<td>❌</td>\n<td>Datos de domicilio (opcionales pero recomendados)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-conceptos\">Nodo <code>Conceptos</code></h4>\n<p>Array que contiene los productos o servicios facturados.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Conceptos\": [\n  {\n    \"ObjetoImp\": \"02\",\n    \"ClaveProdServ\": \"01010101\",\n    \"Cantidad\": \"1\",\n    \"ClaveUnidad\": \"H87\",\n    \"Unidad\": \"PIEZA\",\n    \"Descripcion\": \"Mezcal Oaxaca Premium\",\n    \"ValorUnitario\": \"200.00\",\n    \"Importe\": \"200.00\",\n    \"Impuestos\": {\n      \"Traslados\": [\n        {\n          \"Base\": \"200.00\",\n          \"Impuesto\": \"002\",\n          \"TipoFactor\": \"Tasa\",\n          \"TasaOCuota\": \"0.160000\",\n          \"Importe\": \"32.00\"\n        }\n      ]\n    }\n  }\n]\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ObjetoImp</code></td>\n<td>✅</td>\n<td>Objeto del impuesto: <code>\"01\"</code> (No objeto), <code>\"02\"</code> (Sí objeto), <code>\"03\"</code> (Sí objeto con IVA a tasa 0%)</td>\n</tr>\n<tr>\n<td><code>ClaveProdServ</code></td>\n<td>✅</td>\n<td>Clave del producto o servicio según catálogo c_ClaveProdServ</td>\n</tr>\n<tr>\n<td><code>Cantidad</code></td>\n<td>✅</td>\n<td>Cantidad del concepto</td>\n</tr>\n<tr>\n<td><code>ClaveUnidad</code></td>\n<td>✅</td>\n<td>Clave de unidad de medida según catálogo c_ClaveUnidad</td>\n</tr>\n<tr>\n<td><code>Unidad</code></td>\n<td>❌</td>\n<td>Descripción de la unidad de medida</td>\n</tr>\n<tr>\n<td><code>Descripcion</code></td>\n<td>✅</td>\n<td>Descripción del producto o servicio (máx. 1000 caracteres)</td>\n</tr>\n<tr>\n<td><code>ValorUnitario</code></td>\n<td>✅</td>\n<td>Precio unitario sin impuestos</td>\n</tr>\n<tr>\n<td><code>Importe</code></td>\n<td>✅</td>\n<td>Importe total del concepto (Cantidad × ValorUnitario)</td>\n</tr>\n<tr>\n<td><code>Impuestos</code></td>\n<td>✅</td>\n<td>Nodo de impuestos del concepto</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"impuestos-en-conceptos\">Impuestos en Conceptos</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Impuestos\": {\n  \"Traslados\": [\n    {\n      \"Base\": \"200.00\",\n      \"Impuesto\": \"002\",\n      \"TipoFactor\": \"Tasa\",\n      \"TasaOCuota\": \"0.160000\",\n      \"Importe\": \"32.00\"\n    }\n  ]\n}\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n<th>Valores</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Base</code></td>\n<td>Base sobre la que se calcula el impuesto</td>\n<td>Decimal</td>\n</tr>\n<tr>\n<td><code>Impuesto</code></td>\n<td>Tipo de impuesto: <code>\"001\"</code> (ISR), <code>\"002\"</code> (IVA), <code>\"003\"</code> (IEPS)</td>\n<td>String</td>\n</tr>\n<tr>\n<td><code>TipoFactor</code></td>\n<td>Tipo de factor: <code>\"Tasa\"</code>, <code>\"Cuota\"</code>, <code>\"Exento\"</code></td>\n<td>String</td>\n</tr>\n<tr>\n<td><code>TasaOCuota</code></td>\n<td>Tasa o cuota del impuesto</td>\n<td>Decimal (ej: <code>\"0.160000\"</code> para 16%)</td>\n</tr>\n<tr>\n<td><code>Importe</code></td>\n<td>Monto del impuesto</td>\n<td>Decimal</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-impuestos-nivel-raíz\">Nodo <code>Impuestos</code> (Nivel Raíz)</h4>\n<p>Agrupa los totales de impuestos del comprobante.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Impuestos\": {\n  \"TotalImpuestosTrasladados\": \"32.00\",\n  \"Traslados\": [\n    {\n      \"Base\": \"200.00\",\n      \"Impuesto\": \"002\",\n      \"TipoFactor\": \"Tasa\",\n      \"TasaOCuota\": \"0.160000\",\n      \"Importe\": \"32.00\"\n    }\n  ]\n}\n\n</code></pre>\n<hr />\n<h2 id=\"campos-especiales-helpers\">Campos Especiales (Helpers)</h2>\n<p>Estos campos se incluyen a nivel raíz del JSON y permiten personalizar el comportamiento de la generación del CFDI.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descripción</th>\n<th>Ejemplo</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Fecha</code></td>\n<td>String</td>\n<td><code>\"AUTO\"</code> asigna la fecha del servidor. <strong>⚠️ Precaución:</strong> Usa formato ISO para evitar duplicados por doble clic</td>\n<td><code>\"AUTO\"</code> o <code>\"2024-12-20T10:30:00\"</code></td>\n</tr>\n<tr>\n<td><code>printxml</code></td>\n<td>Boolean</td>\n<td>Si es <code>true</code>, retorna el XML en formato HTML antes de timbrar (útil para depuración)</td>\n<td><code>true</code> o <code>false</code></td>\n</tr>\n<tr>\n<td><code>config_plantilla_id</code></td>\n<td>String</td>\n<td>ID de la plantilla PDF personalizada. Configúrala en el panel de administración</td>\n<td><code>\"factura_default\"</code></td>\n</tr>\n<tr>\n<td><code>LeyendaFolio</code></td>\n<td>String</td>\n<td>Texto que aparece en la parte superior derecha del PDF</td>\n<td><code>\"FACTURA\"</code>, <code>\"NOTA DE CRÉDITO\"</code></td>\n</tr>\n<tr>\n<td><code>EstatusCobranza</code></td>\n<td>Integer</td>\n<td>Estado de cobranza: <code>1</code> (Por cobrar), <code>2</code> (Cobrado parcialmente), <code>3</code> (Cobrado totalmente)</td>\n<td><code>1</code>, <code>2</code>, <code>3</code></td>\n</tr>\n<tr>\n<td><code>MontoCobrado</code></td>\n<td>String</td>\n<td>Monto inicial cobrado (para anticipos)</td>\n<td><code>\"100.00\"</code></td>\n</tr>\n<tr>\n<td><code>SaldoInsoluto</code></td>\n<td>String</td>\n<td>Saldo pendiente de cobro</td>\n<td><code>\"50.00\"</code></td>\n</tr>\n<tr>\n<td><code>extra1</code> a <code>extra30</code></td>\n<td>String</td>\n<td>Campos personalizados para agregar información adicional al PDF</td>\n<td><code>\"Vendido por: Juan Pérez\"</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"⚠️-importante-sobre-el-campo-fecha\">⚠️ Importante sobre el campo <code>Fecha</code></h3>\n<ul>\n<li><p><strong>Usar</strong> <strong><code>\"AUTO\"</code>****:</strong> La fecha se asigna automáticamente desde el servidor. <strong>Riesgo:</strong> Si tu aplicación no controla doble clic, puedes generar facturas duplicadas.</p>\n</li>\n<li><p><strong>Recomendado:</strong> Usar formato ISO <code>\"YYYY-MM-DDTHH:mm:ss\"</code> para tener control total sobre la fecha de emisión.</p>\n</li>\n</ul>\n<hr />\n<h2 id=\"campos-opcionales\">Campos Opcionales</h2>\n<p>Los siguientes campos y nodos son <strong>opcionales</strong> y pueden omitirse si no aplican:</p>\n<h3 id=\"nivel-raíz\">Nivel Raíz</h3>\n<ul>\n<li><p><code>Serie</code></p>\n</li>\n<li><p><code>Folio</code></p>\n</li>\n<li><p><code>CondicionesDePago</code></p>\n</li>\n<li><p><code>Descuento</code></p>\n</li>\n<li><p><code>LeyendaFolio</code></p>\n</li>\n<li><p><code>Confirmacion</code></p>\n</li>\n<li><p><code>CfdiRelacionadosTipoRelacion</code></p>\n</li>\n<li><p><code>CfdiRelacionados</code></p>\n</li>\n<li><p><code>extra1</code> a <code>extra30</code></p>\n</li>\n</ul>\n<h3 id=\"nodo-receptor-1\">Nodo Receptor</h3>\n<ul>\n<li><p><code>ResidenciaFiscal</code></p>\n</li>\n<li><p><code>NumRegIdTrib</code></p>\n</li>\n<li><p><code>Calle</code>, <code>NoExt</code>, <code>NoInt</code>, <code>Colonia</code>, <code>Localidad</code>, <code>Referencia</code>, <code>Municipio</code>, <code>Estado</code>, <code>Pais</code>, <code>CodigoPostal</code></p>\n</li>\n</ul>\n<h3 id=\"nodo-conceptos-1\">Nodo Conceptos</h3>\n<ul>\n<li><p><code>NoIdentificacion</code></p>\n</li>\n<li><p><code>Unidad</code></p>\n</li>\n<li><p><code>Descuento</code></p>\n</li>\n<li><p><code>extra1</code> a <code>extra10</code></p>\n</li>\n</ul>\n<hr />\n<h2 id=\"ejemplo-2-factura-de-ingreso-con-complemento-carta-porte-31\">Ejemplo 2: Factura de Ingreso con Complemento Carta Porte 3.1</h2>\n<p>El complemento de Carta Porte se utiliza para amparar el traslado de mercancías. Es obligatorio cuando realizas operaciones de transporte de bienes.</p>\n<blockquote>\n<p><strong>Nota:</strong> Este complemento es comúnmente utilizado por empresas de transporte, logística, o cualquier negocio que realice fletes y traslados de mercancía. </p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"A\",\n  \"Folio\": \"50\",\n  \"Fecha\": \"2024-12-20T12:00:00\",\n  \"FormaPago\": \"99\",\n  \"SubTotal\": \"100.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"116.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PPD\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"G03\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\",\n    \"Calle\": \"Palmas\",\n    \"NoExt\": \"123\",\n    \"Colonia\": \"Anahuac\",\n    \"Municipio\": \"Apodaca\",\n    \"Estado\": \"Nuevo Leon\",\n    \"Pais\": \"México\",\n    \"CodigoPostal\": \"66265\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"02\",\n      \"ClaveProdServ\": \"78101500\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"SERVICIO\",\n      \"Descripcion\": \"Flete de Monterrey a Saltillo\",\n      \"ValorUnitario\": \"100.00\",\n      \"Importe\": \"100.00\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"100.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"16.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"16.00\",\n    \"Traslados\": [\n      {\n        \"Base\": \"100.00\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"16.00\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"CartaPorte30\": {\n      \"Version\": \"3.1\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"20\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n          \"NombreRemitenteDestinatario\": \"EMPRESA REMITENTE SA DE CV\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T12:00:00\",\n          \"DistanciaRecorrida\": \"50\",\n          \"Domicilio\": {\n            \"Calle\": \"Av. Principal\",\n            \"NumeroExterior\": \"100\",\n            \"Colonia\": \"Centro\",\n            \"Municipio\": \"039\",\n            \"Estado\": \"NLE\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"64000\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"NOVATECH DIGITAL\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T16:00:00\",\n          \"DistanciaRecorrida\": \"50\",\n          \"Domicilio\": {\n            \"Calle\": \"Palmas\",\n            \"NumeroExterior\": \"123\",\n            \"Colonia\": \"Anahuac\",\n            \"Municipio\": \"039\",\n            \"Estado\": \"NLE\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"66265\"\n          }\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"150.00\",\n        \"UnidadPeso\": \"KGM\",\n        \"PesoNetoTotal\": \"140.00\",\n        \"NumTotalMercancias\": \"1\",\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"10216100\",\n            \"Descripcion\": \"Productos diversos\",\n            \"Cantidad\": \"10\",\n            \"ClaveUnidad\": \"H87\",\n            \"Unidad\": \"PIEZAS\",\n            \"PesoEnKg\": \"150.00\",\n            \"ValorMercancia\": \"5000.00\",\n            \"Moneda\": \"MXN\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"10\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          }\n        ],\n        \"Autotransporte\": {\n          \"PermSCT\": \"TPAF01\",\n          \"NumPermisoSCT\": \"1345648745\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"C2\",\n            \"PlacaVM\": \"ABC123D\",\n            \"AnioModeloVM\": \"2024\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"GNP SEGUROS\",\n            \"PolizaRespCivil\": \"7174005154\"\n          }\n        }\n      },\n      \"FiguraTransporte\": [\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"GOLJ860719Q32\",\n          \"NumLicencia\": \"78411134546\",\n          \"NombreFigura\": \"ANTONIO AGUIRRE LOPEZ\"\n        }\n      ]\n    }\n  }\n}\n\n</code></pre>\n<h3 id=\"explicación-del-complemento-carta-porte-31\">Explicación del Complemento Carta Porte 3.1</h3>\n<h4 id=\"nodo-cartaporte30\">Nodo <code>CartaPorte30</code></h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Version</code></td>\n<td>✅</td>\n<td>Versión del complemento: <code>\"3.1\"</code></td>\n</tr>\n<tr>\n<td><code>TranspInternac</code></td>\n<td>✅</td>\n<td>Indica si es transporte internacional: <code>\"Sí\"</code> o <code>\"No\"</code></td>\n</tr>\n<tr>\n<td><code>TotalDistRec</code></td>\n<td>✅</td>\n<td>Distancia total recorrida en kilómetros</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-ubicaciones\">Nodo <code>Ubicaciones</code></h4>\n<p>Array que contiene los puntos de origen y destino del traslado.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoUbicacion</code></td>\n<td><code>\"Origen\"</code> o <code>\"Destino\"</code></td>\n</tr>\n<tr>\n<td><code>IDUbicacion</code></td>\n<td>Identificador único de la ubicación (ej: <code>\"OR000001\"</code>)</td>\n</tr>\n<tr>\n<td><code>RFCRemitenteDestinatario</code></td>\n<td>RFC del remitente o destinatario</td>\n</tr>\n<tr>\n<td><code>NombreRemitenteDestinatario</code></td>\n<td>Nombre completo sin denominaciones legales</td>\n</tr>\n<tr>\n<td><code>FechaHoraSalidaLlegada</code></td>\n<td>Fecha y hora de salida o llegada</td>\n</tr>\n<tr>\n<td><code>DistanciaRecorrida</code></td>\n<td>Distancia en kilómetros desde la ubicación anterior</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-mercancias\">Nodo <code>Mercancias</code></h4>\n<p>Contiene la información de las mercancías transportadas.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PesoBrutoTotal</code></td>\n<td>Peso bruto total en la unidad especificada</td>\n</tr>\n<tr>\n<td><code>UnidadPeso</code></td>\n<td>Unidad de peso: <code>\"KGM\"</code> (kilogramos), <code>\"LTR\"</code> (litros), etc.</td>\n</tr>\n<tr>\n<td><code>PesoNetoTotal</code></td>\n<td>Peso neto total</td>\n</tr>\n<tr>\n<td><code>NumTotalMercancias</code></td>\n<td>Número total de tipos de mercancías</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-autotransporte\">Nodo <code>Autotransporte</code></h4>\n<p>Información del vehículo de autotransporte.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PermSCT</code></td>\n<td>Permiso SCT según catálogo (ej: <code>\"TPAF01\"</code> para autotransporte federal)</td>\n</tr>\n<tr>\n<td><code>NumPermisoSCT</code></td>\n<td>Número de permiso SCT</td>\n</tr>\n<tr>\n<td><code>IdentificacionVehicular</code></td>\n<td>Datos del vehículo (configuración, placa, año)</td>\n</tr>\n<tr>\n<td><code>Seguros</code></td>\n<td>Información de seguros (responsabilidad civil, etc.)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-figuratransporte\">Nodo <code>FiguraTransporte</code></h4>\n<p>Array con las figuras involucradas en el transporte (operador, propietario, etc.).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoFigura</code></td>\n<td>Tipo: <code>\"01\"</code> (Operador), <code>\"02\"</code> (Propietario), etc.</td>\n</tr>\n<tr>\n<td><code>RFCFigura</code></td>\n<td>RFC de la figura</td>\n</tr>\n<tr>\n<td><code>NumLicencia</code></td>\n<td>Número de licencia de conducir</td>\n</tr>\n<tr>\n<td><code>NombreFigura</code></td>\n<td>Nombre completo de la figura</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"ejemplo-3-comprobante-de-traslado-con-carta-porte-31\">Ejemplo 3: Comprobante de Traslado con Carta Porte 3.1</h2>\n<p>El comprobante de <strong>Traslado</strong> (<code>TipoDeComprobante: \"T\"</code>) se utiliza exclusivamente para amparar el movimiento de mercancía de un lugar a otro <strong>sin realizar cobro alguno</strong>. Todos los valores monetarios deben ser <strong>cero</strong>.</p>\n<blockquote>\n<p><strong>⚠️ Importante:</strong> Este comprobante NO es una factura ni representa una venta. Es un documento fiscal que ampara la posesión de la mercancía durante el traslado. </p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"TR-INTERNAL\",\n  \"Folio\": \"508\",\n  \"Fecha\": \"2024-12-20T12:00:00\",\n  \"FormaPago\": \"99\",\n  \"SubTotal\": \"0\",\n  \"Moneda\": \"XXX\",\n  \"Total\": \"0\",\n  \"TipoDeComprobante\": \"T\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"G03\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\",\n    \"Calle\": \"Palmas\",\n    \"NoExt\": \"123\",\n    \"Colonia\": \"Anahuac\",\n    \"Municipio\": \"Apodaca\",\n    \"Estado\": \"Nuevo Leon\",\n    \"Pais\": \"México\",\n    \"CodigoPostal\": \"66265\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"01\",\n      \"ClaveProdServ\": \"78101500\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Unidad\": \"SERVICIO\",\n      \"Descripcion\": \"TRASLADO DE MERCANCIA DE BODEGA SANTA CATARINA A CEDIS BLVD. ACAPULCO\",\n      \"ValorUnitario\": \"0\",\n      \"Importe\": \"0\"\n    }\n  ],\n  \"Complemento\": {\n    \"CartaPorte30\": {\n      \"Version\": \"3.1\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"20\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n          \"NombreRemitenteDestinatario\": \"EMPRESA REMITENTE\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T12:00:00\",\n          \"Domicilio\": {\n            \"Calle\": \"Av. Principal\",\n            \"NumeroExterior\": \"100\",\n            \"Colonia\": \"Centro\",\n            \"Municipio\": \"039\",\n            \"Estado\": \"NLE\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"64000\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"NOVATECH DIGITAL\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T16:00:00\",\n          \"DistanciaRecorrida\": \"50\",\n          \"Domicilio\": {\n            \"Calle\": \"Palmas\",\n            \"NumeroExterior\": \"123\",\n            \"Colonia\": \"Anahuac\",\n            \"Municipio\": \"039\",\n            \"Estado\": \"NLE\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"66265\"\n          }\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"150.00\",\n        \"UnidadPeso\": \"KGM\",\n        \"PesoNetoTotal\": \"140.00\",\n        \"NumTotalMercancias\": \"1\",\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"10216100\",\n            \"Descripcion\": \"Productos diversos\",\n            \"Cantidad\": \"10\",\n            \"ClaveUnidad\": \"H87\",\n            \"Unidad\": \"PIEZAS\",\n            \"PesoEnKg\": \"150.00\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"10\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          }\n        ],\n        \"Autotransporte\": {\n          \"PermSCT\": \"TPAF01\",\n          \"NumPermisoSCT\": \"1345648745\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"C2\",\n            \"PlacaVM\": \"ABC123D\",\n            \"AnioModeloVM\": \"2024\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"GNP SEGUROS\",\n            \"PolizaRespCivil\": \"7174005154\"\n          }\n        }\n      },\n      \"FiguraTransporte\": [\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"GOLJ860719Q32\",\n          \"NumLicencia\": \"78411134546\",\n          \"NombreFigura\": \"ANTONIO AGUIRRE LOPEZ\"\n        }\n      ]\n    }\n  }\n}\n\n</code></pre>\n<h3 id=\"características-del-comprobante-de-traslado\">Características del Comprobante de Traslado</h3>\n<ul>\n<li><p><strong>Moneda:</strong> Debe ser <code>\"XXX\"</code> (sin moneda)</p>\n</li>\n<li><p><strong>SubTotal y Total:</strong> Deben ser <code>\"0\"</code></p>\n</li>\n<li><p><strong>ObjetoImp:</strong> Debe ser <code>\"01\"</code> (No objeto de impuesto)</p>\n</li>\n<li><p><strong>Sin impuestos:</strong> No se declaran impuestos en este tipo de comprobante</p>\n</li>\n</ul>\n<hr />\n<h2 id=\"ejemplo-4-factura-para-público-en-general\">Ejemplo 4: Factura para Público en General</h2>\n<p>Para emitir CFDI 4.0 a <strong>Público en General</strong>, debes seguir estas reglas estrictas:</p>\n<h3 id=\"reglas-obligatorias\">Reglas Obligatorias</h3>\n<ol>\n<li><p><strong><code>Receptor.Rfc</code></strong> debe ser: <code>\"XAXX010101000\"</code></p>\n</li>\n<li><p><strong><code>Receptor.Nombre</code></strong> debe ser exactamente: <code>\"PÚBLICO EN GENERAL\"</code> (⚠️ <strong>NO OMITAS EL ACENTO EN LA Ú</strong>)</p>\n</li>\n<li><p><strong><code>Receptor.DomicilioFiscalReceptor</code></strong> debe ser el mismo que <code>LugarExpedicion</code></p>\n</li>\n<li><p><strong><code>Receptor.UsoCFDI</code></strong> debe ser: <code>\"S01\"</code> (Sin efectos fiscales)</p>\n</li>\n<li><p><strong><code>Receptor.RegimenFiscalReceptor</code></strong> debe ser: <code>\"616\"</code> (General de Ley Personas Morales)</p>\n</li>\n</ol>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"F\",\n  \"Folio\": \"987750\",\n  \"Fecha\": \"2024-12-20T10:30:00\",\n  \"FormaPago\": \"01\",\n  \"SubTotal\": \"200.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"232.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"67150\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"PÚBLICO EN GENERAL\",\n    \"UsoCFDI\": \"S01\",\n    \"DomicilioFiscalReceptor\": \"67150\",\n    \"RegimenFiscalReceptor\": \"616\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"02\",\n      \"ClaveProdServ\": \"01010101\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"PIEZA\",\n      \"Descripcion\": \"Producto vendido al público\",\n      \"ValorUnitario\": \"200.00\",\n      \"Importe\": \"200.00\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"200.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"32.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"32.00\",\n    \"Traslados\": [\n      {\n        \"Base\": \"200.00\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"32.00\"\n      }\n    ]\n  }\n}\n\n</code></pre>\n<hr />\n<h2 id=\"ejemplo-5-factura-global\">Ejemplo 5: Factura Global</h2>\n<p>La <strong>Factura Global</strong> se utiliza para agrupar múltiples operaciones realizadas con el público en general en un solo comprobante. Incluye el nodo <code>InformacionGlobal</code> que especifica el período al que corresponde.</p>\n<h3 id=\"nodo-informacionglobal\">Nodo <code>InformacionGlobal</code></h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"InformacionGlobal\": {\n  \"Periodicidad\": \"01\",\n  \"Meses\": \"05\",\n  \"Año\": \"2024\"\n}\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Periodicidad</code></td>\n<td>✅</td>\n<td>Período al que corresponde la información</td>\n<td><code>\"01\"</code> (Diario), <code>\"02\"</code> (Semanal), <code>\"03\"</code> (Quincenal), <code>\"04\"</code> (Mensual), <code>\"05\"</code> (Bimestral)</td>\n</tr>\n<tr>\n<td><code>Meses</code></td>\n<td>✅</td>\n<td>Clave del mes o meses según catálogo c_Meses</td>\n<td><code>\"01\"</code> a <code>\"12\"</code> (meses normales) o <code>\"13\"</code> a <code>\"18\"</code> (si Periodicidad es <code>\"05\"</code>)</td>\n</tr>\n<tr>\n<td><code>Año</code></td>\n<td>✅</td>\n<td>Año al que corresponde</td>\n<td>Año actual o año inmediato anterior</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"⚠️-reglas-importantes\">⚠️ Reglas Importantes</h3>\n<ul>\n<li><p>Si <code>Periodicidad</code> es <code>\"05\"</code> (Bimestral), el campo <code>RegimenFiscal</code> del Emisor debe ser <code>\"621\"</code> (Régimen Simplificado de Confianza).</p>\n</li>\n<li><p>Si <code>Periodicidad</code> es <code>\"05\"</code>, el campo <code>Meses</code> debe contener valores <code>\"13\"</code>, <code>\"14\"</code>, <code>\"15\"</code>, <code>\"16\"</code>, <code>\"17\"</code> o <code>\"18\"</code>.</p>\n</li>\n<li><p>El <code>Año</code> debe ser igual al año en curso o al año inmediato anterior.</p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"F\",\n  \"Folio\": \"987750\",\n  \"Fecha\": \"2024-12-20T10:30:00\",\n  \"FormaPago\": \"01\",\n  \"SubTotal\": \"200.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"232.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"67150\",\n  \"LeyendaFolio\": \"FACTURA GLOBAL\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"PÚBLICO EN GENERAL\",\n    \"UsoCFDI\": \"S01\",\n    \"DomicilioFiscalReceptor\": \"67150\",\n    \"RegimenFiscalReceptor\": \"616\"\n  },\n  \"InformacionGlobal\": {\n    \"Periodicidad\": \"01\",\n    \"Meses\": \"05\",\n    \"Año\": \"2024\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"02\",\n      \"ClaveProdServ\": \"01010101\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"PIEZA\",\n      \"Descripcion\": \"Agregado de operaciones con público en general\",\n      \"ValorUnitario\": \"200.00\",\n      \"Importe\": \"200.00\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"200.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"32.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"32.00\",\n    \"Traslados\": [\n      {\n        \"Base\": \"200.00\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"32.00\"\n      }\n    ]\n  }\n}\n\n</code></pre>\n<hr />\n<h2 id=\"ejemplo-6-complemento-de-pagos-20\">Ejemplo 6: Complemento de Pagos 2.0</h2>\n<p>El complemento de <strong>Pagos 2.0</strong> se utiliza para registrar los pagos realizados a facturas previamente emitidas. El comprobante de pago tiene <code>TipoDeComprobante: \"P\"</code>.</p>\n<h3 id=\"características-del-comprobante-de-pago\">Características del Comprobante de Pago</h3>\n<ul>\n<li><p><strong>SubTotal y Total:</strong> Deben ser <code>\"0\"</code></p>\n</li>\n<li><p><strong>Moneda:</strong> Debe ser <code>\"XXX\"</code> (sin moneda)</p>\n</li>\n<li><p><strong>UsoCFDI del Receptor:</strong> Debe ser <code>\"CP01\"</code> (Pago)</p>\n</li>\n<li><p><strong>Concepto:</strong> Debe tener <code>ObjetoImp: \"01\"</code> (No objeto de impuesto)</p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"PAYMENT\",\n  \"Folio\": \"8019\",\n  \"Fecha\": \"2024-12-20T12:00:00\",\n  \"SubTotal\": \"0\",\n  \"Moneda\": \"XXX\",\n  \"Total\": \"0\",\n  \"TipoDeComprobante\": \"P\",\n  \"LugarExpedicion\": \"67150\",\n  \"LeyendaFolio\": \"COMPROBANTE DE PAGO\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"CP01\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\",\n    \"Calle\": \"Palmas\",\n    \"NoExt\": \"123\",\n    \"Colonia\": \"Anahuac\",\n    \"Municipio\": \"Apodaca\",\n    \"Estado\": \"Nuevo Leon\",\n    \"Pais\": \"México\",\n    \"CodigoPostal\": \"66265\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"01\",\n      \"ClaveProdServ\": \"84111506\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Descripcion\": \"Pago\",\n      \"ValorUnitario\": \"0\",\n      \"Importe\": \"0\"\n    }\n  ],\n  \"Complemento\": {\n    \"Pagos20\": {\n      \"Totales\": {\n        \"MontoTotalPagos\": \"1000.00\"\n      },\n      \"Pago\": [\n        {\n          \"FechaPago\": \"2024-12-20T12:00:00\",\n          \"FormaDePagoP\": \"02\",\n          \"MonedaP\": \"MXN\",\n          \"TipoCambioP\": \"1\",\n          \"Monto\": \"1000.00\",\n          \"DoctoRelacionado\": [\n            {\n              \"IdDocumento\": \"31FBF471-DCFD-46A5-B235-CADD520A9CC0\",\n              \"Serie\": \"A\",\n              \"Folio\": \"23205\",\n              \"MonedaDR\": \"MXN\",\n              \"EquivalenciaDR\": \"1\",\n              \"NumParcialidad\": \"1\",\n              \"ImpSaldoAnt\": \"2499.80\",\n              \"ImpPagado\": \"1000.00\",\n              \"ImpSaldoInsoluto\": \"1499.80\",\n              \"ObjetoImpDR\": \"01\"\n            }\n          ]\n        }\n      ]\n    }\n  }\n}\n\n</code></pre>\n<h3 id=\"explicación-del-complemento-de-pagos-20\">Explicación del Complemento de Pagos 2.0</h3>\n<h4 id=\"nodo-pagos20\">Nodo <code>Pagos20</code></h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Version</code></td>\n<td>Versión del complemento: <code>\"2.0\"</code></td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-totales\">Nodo <code>Totales</code></h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>MontoTotalPagos</code></td>\n<td>Suma total de todos los pagos registrados</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-pago-array\">Nodo <code>Pago</code> (Array)</h4>\n<p>Cada elemento del array representa un pago individual.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>FechaPago</code></td>\n<td>Fecha y hora en que se realizó el pago</td>\n</tr>\n<tr>\n<td><code>FormaDePagoP</code></td>\n<td>Forma de pago según catálogo c_FormaPago</td>\n</tr>\n<tr>\n<td><code>MonedaP</code></td>\n<td>Moneda del pago</td>\n</tr>\n<tr>\n<td><code>TipoCambioP</code></td>\n<td>Tipo de cambio aplicado (si la moneda no es MXN)</td>\n</tr>\n<tr>\n<td><code>Monto</code></td>\n<td>Monto del pago</td>\n</tr>\n<tr>\n<td><code>DoctoRelacionado</code></td>\n<td>Array de documentos relacionados (facturas pagadas)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-doctorelacionado\">Nodo <code>DoctoRelacionado</code></h4>\n<p>Cada documento relacionado representa una factura que está siendo pagada (total o parcialmente).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>IdDocumento</code></td>\n<td>UUID de la factura que se está pagando</td>\n</tr>\n<tr>\n<td><code>Serie</code></td>\n<td>Serie de la factura (si aplica)</td>\n</tr>\n<tr>\n<td><code>Folio</code></td>\n<td>Folio de la factura (si aplica)</td>\n</tr>\n<tr>\n<td><code>MonedaDR</code></td>\n<td>Moneda del documento relacionado</td>\n</tr>\n<tr>\n<td><code>EquivalenciaDR</code></td>\n<td>Equivalencia de cambio (1 si es la misma moneda)</td>\n</tr>\n<tr>\n<td><code>NumParcialidad</code></td>\n<td>Número de parcialidad del pago</td>\n</tr>\n<tr>\n<td><code>ImpSaldoAnt</code></td>\n<td>Importe del saldo anterior</td>\n</tr>\n<tr>\n<td><code>ImpPagado</code></td>\n<td>Importe pagado en esta parcialidad</td>\n</tr>\n<tr>\n<td><code>ImpSaldoInsoluto</code></td>\n<td>Saldo insoluto después del pago</td>\n</tr>\n<tr>\n<td><code>ObjetoImpDR</code></td>\n<td>Objeto del impuesto del documento relacionado</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"preguntas-frecuentes-faq\">Preguntas Frecuentes (FAQ)</h2>\n<h3 id=\"¿cuándo-entró-en-vigor-el-cfdi-40\">¿Cuándo entró en vigor el CFDI 4.0?</h3>\n<p>El CFDI versión 4.0 entró en vigor el <strong>1 de enero de 2022</strong>. Desde esa fecha, todos los nuevos comprobantes deben emitirse en versión 4.0.</p>\n<h3 id=\"¿cuáles-son-los-datos-mínimos-requeridos-del-receptor\">¿Cuáles son los datos mínimos requeridos del receptor?</h3>\n<p>Los datos <strong>obligatorios</strong> del receptor son:</p>\n<ul>\n<li><p>RFC</p>\n</li>\n<li><p>Nombre o Razón Social</p>\n</li>\n<li><p>Régimen Fiscal</p>\n</li>\n<li><p>Código Postal del domicilio fiscal</p>\n</li>\n</ul>\n<h3 id=\"¿puedo-emitir-una-factura-sin-conocer-el-régimen-fiscal-del-receptor\">¿Puedo emitir una factura sin conocer el régimen fiscal del receptor?</h3>\n<p><strong>No.</strong> El régimen fiscal del receptor es un campo obligatorio en CFDI 4.0. Debes solicitarlo a tu cliente antes de emitir el comprobante.</p>\n<h3 id=\"¿cómo-funcionan-las-facturas-globales\">¿Cómo funcionan las facturas globales?</h3>\n<p>Las facturas globales agrupan múltiples operaciones con público en general. Debes incluir el nodo <code>InformacionGlobal</code> especificando:</p>\n<ul>\n<li><p><strong>Periodicidad:</strong> Período al que corresponde (diario, semanal, quincenal, mensual, bimestral)</p>\n</li>\n<li><p><strong>Meses:</strong> Mes o meses que agrupa la factura</p>\n</li>\n<li><p><strong>Año:</strong> Año de las operaciones</p>\n</li>\n</ul>\n<h3 id=\"¿cuándo-debo-usar-el-campo-exportación\">¿Cuándo debo usar el campo Exportación?</h3>\n<p>Debes usar el campo <code>Exportacion</code> cuando:</p>\n<ul>\n<li><p>Realizas <strong>exportaciones temporales</strong> (<code>\"02\"</code>)</p>\n</li>\n<li><p>Realizas <strong>exportaciones definitivas</strong> (<code>\"03\"</code>)</p>\n</li>\n<li><p>Si no aplica exportación, usa <code>\"01\"</code> (No aplica)</p>\n</li>\n</ul>\n<h3 id=\"¿qué-diferencia-hay-entre-un-comprobante-de-traslado-y-una-factura-de-ingreso-con-carta-porte\">¿Qué diferencia hay entre un comprobante de Traslado y una Factura de Ingreso con Carta Porte?</h3>\n<ul>\n<li><p><strong>Comprobante de Traslado (<strong><strong><code>TipoDeComprobante: \"T\"</code></strong></strong>):</strong> Se usa para amparar el movimiento de mercancía <strong>sin cobro</strong>. Todos los valores son cero. No representa una venta.</p>\n</li>\n<li><p><strong>Factura de Ingreso con Carta Porte (<strong><strong><code>TipoDeComprobante: \"I\"</code></strong></strong>):</strong> Se usa cuando cobras por el servicio de transporte. Incluye montos, impuestos y el complemento de Carta Porte.</p>\n</li>\n</ul>\n<h3 id=\"¿puedo-usar-campos-extra1-a-extra30-en-cualquier-parte-del-json\">¿Puedo usar campos extra1 a extra30 en cualquier parte del JSON?</h3>\n<p>Los campos <code>extra1</code> a <code>extra30</code> son campos personalizados que puedes usar a nivel raíz del JSON o dentro de los conceptos (<code>extra1</code> a <code>extra10</code>). Estos campos aparecerán en el PDF generado pero no afectan la validez fiscal del CFDI.</p>\n<hr />\n<h2 id=\"soporte-y-recursos-adicionales\">Soporte y Recursos Adicionales</h2>\n<h3 id=\"¿necesitas-más-ejemplos\">¿Necesitas más ejemplos?</h3>\n<p>Si requieres ejemplos de otros tipos de CFDI o complementos, contáctanos:</p>\n<ul>\n<li><p><strong>Email:</strong> <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n</li>\n<li><p><strong>Documentación:</strong> docs.facturadigital.com.mx</p>\n</li>\n</ul>\n<h3 id=\"tipos-de-cfdi-y-complementos-disponibles\">Tipos de CFDI y Complementos Disponibles</h3>\n<ul>\n<li><p>✅ Facturas de Ingreso</p>\n</li>\n<li><p>✅ Facturas de Egreso</p>\n</li>\n<li><p>✅ Notas de Crédito</p>\n</li>\n<li><p>✅ Notas de Débito</p>\n</li>\n<li><p>✅ Comprobantes de Traslado</p>\n</li>\n<li><p>✅ Comprobantes de Pago (Complemento de Pagos 2.0)</p>\n</li>\n<li><p>✅ Recibos de Nómina</p>\n</li>\n<li><p>✅ Recibos de Retención</p>\n</li>\n<li><p>✅ Complemento de Carta Porte 3.1</p>\n</li>\n<li><p>✅ Y muchos más...</p>\n</li>\n</ul>\n<h3 id=\"recursos-útiles\">Recursos Útiles</h3>\n<ul>\n<li><p><strong>Catálogos SAT:</strong> Consulta los catálogos oficiales del SAT para códigos válidos</p>\n</li>\n<li><p><strong>Validación:</strong> Nuestra API valida automáticamente todos los datos antes de timbrar</p>\n</li>\n<li><p><strong>Pruebas:</strong> Utiliza el parámetro <code>printxml: true</code> para ver el XML antes de timbrar</p>\n</li>\n</ul>\n<hr />\n<h2 id=\"notas-finales\">Notas Finales</h2>\n<h3 id=\"buenas-prácticas\">Buenas Prácticas</h3>\n<ol>\n<li><p><strong>Siempre valida los datos</strong> antes de enviar el JSON a la API</p>\n</li>\n<li><p><strong>Usa formato ISO para fechas</strong> en lugar de <code>\"AUTO\"</code> para evitar duplicados</p>\n</li>\n<li><p><strong>Verifica los catálogos SAT</strong> antes de usar códigos</p>\n</li>\n<li><p><strong>Mantén un registro</strong> de los UUIDs generados para referencia futura</p>\n</li>\n<li><p><strong>Almacena los XMLs</strong> timbrados en tu sistema para cumplimiento fiscal</p>\n</li>\n</ol>\n<h3 id=\"errores-comunes-a-evitar\">Errores Comunes a Evitar</h3>\n<ul>\n<li><p>❌ Usar nombres con denominaciones legales (S.A. de C.V., etc.)</p>\n</li>\n<li><p>❌ Omitir el acento en \"PÚBLICO EN GENERAL\"</p>\n</li>\n<li><p>❌ Usar <code>\"AUTO\"</code> en fecha sin control de doble clic</p>\n</li>\n<li><p>❌ Incluir campos opcionales con valores vacíos (usa <code>null</code> o omítelos)</p>\n</li>\n<li><p>❌ Usar códigos de catálogo inválidos</p>\n</li>\n</ul>\n<hr />\n<p><strong>Última actualización:</strong> Diciembre 2025<br /><strong>Versión de CFDI:</strong> 4.0<br /><strong>Versión de Carta Porte:</strong> 3.1<br /><strong>Versión de Complemento de Pagos:</strong> 2.0</p>\n","urlObject":{"path":["invoice","create"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"7e01d464-09b3-4df4-84f9-e0e518073df1","name":"Ejemplo: Crear nuevo CFDI","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n   \"Serie\":\"A\",\n   \"Folio\":\"50\",\n   \"Fecha\":\"2020-09-16T13:00:00\",\n   \"FormaPago\":\"99\",\n   \"SubTotal\":\"16572.00\",\n   \"Moneda\":\"MXN\",\n   \"TipoCambio\":null,\n   \"Total\":\"19223.52\",\n   \"TipoDeComprobante\":\"I\",\n   \"MetodoPago\":\"PPD\",\n   \"LugarExpedicion\":\"32417\",\n   \"LeyendaFolio\":\"FACTURA\",\n   \"Emisor\":{\n      \"RegimenFiscal\":\"612\"\n   },\n   \"Receptor\":{\n      \"Rfc\":\"XAXX010101000\",\n      \"Nombre\":\"Buendia Arcadius Aureliano\",\n      \"UsoCFDI\":\"G03\",\n      \"Calle\":\"aaaa1\",\n      \"NoExt\":\"111111\",\n      \"NoInt\":\"111111\",\n      \"Colonia\":\"aaa\",\n      \"Localidad\":\"111\",\n      \"Referencia\":\"juarez\",\n      \"Municipio\":\"juarez\",\n      \"Estado\":\"08\",\n      \"Pais\":\"mexico\",\n      \"CodigoPostal\":\"43545\"\n   },\n   \"Conceptos\":[\n      {\n         \"ClaveProdServ\":\"81112106\",\n         \"NoIdentificacion\":null,\n         \"Cantidad\":\"1\",\n         \"ClaveUnidad\":\"SET\",\n         \"Unidad\":null,\n         \"Descripcion\":\"Hon Conc (Honorarios Base)\",\n         \"ValorUnitario\":\"13306\",\n         \"Importe\":\"13306.00\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"13306.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"2128.96\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"81112106\",\n         \"NoIdentificacion\":null,\n         \"Cantidad\":\"1\",\n         \"ClaveUnidad\":\"SET\",\n         \"Unidad\":null,\n         \"Descripcion\":\"Hon Conc (Honorarios Hipoteca)\",\n         \"ValorUnitario\":\"2766\",\n         \"Importe\":\"2766.00\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"2766.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"442.56\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"81112106\",\n         \"NoIdentificacion\":null,\n         \"Cantidad\":\"1\",\n         \"ClaveUnidad\":\"SET\",\n         \"Unidad\":null,\n         \"Descripcion\":\"Hon Conc (Cotejado de Juicio Sucesorio)\",\n         \"ValorUnitario\":\"500\",\n         \"Importe\":\"500.00\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"500.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"80.00\"\n               }\n            ]\n         }\n      }\n   ],\n   \"Impuestos\":{\n      \"TotalImpuestosTrasladados\":\"2651.52\",\n      \"TotalImpuestosRetenidos\":null,\n      \"Traslados\":[\n         {\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"2651.52\"\n         }\n      ]\n   }\n}","description":"Cadena JSON con los datos del CFDI que deseas timbrar. Puedes solicitarnos ejemplos de la estructura de este JSON en soporte@facturadigital.com.mx","type":"text"}]},"url":"{{URI}}/invoice/create"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Sep 2020 07:53:29 GMT"},{"key":"Server","value":"Apache"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Upgrade","value":"h2,h2c"},{"key":"Connection","value":"Upgrade, Keep-Alive"},{"key":"Vary","value":"Accept-Encoding,User-Agent"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Length","value":"5468"},{"key":"Keep-Alive","value":"timeout=5, max=200"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"The document was generated successfully\",\n    \"code\": 200,\n    \"cfdi\": {\n        \"NoCertificado\": \"30001000000400002335\",\n        \"UUID\": \"27B5022F-539C-4CE1-B695-7CA3EB42AF83\",\n        \"FechaTimbrado\": \"2020-09-18T02:53:29\",\n        \"RfcProvCertif\": \"SFE0807172W7\",\n        \"SelloCFD\": \"lO/Np8aVtI8ysbTYXuXr1wU+xOGBZxYilTxcmKmzA8ZaSHsenhF3cvidYJ5dYiXMPxrkSUUP9E/Q7rGxNK10YuazBCQ4BjLhpQ2BgkPwR+1XIdwUSqyxtaQsH/Ws6ymLl4OtSEwEAeuEbqm5TYllpZ7ixKXyT7mWDhwCBEEuffDyRUVwZhXau1GRFgtQiujEfMvWLdIlUzfKFPbLOzxuQDc4FzBDezPQFc0u2Li72rwjRgIKJwoSJ2LJp2O3MPAbHpWN8b3VkgyJY30Uh6YsEMAjqHqo8Lph/VUO0mHBwaYf7XujiNefXB/IKmuUkufc21RJVodo5gmRowdrtp4Rfg==\",\n        \"NoCertificadoSAT\": \"20001000000300022779\",\n        \"SelloSAT\": \"tN4stMfelRcOaVuBr3mhiS7Nh8fV+v6xNejBZVATuaCldxQpmzKI7x8d8aj1dVFYZjzjozAjTwufXb/NS2SvTc1TZ0t04/6+ef+ndtjgOFm9r72AxboNL6X3dCgqZ8DTF9af/TiCXDtF1Sa9l2pzUeV03mZdJfSkF5mqa7GCtSDH60sfJv/AmXlZJvQzqrr0UrEivjx+LmQN3T8dCEZX1C9ZSdvcwwyB4pDthy1W/UQSPtS+p0Gy9wqJu0eNTHmRzCE2sLp//wmHabDiYZS1d5Jow60TfxAXzRw88HwRtr0Yj5LNnxUnwtgd1frMT5RRWFDmBS8ZbYOl67VztbvuGA==\",\n        \"CadenaOrigTFD\": \"||1.1|27B5022F-539C-4CE1-B695-7CA3EB42AF83|2020-09-18T02:53:29|SFE0807172W7|lO/Np8aVtI8ysbTYXuXr1wU+xOGBZxYilTxcmKmzA8ZaSHsenhF3cvidYJ5dYiXMPxrkSUUP9E/Q7rGxNK10YuazBCQ4BjLhpQ2BgkPwR+1XIdwUSqyxtaQsH/Ws6ymLl4OtSEwEAeuEbqm5TYllpZ7ixKXyT7mWDhwCBEEuffDyRUVwZhXau1GRFgtQiujEfMvWLdIlUzfKFPbLOzxuQDc4FzBDezPQFc0u2Li72rwjRgIKJwoSJ2LJp2O3MPAbHpWN8b3VkgyJY30Uh6YsEMAjqHqo8Lph/VUO0mHBwaYf7XujiNefXB/IKmuUkufc21RJVodo5gmRowdrtp4Rfg==|20001000000300022779||\",\n        \"CadenaQR\": \"https://verificacfdi.facturaelectronica.sat.gob.mx/default.aspx?id=27B5022F-539C-4CE1-B695-7CA3EB42AF83&re=CACX7605101P8&rr=XAXX010101000&tt=19,223.520000&fe=tp4Rfg==\",\n        \"XmlBase64\": \"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxjZmRpOkNvbXByb2JhbnRlIHhtbG5zOmNmZGk9Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9jZmQvMyIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgVmVyc2lvbj0iMy4zIiBTZXJpZT0iQSIgRm9saW89IjUwIiBGZWNoYT0iMjAyMC0wOS0xNlQxMzowMDowMCIgRm9ybWFQYWdvPSI5OSIgU3ViVG90YWw9IjE2NTcyLjAwIiBNb25lZGE9Ik1YTiIgVG90YWw9IjE5MjIzLjUyIiBUaXBvRGVDb21wcm9iYW50ZT0iSSIgTWV0b2RvUGFnbz0iUFBEIiBMdWdhckV4cGVkaWNpb249IjMyNDE3IiBOb0NlcnRpZmljYWRvPSIzMDAwMTAwMDAwMDQwMDAwMjMzNSIgQ2VydGlmaWNhZG89Ik1JSUZpakNDQTNLZ0F3SUJBZ0lVTXpBd01ERXdNREF3TURBME1EQXdNREl6TXpVd0RRWUpLb1pJaHZjTkFRRUxCUUF3Z2dFck1ROHdEUVlEVlFRRERBWkJReUJWUVZReExqQXNCZ05WQkFvTUpWTkZVbFpKUTBsUElFUkZJRUZFVFVsT1NWTlVVa0ZEU1U5T0lGUlNTVUpWVkVGU1NVRXhHakFZQmdOVkJBc01FVk5CVkMxSlJWTWdRWFYwYUc5eWFYUjVNU2d3SmdZSktvWklodmNOQVFrQkZobHZjMk5oY2k1dFlYSjBhVzVsZWtCellYUXVaMjlpTG0xNE1SMHdHd1lEVlFRSkRCUXpjbUVnWTJWeWNtRmtZU0JrWlNCallXUnBlakVPTUF3R0ExVUVFUXdGTURZek56QXhDekFKQmdOVkJBWVRBazFZTVJrd0Z3WURWUVFJREJCRFNWVkVRVVFnUkVVZ1RVVllTVU5QTVJFd0R3WURWUVFIREFoRFQxbFBRVU5CVGpFUk1BOEdBMVVFTFJNSU1pNDFMalF1TkRVeEpUQWpCZ2txaGtpRzl3MEJDUUlURm5KbGMzQnZibk5oWW14bE9pQkJRMFJOUVMxVFFWUXdIaGNOTVRrd05USTVNVGsxTURBeFdoY05Nak13TlRJNU1UazFNREF4V2pDQnNURWRNQnNHQTFVRUF4TVVXRTlEU0VsTVZDQkRRVk5CVXlCRFNFRldSVm94SFRBYkJnTlZCQ2tURkZoUFEwaEpURlFnUTBGVFFWTWdRMGhCVmtWYU1SMHdHd1lEVlFRS0V4UllUME5JU1V4VUlFTkJVMEZUSUVOSVFWWkZXakVXTUJRR0ExVUVMUk1OUTBGRFdEYzJNRFV4TURGUU9ERWJNQmtHQTFVRUJSTVNRMEZEV0RjMk1EVXhNRTFIVkZOSVF6QTBNUjB3R3dZRFZRUUxFeFJZVDBOSVNVeFVJRU5CVTBGVElFTklRVlpGV2pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBS3ZZYVR5VXV2dFVJd3ltZzg4eFMzUmk3VzJKNzU4bHVzRWd3VWF4ZHlJeXhMUUsyNzM2eXJLNlJvdGpEdTdwZmJ6cUQ1Q3lKNmdrVDcweDI5UU5lNU1IVWdjTlBuQVJvWUsyKzBhMGtXanB3ZU5xamIwcENPTWV2VUN6YmxGNzJjN01rRXJiVzVxb2xJUklzSTRVRlNaT2xMREk5TzlsS20wVGs4NUFiMHNpYXFVZWZHbDlsT09ralBUN1ByL0NrSGs0anhaSk96WTJjV1ZleTAwdmdGaC90OXh4YkY2UnZpNzM4ZGZaOVI5aDJUVkVwYVJSWWIrbTRycFRNb3M2SEVmbWh1S1NzTmUyL004TkR4QzR6a2N3ZEM1V1M5TmhOZDRrVVErN1RGTG1JbzE0dE9YWFNCWlZWc2c0OS9MK2xxL2VoNDRLMVplM2lTVzlNN0lpOG1FQ0F3RUFBYU1kTUJzd0RBWURWUjBUQVFIL0JBSXdBREFMQmdOVkhROEVCQU1DQnNBd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dJQkFLMWJKNnZoa3FJRjBZNFhuRFVGUS9uWlVPc1FDWGJzK2N6d3U2MmtWYU9mZkhXY0toSjFtVGFTd2ttRm9xeWtWM1ZBaWI3UllLWVRYY0VSb3cyMXVHRWZuT2hOeGVTaTRsMkFuN3k2UHRKT0d5NHdUakFYKytpQWVvaCtaRGVsM1ZCaHZOWXY2SVpBY3NWcWRUbDBNZnMvRTdFdUNjNllxdW1FQlRiRlRNY3A5MkEzMUhXSHFrSStVblhjb2dZbmRzYUlLMm0raUVSNkFIaFVva2ZPak9pU0ptU0VvdmFYbWFKVmttamJ2M2cwN0ZlTUIyZlo4ZnAzcnJSdEhqZ1R6Ylp5UFkyTGpoQm5WLzB2YVRuR1pINGwxUldaK2RnRm41LzA5R0pKWUxnYVRCSHB1Uk5CSTZKUlE5L2lSNE5Nak9FYk5YRElwS2libklnM3pHMXlxUXRVd1FCVWljMGxGOTU4bjFLT2c3Zk0rTXNncTlGamcyRlkzYUkyREFvR1dLSlI4UFRpRmJYeStBcnB6ZDY2OVFXemdJdXNUN0tMd2xGaEttK2ErOWRtRTJscDBXVWoyUUgwZHJKZGZTdXZxQTlaSXUzSTB5dm5wVVQwamx1bjBQWnlvbG9UT2Q1WCs4ejJrTFNBeGJaYU91OUk0WEFUY3dabnRaSzBGSXVlaDRIdG9tNTI0bmUvTU5wNm5FWHpweFY0SFBpVzYyNlZveWtCNEFISndJcDdsamNnOEQ0SUo3b0lGLzBVRWR1d2JzeDNhbUFmRGVnLzlZdFBSQzRqNU0waDNsN3pMY0oyL0JGd3I4cVlNNzRkMHYwMEhtNG1zaXJDUGtFK2tyNThvTDFOandON3Z2UEE5NkhiU2VCb2hIK2YvWDhGY1o5NjVGaG1qbVpXZ2owVyIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LnNhdC5nb2IubXgvY2ZkLzMgaHR0cDovL3d3dy5zYXQuZ29iLm14L3NpdGlvX2ludGVybmV0L2NmZC8zL2NmZHYzMy54c2QiIFNlbGxvPSJsTy9OcDhhVnRJOHlzYlRZWHVYcjF3VSt4T0dCWnhZaWxUeGNtS216QThaYVNIc2VuaEYzY3ZpZFlKNWRZaVhNUHhya1NVVVA5RS9RN3JHeE5LMTBZdWF6QkNRNEJqTGhwUTJCZ2tQd1IrMVhJZHdVU3F5eHRhUXNIL1dzNnltTGw0T3RTRXdFQWV1RWJxbTVUWWxscFo3aXhLWHlUN21XRGh3Q0JFRXVmZkR5UlVWd1poWGF1MUdSRmd0UWl1akVmTXZXTGRJbFV6ZktGUGJMT3p4dVFEYzRGekJEZXpQUUZjMHUyTGk3MnJ3alJnSUtKd29TSjJMSnAyTzNNUEFiSHBXTjhiM1ZrZ3lKWTMwVWg2WXNFTUFqcUhxbzhMcGgvVlVPMG1IQndhWWY3WHVqaU5lZlhCL0lLbXVVa3VmYzIxUkpWb2RvNWdtUm93ZHJ0cDRSZmc9PSI+DQogIDxjZmRpOkVtaXNvciBSZmM9IkNBQ1g3NjA1MTAxUDgiIE5vbWJyZT0iQVBJRXhwcmVzcyBTQSBkZSBDViIgUmVnaW1lbkZpc2NhbD0iNjEyIiAvPg0KICA8Y2ZkaTpSZWNlcHRvciBSZmM9IlhBWFgwMTAxMDEwMDAiIE5vbWJyZT0iQnVlbmRpYSBBcmNhZGl1cyBBdXJlbGlhbm8iIFVzb0NGREk9IkcwMyIgLz4NCiAgPGNmZGk6Q29uY2VwdG9zPg0KICAgIDxjZmRpOkNvbmNlcHRvIENsYXZlUHJvZFNlcnY9IjgxMTEyMTA2IiBDYW50aWRhZD0iMSIgQ2xhdmVVbmlkYWQ9IlNFVCIgRGVzY3JpcGNpb249IkhvbiBDb25jIChIb25vcmFyaW9zIEJhc2UpIiBWYWxvclVuaXRhcmlvPSIxMzMwNiIgSW1wb3J0ZT0iMTMzMDYuMDAiPg0KICAgICAgPGNmZGk6SW1wdWVzdG9zPg0KICAgICAgICA8Y2ZkaTpUcmFzbGFkb3M+DQogICAgICAgICAgPGNmZGk6VHJhc2xhZG8gQmFzZT0iMTMzMDYuMDAiIEltcHVlc3RvPSIwMDIiIFRpcG9GYWN0b3I9IlRhc2EiIFRhc2FPQ3VvdGE9IjAuMTYwMDAwIiBJbXBvcnRlPSIyMTI4Ljk2IiAvPg0KICAgICAgICA8L2NmZGk6VHJhc2xhZG9zPg0KICAgICAgPC9jZmRpOkltcHVlc3Rvcz4NCiAgICA8L2NmZGk6Q29uY2VwdG8+DQogICAgPGNmZGk6Q29uY2VwdG8gQ2xhdmVQcm9kU2Vydj0iODExMTIxMDYiIENhbnRpZGFkPSIxIiBDbGF2ZVVuaWRhZD0iU0VUIiBEZXNjcmlwY2lvbj0iSG9uIENvbmMgKEhvbm9yYXJpb3MgSGlwb3RlY2EpIiBWYWxvclVuaXRhcmlvPSIyNzY2IiBJbXBvcnRlPSIyNzY2LjAwIj4NCiAgICAgIDxjZmRpOkltcHVlc3Rvcz4NCiAgICAgICAgPGNmZGk6VHJhc2xhZG9zPg0KICAgICAgICAgIDxjZmRpOlRyYXNsYWRvIEJhc2U9IjI3NjYuMDAiIEltcHVlc3RvPSIwMDIiIFRpcG9GYWN0b3I9IlRhc2EiIFRhc2FPQ3VvdGE9IjAuMTYwMDAwIiBJbXBvcnRlPSI0NDIuNTYiIC8+DQogICAgICAgIDwvY2ZkaTpUcmFzbGFkb3M+DQogICAgICA8L2NmZGk6SW1wdWVzdG9zPg0KICAgIDwvY2ZkaTpDb25jZXB0bz4NCiAgICA8Y2ZkaTpDb25jZXB0byBDbGF2ZVByb2RTZXJ2PSI4MTExMjEwNiIgQ2FudGlkYWQ9IjEiIENsYXZlVW5pZGFkPSJTRVQiIERlc2NyaXBjaW9uPSJIb24gQ29uYyAoQ290ZWphZG8gZGUgSnVpY2lvIFN1Y2Vzb3JpbykiIFZhbG9yVW5pdGFyaW89IjUwMCIgSW1wb3J0ZT0iNTAwLjAwIj4NCiAgICAgIDxjZmRpOkltcHVlc3Rvcz4NCiAgICAgICAgPGNmZGk6VHJhc2xhZG9zPg0KICAgICAgICAgIDxjZmRpOlRyYXNsYWRvIEJhc2U9IjUwMC4wMCIgSW1wdWVzdG89IjAwMiIgVGlwb0ZhY3Rvcj0iVGFzYSIgVGFzYU9DdW90YT0iMC4xNjAwMDAiIEltcG9ydGU9IjgwLjAwIiAvPg0KICAgICAgICA8L2NmZGk6VHJhc2xhZG9zPg0KICAgICAgPC9jZmRpOkltcHVlc3Rvcz4NCiAgICA8L2NmZGk6Q29uY2VwdG8+DQogIDwvY2ZkaTpDb25jZXB0b3M+DQogIDxjZmRpOkltcHVlc3RvcyBUb3RhbEltcHVlc3Rvc1RyYXNsYWRhZG9zPSIyNjUxLjUyIj4NCiAgICA8Y2ZkaTpUcmFzbGFkb3M+DQogICAgICA8Y2ZkaTpUcmFzbGFkbyBJbXB1ZXN0bz0iMDAyIiBUaXBvRmFjdG9yPSJUYXNhIiBUYXNhT0N1b3RhPSIwLjE2MDAwMCIgSW1wb3J0ZT0iMjY1MS41MiIgLz4NCiAgICA8L2NmZGk6VHJhc2xhZG9zPg0KICA8L2NmZGk6SW1wdWVzdG9zPg0KPGNmZGk6Q29tcGxlbWVudG8+PHRmZDpUaW1icmVGaXNjYWxEaWdpdGFsIHhtbG5zOnRmZD0iaHR0cDovL3d3dy5zYXQuZ29iLm14L1RpbWJyZUZpc2NhbERpZ2l0YWwiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5zYXQuZ29iLm14L1RpbWJyZUZpc2NhbERpZ2l0YWwgaHR0cDovL3d3dy5zYXQuZ29iLm14L3NpdGlvX2ludGVybmV0L2NmZC9UaW1icmVGaXNjYWxEaWdpdGFsL1RpbWJyZUZpc2NhbERpZ2l0YWx2MTEueHNkIiBWZXJzaW9uPSIxLjEiIFVVSUQ9IjI3QjUwMjJGLTUzOUMtNENFMS1CNjk1LTdDQTNFQjQyQUY4MyIgRmVjaGFUaW1icmFkbz0iMjAyMC0wOS0xOFQwMjo1MzoyOSIgUmZjUHJvdkNlcnRpZj0iU0ZFMDgwNzE3Mlc3IiBTZWxsb0NGRD0ibE8vTnA4YVZ0STh5c2JUWVh1WHIxd1UreE9HQlp4WWlsVHhjbUttekE4WmFTSHNlbmhGM2N2aWRZSjVkWWlYTVB4cmtTVVVQOUUvUTdyR3hOSzEwWXVhekJDUTRCakxocFEyQmdrUHdSKzFYSWR3VVNxeXh0YVFzSC9XczZ5bUxsNE90U0V3RUFldUVicW01VFlsbHBaN2l4S1h5VDdtV0Rod0NCRUV1ZmZEeVJVVndaaFhhdTFHUkZndFFpdWpFZk12V0xkSWxVemZLRlBiTE96eHVRRGM0RnpCRGV6UFFGYzB1MkxpNzJyd2pSZ0lLSndvU0oyTEpwMk8zTVBBYkhwV044YjNWa2d5SlkzMFVoNllzRU1BanFIcW84THBoL1ZVTzBtSEJ3YVlmN1h1amlOZWZYQi9JS211VWt1ZmMyMVJKVm9kbzVnbVJvd2RydHA0UmZnPT0iIE5vQ2VydGlmaWNhZG9TQVQ9IjIwMDAxMDAwMDAwMzAwMDIyNzc5IiBTZWxsb1NBVD0idE40c3RNZmVsUmNPYVZ1QnIzbWhpUzdOaDhmVit2NnhOZWpCWlZBVHVhQ2xkeFFwbXpLSTd4OGQ4YWoxZFZGWVpqempvekFqVHd1ZlhiL05TMlN2VGMxVFowdDA0LzYrZWYrbmR0amdPRm05cjcyQXhib05MNlgzZENncVo4RFRGOWFmL1RpQ1hEdEYxU2E5bDJwelVlVjAzbVpkSmZTa0Y1bXFhN0dDdFNESDYwc2ZKdi9BbVhsWkp2UXpxcnIwVXJFaXZqeCtMbVFOM1Q4ZENFWlgxQzlaU2R2Y3d3eUI0cER0aHkxVy9VUVNQdFMrcDBHeTl3cUp1MGVOVEhtUnpDRTJzTHAvL3dtSGFiRGlZWlMxZDVKb3c2MFRmeEFYelJ3ODhId1J0cjBZajVMTm54VW53dGdkMWZyTVQ1UlJXRkRtQlM4WmJZT2w2N1Z6dGJ2dUdBPT0iIC8+PC9jZmRpOkNvbXBsZW1lbnRvPjwvY2ZkaTpDb21wcm9iYW50ZT4NCg==\",\n        \"PDF\": \"https://app.facturadigital.com.mx/docs/pdf/27B5022F-539C-4CE1-B695-7CA3EB42AF83\",\n        \"XML\": \"https://app.facturadigital.com.mx/docs/xml/CACX7605101P8/27B5022F-539C-4CE1-B695-7CA3EB42AF83\"\n    }\n}"},{"id":"e6c94f1a-9268-4dfc-ae43-7210439af2ed","name":"Ejemplo: Crear CFDI detallista","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n   \"Referencia\":\"0300030100000032581\",\n   \"Fecha\":\"2021-02-18T17:12:35\",\n   \"FechaLimite\":null,\n   \"Sucursal\":\"3\",\n   \"Plataforma\":\"ERP\",\n   \"Correo\":null,\n   \"Moneda\":\"MXN\",\n   \"TipoCambio\":\"1\",\n   \"SubTotal\":\"171711.00\",\n   \"Iva\":\"27473.760000\",\n   \"Total\":\"199184.76\",\n   \"Descuento\":null,\n   \"MetodoPago\":\"PUE\",\n   \"LugarExpedicion\":\"66490\",\n   \"LeyendaFolio\":\"FACTURA\",\n   \"TipoDeComprobante\":\"I\",\n   \"FormaPago\":\"99\",\n   \"Serie\":\"A\",\n   \"Folio\":\"3258\",\n   \"Observaciones\":\"Referencia SBO 3258\",\n   \"NumeroOrdenCompra\":\"50805380\",\n   \"extra2\":null,\n   \"extra4\":null,\n   \"extra5\":null,\n   \"extra6\":null,\n   \"extra7\":null,\n   \"CondicionesDePago\":\"CRÉDITO\",\n   \"Emisor\":{\n      \"RegimenFiscal\":\"601\"\n   },\n   \"Receptor\":{\n      \"Rfc\":\"SIH9511279T7\",\n      \"Nombre\":\"SUPERMERCADOS INTERNACIONALES H E B, S.A. DE C.V.\",\n      \"UsoCFDI\":\"G01\",\n      \"Calle\":\"\",\n      \"NoExt\":\"\",\n      \"NoInt\":\"\",\n      \"Colonia\":\"\",\n      \"Localidad\":null,\n      \"Referencia\":null,\n      \"Municipio\":\"\",\n      \"Estado\":\"\",\n      \"Pais\":\"\",\n      \"CodigoPostal\":\"\"\n   },\n   \"Conceptos\":[\n      {\n         \"ClaveProdServ\":\"52152015\",\n         \"NoIdentificacion\":\"0\",\n         \"Cantidad\":\"4000.000000\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"PZ\",\n         \"Descripcion\":\"ROMPECABEZAS PZ.\",\n         \"ValorUnitario\":\"3.170000\",\n         \"Importe\":\"12680.000000\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"12680.000000\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"2028.800000\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"52152015\",\n         \"NoIdentificacion\":\"0\",\n         \"Cantidad\":\"3800.000000\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"PZ\",\n         \"Descripcion\":\"ROMPECABEZAS PZ\",\n         \"ValorUnitario\":\"7.040000\",\n         \"Importe\":\"26752.000000\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"26752.000000\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"4280.320000\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"52152015\",\n         \"NoIdentificacion\":\"0\",\n         \"Cantidad\":\"18800.000000\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"PZ\",\n         \"Descripcion\":\"ROMPECABEZAS PZ.\",\n         \"ValorUnitario\":\"2.120000\",\n         \"Importe\":\"39856.000000\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"39856.000000\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"6376.960000\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"52152015\",\n         \"NoIdentificacion\":\"0\",\n         \"Cantidad\":\"18600.000000\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"PZ\",\n         \"Descripcion\":\"ROMPECABEZAS PZ\",\n         \"ValorUnitario\":\"4.820000\",\n         \"Importe\":\"89652.000000\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"89652.000000\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"14344.320000\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"52152015\",\n         \"NoIdentificacion\":\"0\",\n         \"Cantidad\":\"100.000000\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"PZ\",\n         \"Descripcion\":\"ROMPECABEZASC/50 PZ\",\n         \"ValorUnitario\":\"16.520000\",\n         \"Importe\":\"1652.000000\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"1652.000000\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"264.320000\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"52152015\",\n         \"NoIdentificacion\":\"0\",\n         \"Cantidad\":\"100.000000\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"PZ\",\n         \"Descripcion\":\"ROMPECABEZAS CJ C/50 PZ.\",\n         \"ValorUnitario\":\"11.190000\",\n         \"Importe\":\"1119.000000\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"1119.000000\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"179.040000\"\n               }\n            ]\n         }\n      }\n   ],\n   \"Impuestos\":{\n      \"TotalImpuestosTrasladados\":\"27473.76\",\n      \"TotalImpuestosRetenidos\":null,\n      \"Traslados\":[\n         {\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"27473.76\"\n         }\n      ]\n   },\n   \"Complemento\":{\n      \"detallista\":{\n         \"requestForPaymentIdentification\":{\n            \"entityType\":\"INVOICE\"\n         },\n         \"specialInstruction\":{\n            \"code\":\"ZZZ\",\n            \"text\":\"CIENTO NOVENTA Y NUEVE MIL CIENTO OCHENTA Y CUATRO PESOS 76/100 M.N.\"\n         },\n         \"orderIdentification\":{\n            \"referenceIdentification\":\"11231111\",\n            \"referenceIdentificationType\":\"ON\",\n            \"ReferenceDate\":\"2020-09-29\"\n         },\n         \"AdditionalInformation\":{\n            \"referenceIdentification\":\"0\",\n            \"referenceIdentificationType\":\"ATZ\"\n         },\n         \"DeliveryNote\":null,\n         \"buyer\":{\n            \"gln\":\"7504000225027\",\n            \"contactInformation\":{\n               \"personOrDepartmentName\":{\n                  \"text\":\"11\"\n               }\n            }\n         },\n         \"seller\":{\n            \"gln\":\"0000000011301\",\n            \"alternatePartyIdentification\":\"7874454\",\n            \"alternatePartyIdentificationType\":\"SELLER_ASSIGNED_IDENTIFIER_FOR_A_PARTY\"\n         },\n         \"allowanceCharge\":{\n            \"allowanceChargeType\":\"ALLOWANCE_GLOBAL\",\n            \"settlementType\":\"OFF_INVOICE\",\n            \"specialServicesType\":\"AJ\",\n            \"ratebase\":\"INVOICE_VALUE\",\n            \"percentage\":\"0.0\"\n         },\n         \"lineItem\":[\n            {\n               \"type\":\"SimpleInvoiceLineItemType\",\n               \"number\":\"0\",\n               \"gtin\":\"1\",\n               \"alternateTradeItemIdentification\":\"0\",\n               \"alternateTradeItemIdentificationType\":\"BUYER_ASSIGNED\",\n               \"tradeItemDescLang\":\"ES\",\n               \"tradeItemDescLongText\":\"ROMPECABEZAS S/LOGO HEB\",\n               \"invoicedQuantityUOM\":\"PZ\",\n               \"invoicedQuantity\":\"4000.000000\",\n               \"grossPriceAmount\":\"3.170000\",\n               \"netPriceAmount\":\"3.677200\",\n               \"totalLineGrossAmount\":\"14708.800000\",\n               \"totalLineNetAmount\":\"\"\n            },\n            {\n               \"type\":\"SimpleInvoiceLineItemType\",\n               \"number\":\"1\",\n               \"gtin\":\"1\",\n               \"alternateTradeItemIdentification\":\"0\",\n               \"alternateTradeItemIdentificationType\":\"BUYER_ASSIGNED\",\n               \"tradeItemDescLang\":\"ES\",\n               \"tradeItemDescLongText\":\"ROMPECABEZAS HEB CAJA C/10\",\n               \"invoicedQuantityUOM\":\"PZ\",\n               \"invoicedQuantity\":\"3800.000000\",\n               \"grossPriceAmount\":\"7.040000\",\n               \"netPriceAmount\":\"8.166400\",\n               \"totalLineGrossAmount\":\"31032.320000\",\n               \"totalLineNetAmount\":\"\"\n            },\n            {\n               \"type\":\"SimpleInvoiceLineItemType\",\n               \"number\":\"2\",\n               \"gtin\":\"1\",\n               \"alternateTradeItemIdentification\":\"0\",\n               \"alternateTradeItemIdentificationType\":\"BUYER_ASSIGNED\",\n               \"tradeItemDescLang\":\"ES\",\n               \"tradeItemDescLongText\":\"ROMPECABEZAS S/LOGO HEB \",\n               \"invoicedQuantityUOM\":\"PZ\",\n               \"invoicedQuantity\":\"18800.000000\",\n               \"grossPriceAmount\":\"2.120000\",\n               \"netPriceAmount\":\"2.459200\",\n               \"totalLineGrossAmount\":\"46232.960000\",\n               \"totalLineNetAmount\":\"\"\n            },\n            {\n               \"type\":\"SimpleInvoiceLineItemType\",\n               \"number\":\"3\",\n               \"gtin\":\"1\",\n               \"alternateTradeItemIdentification\":\"0\",\n               \"alternateTradeItemIdentificationType\":\"BUYER_ASSIGNED\",\n               \"tradeItemDescLang\":\"ES\",\n               \"tradeItemDescLongText\":\"ROMPECABEZAS HEB CAJA C/200\",\n               \"invoicedQuantityUOM\":\"PZ\",\n               \"invoicedQuantity\":\"18600.000000\",\n               \"grossPriceAmount\":\"4.820000\",\n               \"netPriceAmount\":\"5.591200\",\n               \"totalLineGrossAmount\":\"103996.320000\",\n               \"totalLineNetAmount\":\"\"\n            },\n            {\n               \"type\":\"SimpleInvoiceLineItemType\",\n               \"number\":\"4\",\n               \"gtin\":\"1\",\n               \"alternateTradeItemIdentification\":\"0\",\n               \"alternateTradeItemIdentificationType\":\"BUYER_ASSIGNED\",\n               \"tradeItemDescLang\":\"ES\",\n               \"tradeItemDescLongText\":\"ROMPECABEZAS HEB CJ \",\n               \"invoicedQuantityUOM\":\"PZ\",\n               \"invoicedQuantity\":\"100.000000\",\n               \"grossPriceAmount\":\"16.520000\",\n               \"netPriceAmount\":\"19.163200\",\n               \"totalLineGrossAmount\":\"1916.320000\",\n               \"totalLineNetAmount\":\"\"\n            },\n            {\n               \"type\":\"SimpleInvoiceLineItemType\",\n               \"number\":\"5\",\n               \"gtin\":\"1\",\n               \"alternateTradeItemIdentification\":\"0\",\n               \"alternateTradeItemIdentificationType\":\"BUYER_ASSIGNED\",\n               \"tradeItemDescLang\":\"ES\",\n               \"tradeItemDescLongText\":\"ROMPECABEZAS PET\",\n               \"invoicedQuantityUOM\":\"PZ\",\n               \"invoicedQuantity\":\"100.000000\",\n               \"grossPriceAmount\":\"11.190000\",\n               \"netPriceAmount\":\"12.980400\",\n               \"totalLineGrossAmount\":\"1298.040000\",\n               \"totalLineNetAmount\":\"\"\n            }\n         ],\n         \"totalAmount\":{\n            \"Amount\":\"199184.76\"\n         },\n         \"totalAllowanceOrChargeType\":null,\n         \"specialServicesType\":null,\n         \"TotalAllowanceCharge\":{\n            \"allowanceOrChargeType\":\"ALLOWANCE\",\n            \"specialServicesType\":\"AA\",\n            \"Amount\":\"0.00\"\n         }\n      }\n   }\n}","description":"Cadena JSON con los datos del CFDI que deseas timbrar. Puedes solicitarnos ejemplos de la estructura de este JSON en soporte@facturadigital.com.mx","type":"text"}]},"url":"{{URI}}/invoice/create"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Sep 2020 07:53:29 GMT"},{"key":"Server","value":"Apache"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Upgrade","value":"h2,h2c"},{"key":"Connection","value":"Upgrade, Keep-Alive"},{"key":"Vary","value":"Accept-Encoding,User-Agent"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Length","value":"5468"},{"key":"Keep-Alive","value":"timeout=5, max=200"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"The document was generated successfully\",\n    \"code\": 200,\n    \"cfdi\": {\n        \"NoCertificado\": \"30001000000400002335\",\n        \"UUID\": \"27B5022F-539C-4CE1-B695-7CA3EB42AF83\",\n        \"FechaTimbrado\": \"2020-09-18T02:53:29\",\n        \"RfcProvCertif\": \"SFE0807172W7\",\n        \"SelloCFD\": \"lO/Np8aVtI8ysbTYXuXr1wU+xOGBZxYilTxcmKmzA8ZaSHsenhF3cvidYJ5dYiXMPxrkSUUP9E/Q7rGxNK10YuazBCQ4BjLhpQ2BgkPwR+1XIdwUSqyxtaQsH/Ws6ymLl4OtSEwEAeuEbqm5TYllpZ7ixKXyT7mWDhwCBEEuffDyRUVwZhXau1GRFgtQiujEfMvWLdIlUzfKFPbLOzxuQDc4FzBDezPQFc0u2Li72rwjRgIKJwoSJ2LJp2O3MPAbHpWN8b3VkgyJY30Uh6YsEMAjqHqo8Lph/VUO0mHBwaYf7XujiNefXB/IKmuUkufc21RJVodo5gmRowdrtp4Rfg==\",\n        \"NoCertificadoSAT\": \"20001000000300022779\",\n        \"SelloSAT\": \"tN4stMfelRcOaVuBr3mhiS7Nh8fV+v6xNejBZVATuaCldxQpmzKI7x8d8aj1dVFYZjzjozAjTwufXb/NS2SvTc1TZ0t04/6+ef+ndtjgOFm9r72AxboNL6X3dCgqZ8DTF9af/TiCXDtF1Sa9l2pzUeV03mZdJfSkF5mqa7GCtSDH60sfJv/AmXlZJvQzqrr0UrEivjx+LmQN3T8dCEZX1C9ZSdvcwwyB4pDthy1W/UQSPtS+p0Gy9wqJu0eNTHmRzCE2sLp//wmHabDiYZS1d5Jow60TfxAXzRw88HwRtr0Yj5LNnxUnwtgd1frMT5RRWFDmBS8ZbYOl67VztbvuGA==\",\n        \"CadenaOrigTFD\": \"||1.1|27B5022F-539C-4CE1-B695-7CA3EB42AF83|2020-09-18T02:53:29|SFE0807172W7|lO/Np8aVtI8ysbTYXuXr1wU+xOGBZxYilTxcmKmzA8ZaSHsenhF3cvidYJ5dYiXMPxrkSUUP9E/Q7rGxNK10YuazBCQ4BjLhpQ2BgkPwR+1XIdwUSqyxtaQsH/Ws6ymLl4OtSEwEAeuEbqm5TYllpZ7ixKXyT7mWDhwCBEEuffDyRUVwZhXau1GRFgtQiujEfMvWLdIlUzfKFPbLOzxuQDc4FzBDezPQFc0u2Li72rwjRgIKJwoSJ2LJp2O3MPAbHpWN8b3VkgyJY30Uh6YsEMAjqHqo8Lph/VUO0mHBwaYf7XujiNefXB/IKmuUkufc21RJVodo5gmRowdrtp4Rfg==|20001000000300022779||\",\n        \"CadenaQR\": \"https://verificacfdi.facturaelectronica.sat.gob.mx/default.aspx?id=27B5022F-539C-4CE1-B695-7CA3EB42AF83&re=CACX7605101P8&rr=XAXX010101000&tt=19,223.520000&fe=tp4Rfg==\",\n        \"XmlBase64\": \"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxjZmRpOkNvbXByb2JhbnRlIHhtbG5zOmNmZGk9Imh0dHA6Ly93d3cuc2F0LmdvYi5teC9jZmQvMyIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgVmVyc2lvbj0iMy4zIiBTZXJpZT0iQSIgRm9saW89IjUwIiBGZWNoYT0iMjAyMC0wOS0xNlQxMzowMDowMCIgRm9ybWFQYWdvPSI5OSIgU3ViVG90YWw9IjE2NTcyLjAwIiBNb25lZGE9Ik1YTiIgVG90YWw9IjE5MjIzLjUyIiBUaXBvRGVDb21wcm9iYW50ZT0iSSIgTWV0b2RvUGFnbz0iUFBEIiBMdWdhckV4cGVkaWNpb249IjMyNDE3IiBOb0NlcnRpZmljYWRvPSIzMDAwMTAwMDAwMDQwMDAwMjMzNSIgQ2VydGlmaWNhZG89Ik1JSUZpakNDQTNLZ0F3SUJBZ0lVTXpBd01ERXdNREF3TURBME1EQXdNREl6TXpVd0RRWUpLb1pJaHZjTkFRRUxCUUF3Z2dFck1ROHdEUVlEVlFRRERBWkJReUJWUVZReExqQXNCZ05WQkFvTUpWTkZVbFpKUTBsUElFUkZJRUZFVFVsT1NWTlVVa0ZEU1U5T0lGUlNTVUpWVkVGU1NVRXhHakFZQmdOVkJBc01FVk5CVkMxSlJWTWdRWFYwYUc5eWFYUjVNU2d3SmdZSktvWklodmNOQVFrQkZobHZjMk5oY2k1dFlYSjBhVzVsZWtCellYUXVaMjlpTG0xNE1SMHdHd1lEVlFRSkRCUXpjbUVnWTJWeWNtRmtZU0JrWlNCallXUnBlakVPTUF3R0ExVUVFUXdGTURZek56QXhDekFKQmdOVkJBWVRBazFZTVJrd0Z3WURWUVFJREJCRFNWVkVRVVFnUkVVZ1RVVllTVU5QTVJFd0R3WURWUVFIREFoRFQxbFBRVU5CVGpFUk1BOEdBMVVFTFJNSU1pNDFMalF1TkRVeEpUQWpCZ2txaGtpRzl3MEJDUUlURm5KbGMzQnZibk5oWW14bE9pQkJRMFJOUVMxVFFWUXdIaGNOTVRrd05USTVNVGsxTURBeFdoY05Nak13TlRJNU1UazFNREF4V2pDQnNURWRNQnNHQTFVRUF4TVVXRTlEU0VsTVZDQkRRVk5CVXlCRFNFRldSVm94SFRBYkJnTlZCQ2tURkZoUFEwaEpURlFnUTBGVFFWTWdRMGhCVmtWYU1SMHdHd1lEVlFRS0V4UllUME5JU1V4VUlFTkJVMEZUSUVOSVFWWkZXakVXTUJRR0ExVUVMUk1OUTBGRFdEYzJNRFV4TURGUU9ERWJNQmtHQTFVRUJSTVNRMEZEV0RjMk1EVXhNRTFIVkZOSVF6QTBNUjB3R3dZRFZRUUxFeFJZVDBOSVNVeFVJRU5CVTBGVElFTklRVlpGV2pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBS3ZZYVR5VXV2dFVJd3ltZzg4eFMzUmk3VzJKNzU4bHVzRWd3VWF4ZHlJeXhMUUsyNzM2eXJLNlJvdGpEdTdwZmJ6cUQ1Q3lKNmdrVDcweDI5UU5lNU1IVWdjTlBuQVJvWUsyKzBhMGtXanB3ZU5xamIwcENPTWV2VUN6YmxGNzJjN01rRXJiVzVxb2xJUklzSTRVRlNaT2xMREk5TzlsS20wVGs4NUFiMHNpYXFVZWZHbDlsT09ralBUN1ByL0NrSGs0anhaSk96WTJjV1ZleTAwdmdGaC90OXh4YkY2UnZpNzM4ZGZaOVI5aDJUVkVwYVJSWWIrbTRycFRNb3M2SEVmbWh1S1NzTmUyL004TkR4QzR6a2N3ZEM1V1M5TmhOZDRrVVErN1RGTG1JbzE0dE9YWFNCWlZWc2c0OS9MK2xxL2VoNDRLMVplM2lTVzlNN0lpOG1FQ0F3RUFBYU1kTUJzd0RBWURWUjBUQVFIL0JBSXdBREFMQmdOVkhROEVCQU1DQnNBd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dJQkFLMWJKNnZoa3FJRjBZNFhuRFVGUS9uWlVPc1FDWGJzK2N6d3U2MmtWYU9mZkhXY0toSjFtVGFTd2ttRm9xeWtWM1ZBaWI3UllLWVRYY0VSb3cyMXVHRWZuT2hOeGVTaTRsMkFuN3k2UHRKT0d5NHdUakFYKytpQWVvaCtaRGVsM1ZCaHZOWXY2SVpBY3NWcWRUbDBNZnMvRTdFdUNjNllxdW1FQlRiRlRNY3A5MkEzMUhXSHFrSStVblhjb2dZbmRzYUlLMm0raUVSNkFIaFVva2ZPak9pU0ptU0VvdmFYbWFKVmttamJ2M2cwN0ZlTUIyZlo4ZnAzcnJSdEhqZ1R6Ylp5UFkyTGpoQm5WLzB2YVRuR1pINGwxUldaK2RnRm41LzA5R0pKWUxnYVRCSHB1Uk5CSTZKUlE5L2lSNE5Nak9FYk5YRElwS2libklnM3pHMXlxUXRVd1FCVWljMGxGOTU4bjFLT2c3Zk0rTXNncTlGamcyRlkzYUkyREFvR1dLSlI4UFRpRmJYeStBcnB6ZDY2OVFXemdJdXNUN0tMd2xGaEttK2ErOWRtRTJscDBXVWoyUUgwZHJKZGZTdXZxQTlaSXUzSTB5dm5wVVQwamx1bjBQWnlvbG9UT2Q1WCs4ejJrTFNBeGJaYU91OUk0WEFUY3dabnRaSzBGSXVlaDRIdG9tNTI0bmUvTU5wNm5FWHpweFY0SFBpVzYyNlZveWtCNEFISndJcDdsamNnOEQ0SUo3b0lGLzBVRWR1d2JzeDNhbUFmRGVnLzlZdFBSQzRqNU0waDNsN3pMY0oyL0JGd3I4cVlNNzRkMHYwMEhtNG1zaXJDUGtFK2tyNThvTDFOandON3Z2UEE5NkhiU2VCb2hIK2YvWDhGY1o5NjVGaG1qbVpXZ2owVyIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LnNhdC5nb2IubXgvY2ZkLzMgaHR0cDovL3d3dy5zYXQuZ29iLm14L3NpdGlvX2ludGVybmV0L2NmZC8zL2NmZHYzMy54c2QiIFNlbGxvPSJsTy9OcDhhVnRJOHlzYlRZWHVYcjF3VSt4T0dCWnhZaWxUeGNtS216QThaYVNIc2VuaEYzY3ZpZFlKNWRZaVhNUHhya1NVVVA5RS9RN3JHeE5LMTBZdWF6QkNRNEJqTGhwUTJCZ2tQd1IrMVhJZHdVU3F5eHRhUXNIL1dzNnltTGw0T3RTRXdFQWV1RWJxbTVUWWxscFo3aXhLWHlUN21XRGh3Q0JFRXVmZkR5UlVWd1poWGF1MUdSRmd0UWl1akVmTXZXTGRJbFV6ZktGUGJMT3p4dVFEYzRGekJEZXpQUUZjMHUyTGk3MnJ3alJnSUtKd29TSjJMSnAyTzNNUEFiSHBXTjhiM1ZrZ3lKWTMwVWg2WXNFTUFqcUhxbzhMcGgvVlVPMG1IQndhWWY3WHVqaU5lZlhCL0lLbXVVa3VmYzIxUkpWb2RvNWdtUm93ZHJ0cDRSZmc9PSI+DQogIDxjZmRpOkVtaXNvciBSZmM9IkNBQ1g3NjA1MTAxUDgiIE5vbWJyZT0iQVBJRXhwcmVzcyBTQSBkZSBDViIgUmVnaW1lbkZpc2NhbD0iNjEyIiAvPg0KICA8Y2ZkaTpSZWNlcHRvciBSZmM9IlhBWFgwMTAxMDEwMDAiIE5vbWJyZT0iQnVlbmRpYSBBcmNhZGl1cyBBdXJlbGlhbm8iIFVzb0NGREk9IkcwMyIgLz4NCiAgPGNmZGk6Q29uY2VwdG9zPg0KICAgIDxjZmRpOkNvbmNlcHRvIENsYXZlUHJvZFNlcnY9IjgxMTEyMTA2IiBDYW50aWRhZD0iMSIgQ2xhdmVVbmlkYWQ9IlNFVCIgRGVzY3JpcGNpb249IkhvbiBDb25jIChIb25vcmFyaW9zIEJhc2UpIiBWYWxvclVuaXRhcmlvPSIxMzMwNiIgSW1wb3J0ZT0iMTMzMDYuMDAiPg0KICAgICAgPGNmZGk6SW1wdWVzdG9zPg0KICAgICAgICA8Y2ZkaTpUcmFzbGFkb3M+DQogICAgICAgICAgPGNmZGk6VHJhc2xhZG8gQmFzZT0iMTMzMDYuMDAiIEltcHVlc3RvPSIwMDIiIFRpcG9GYWN0b3I9IlRhc2EiIFRhc2FPQ3VvdGE9IjAuMTYwMDAwIiBJbXBvcnRlPSIyMTI4Ljk2IiAvPg0KICAgICAgICA8L2NmZGk6VHJhc2xhZG9zPg0KICAgICAgPC9jZmRpOkltcHVlc3Rvcz4NCiAgICA8L2NmZGk6Q29uY2VwdG8+DQogICAgPGNmZGk6Q29uY2VwdG8gQ2xhdmVQcm9kU2Vydj0iODExMTIxMDYiIENhbnRpZGFkPSIxIiBDbGF2ZVVuaWRhZD0iU0VUIiBEZXNjcmlwY2lvbj0iSG9uIENvbmMgKEhvbm9yYXJpb3MgSGlwb3RlY2EpIiBWYWxvclVuaXRhcmlvPSIyNzY2IiBJbXBvcnRlPSIyNzY2LjAwIj4NCiAgICAgIDxjZmRpOkltcHVlc3Rvcz4NCiAgICAgICAgPGNmZGk6VHJhc2xhZG9zPg0KICAgICAgICAgIDxjZmRpOlRyYXNsYWRvIEJhc2U9IjI3NjYuMDAiIEltcHVlc3RvPSIwMDIiIFRpcG9GYWN0b3I9IlRhc2EiIFRhc2FPQ3VvdGE9IjAuMTYwMDAwIiBJbXBvcnRlPSI0NDIuNTYiIC8+DQogICAgICAgIDwvY2ZkaTpUcmFzbGFkb3M+DQogICAgICA8L2NmZGk6SW1wdWVzdG9zPg0KICAgIDwvY2ZkaTpDb25jZXB0bz4NCiAgICA8Y2ZkaTpDb25jZXB0byBDbGF2ZVByb2RTZXJ2PSI4MTExMjEwNiIgQ2FudGlkYWQ9IjEiIENsYXZlVW5pZGFkPSJTRVQiIERlc2NyaXBjaW9uPSJIb24gQ29uYyAoQ290ZWphZG8gZGUgSnVpY2lvIFN1Y2Vzb3JpbykiIFZhbG9yVW5pdGFyaW89IjUwMCIgSW1wb3J0ZT0iNTAwLjAwIj4NCiAgICAgIDxjZmRpOkltcHVlc3Rvcz4NCiAgICAgICAgPGNmZGk6VHJhc2xhZG9zPg0KICAgICAgICAgIDxjZmRpOlRyYXNsYWRvIEJhc2U9IjUwMC4wMCIgSW1wdWVzdG89IjAwMiIgVGlwb0ZhY3Rvcj0iVGFzYSIgVGFzYU9DdW90YT0iMC4xNjAwMDAiIEltcG9ydGU9IjgwLjAwIiAvPg0KICAgICAgICA8L2NmZGk6VHJhc2xhZG9zPg0KICAgICAgPC9jZmRpOkltcHVlc3Rvcz4NCiAgICA8L2NmZGk6Q29uY2VwdG8+DQogIDwvY2ZkaTpDb25jZXB0b3M+DQogIDxjZmRpOkltcHVlc3RvcyBUb3RhbEltcHVlc3Rvc1RyYXNsYWRhZG9zPSIyNjUxLjUyIj4NCiAgICA8Y2ZkaTpUcmFzbGFkb3M+DQogICAgICA8Y2ZkaTpUcmFzbGFkbyBJbXB1ZXN0bz0iMDAyIiBUaXBvRmFjdG9yPSJUYXNhIiBUYXNhT0N1b3RhPSIwLjE2MDAwMCIgSW1wb3J0ZT0iMjY1MS41MiIgLz4NCiAgICA8L2NmZGk6VHJhc2xhZG9zPg0KICA8L2NmZGk6SW1wdWVzdG9zPg0KPGNmZGk6Q29tcGxlbWVudG8+PHRmZDpUaW1icmVGaXNjYWxEaWdpdGFsIHhtbG5zOnRmZD0iaHR0cDovL3d3dy5zYXQuZ29iLm14L1RpbWJyZUZpc2NhbERpZ2l0YWwiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5zYXQuZ29iLm14L1RpbWJyZUZpc2NhbERpZ2l0YWwgaHR0cDovL3d3dy5zYXQuZ29iLm14L3NpdGlvX2ludGVybmV0L2NmZC9UaW1icmVGaXNjYWxEaWdpdGFsL1RpbWJyZUZpc2NhbERpZ2l0YWx2MTEueHNkIiBWZXJzaW9uPSIxLjEiIFVVSUQ9IjI3QjUwMjJGLTUzOUMtNENFMS1CNjk1LTdDQTNFQjQyQUY4MyIgRmVjaGFUaW1icmFkbz0iMjAyMC0wOS0xOFQwMjo1MzoyOSIgUmZjUHJvdkNlcnRpZj0iU0ZFMDgwNzE3Mlc3IiBTZWxsb0NGRD0ibE8vTnA4YVZ0STh5c2JUWVh1WHIxd1UreE9HQlp4WWlsVHhjbUttekE4WmFTSHNlbmhGM2N2aWRZSjVkWWlYTVB4cmtTVVVQOUUvUTdyR3hOSzEwWXVhekJDUTRCakxocFEyQmdrUHdSKzFYSWR3VVNxeXh0YVFzSC9XczZ5bUxsNE90U0V3RUFldUVicW01VFlsbHBaN2l4S1h5VDdtV0Rod0NCRUV1ZmZEeVJVVndaaFhhdTFHUkZndFFpdWpFZk12V0xkSWxVemZLRlBiTE96eHVRRGM0RnpCRGV6UFFGYzB1MkxpNzJyd2pSZ0lLSndvU0oyTEpwMk8zTVBBYkhwV044YjNWa2d5SlkzMFVoNllzRU1BanFIcW84THBoL1ZVTzBtSEJ3YVlmN1h1amlOZWZYQi9JS211VWt1ZmMyMVJKVm9kbzVnbVJvd2RydHA0UmZnPT0iIE5vQ2VydGlmaWNhZG9TQVQ9IjIwMDAxMDAwMDAwMzAwMDIyNzc5IiBTZWxsb1NBVD0idE40c3RNZmVsUmNPYVZ1QnIzbWhpUzdOaDhmVit2NnhOZWpCWlZBVHVhQ2xkeFFwbXpLSTd4OGQ4YWoxZFZGWVpqempvekFqVHd1ZlhiL05TMlN2VGMxVFowdDA0LzYrZWYrbmR0amdPRm05cjcyQXhib05MNlgzZENncVo4RFRGOWFmL1RpQ1hEdEYxU2E5bDJwelVlVjAzbVpkSmZTa0Y1bXFhN0dDdFNESDYwc2ZKdi9BbVhsWkp2UXpxcnIwVXJFaXZqeCtMbVFOM1Q4ZENFWlgxQzlaU2R2Y3d3eUI0cER0aHkxVy9VUVNQdFMrcDBHeTl3cUp1MGVOVEhtUnpDRTJzTHAvL3dtSGFiRGlZWlMxZDVKb3c2MFRmeEFYelJ3ODhId1J0cjBZajVMTm54VW53dGdkMWZyTVQ1UlJXRkRtQlM4WmJZT2w2N1Z6dGJ2dUdBPT0iIC8+PC9jZmRpOkNvbXBsZW1lbnRvPjwvY2ZkaTpDb21wcm9iYW50ZT4NCg==\",\n        \"PDF\": \"https://app.facturadigital.com.mx/docs/pdf/27B5022F-539C-4CE1-B695-7CA3EB42AF83\",\n        \"XML\": \"https://app.facturadigital.com.mx/docs/xml/CACX7605101P8/27B5022F-539C-4CE1-B695-7CA3EB42AF83\"\n    }\n}"}],"_postman_id":"9d890302-5f91-4e6a-aab2-9a237b06ac51"},{"name":"Crear CFDI con Complemento Nómina","id":"77f8c603-eaf8-4d80-abda-9c63a516fa8e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n    \"Version\": \"4.0\",\n    \"Exportacion\": \"01\",\n    \"Serie\": \"NOM\",\n    \"Folio\": \"4374\",\n    \"Fecha\": \"2017-10-30T09:09:25\",\n    \"SubTotal\": \"7500.05\",\n    \"Descuento\": \"1234.09\",\n    \"Moneda\": \"MXN\",\n    \"Total\": \"6265.96\",\n    \"TipoDeComprobante\": \"N\",\n    \"FormaPago\": \"99\",\n    \"MetodoPago\": \"PUE\",\n    \"TipoCambio\": \"1\",\n    \"LugarExpedicion\": \"45079\",\n    \"Emisor\": {\n       \"RegimenFiscal\": \"601\"\n    },\n    \"Receptor\": {\n       \"Rfc\": \"MAQQ950112NM1\",\n       \"Nombre\": \"ROBERTO MARTINEZ CRUZ\",\n       \"UsoCFDI\": \"CN01\",\n       \"DomicilioFiscalReceptor\": \"67150\",\n       \"RegimenFiscalReceptor\": \"605\"\n    },\n    \"Conceptos\": [\n        {\n          \"ClaveProdServ\": \"84111505\",\n          \"Cantidad\": \"1\",\n          \"ClaveUnidad\": \"ACT\",\n          \"Descripcion\": \"Pago de nómina\",\n          \"ValorUnitario\": \"7500.05\",\n          \"Importe\": \"7500.05\",\n          \"Descuento\": \"1234.09\",\n          \"ObjetoImp\": \"01\"\n        }\n      ],\n    \"Complemento\": {\n       \"Nomina12\": {\n          \"Version\": \"1.2\",\n          \"FechaPago\": \"2016-10-31\",\n          \"FechaInicialPago\": \"2016-10-16\",\n          \"FechaFinalPago\": \"2016-10-31\",\n          \"NumDiasPagados\": \"15\",\n          \"TipoNomina\": \"O\",\n          \"TotalDeducciones\": \"1234.09\",\n          \"TotalOtrosPagos\": \"0.0\",\n          \"TotalPercepciones\": \"7500.05\",\n          \"Emisor\": {\n             \"RegistroPatronal\": \"1244555412\"\n          },\n          \"Receptor\": {\n             \"Curp\": \"CAPF771010HJCMSR03\",\n             \"TipoContrato\": \"01\",\n             \"TipoRegimen\": \"02\",\n             \"NumEmpleado\": \"060\",\n             \"PeriodicidadPago\": \"04\",\n             \"ClaveEntFed\": \"JAL\",\n             \"NumSeguridadSocial\": \"98765573454\",\n             \"Banco\": \"021\",\n             \"FechaInicioRelLaboral\": \"2016-06-01\",\n             \"Antigüedad\": \"P21W\",\n             \"Puesto\": \"Desarrollador\",\n             \"SalarioBaseCotApor\": \"435.50\",\n             \"RiesgoPuesto\": \"2\",\n             \"SalarioDiarioIntegrado\": \"435.50\"\n          },\n          \"Percepciones\": {\n             \"TotalGravado\": \"7500.05\",\n             \"TotalExento\": \"0.00\",\n             \"TotalSueldos\": \"7500.05\",\n             \"Percepcion\": [\n                {\n                   \"TipoPercepcion\": \"001\",\n                   \"Clave\": \"001\",\n                   \"Concepto\": \"Sueldos, Salarios Rayas y Jornales\",\n                   \"ImporteGravado\": \"6250.05\",\n                   \"ImporteExento\": \"0.00\"\n                },\n                {\n                   \"TipoPercepcion\": \"049\",\n                   \"Clave\": \"014\",\n                   \"Concepto\": \"Premios de asistencia\",\n                   \"ImporteGravado\": \"625.00\",\n                   \"ImporteExento\": \"0.00\"\n                },\n                {\n                   \"TipoPercepcion\": \"010\",\n                   \"Clave\": \"013\",\n                   \"Concepto\": \"Premios por puntualidad\",\n                   \"ImporteGravado\": \"625.00\",\n                   \"ImporteExento\": \"0.00\"\n                }\n             ]\n          },\n          \"Deducciones\": {\n             \"TotalOtrasDeducciones\": \"179.34\",\n             \"TotalImpuestosRetenidos\": \"1054.75\",\n             \"Deduccion\": [\n                {\n                   \"TipoDeduccion\": \"002\",\n                   \"Clave\": \"001\",\n                   \"Concepto\": \"ISR\",\n                   \"Importe\": \"1054.75\"\n                },\n                {\n                   \"TipoDeduccion\": \"001\",\n                   \"Clave\": \"012\",\n                   \"Concepto\": \"Seguridad social\",\n                   \"Importe\": \"179.34\"\n                }\n             ]\n          }\n       }\n    }\n  }","description":"<p>Cadena JSON con los datos del CFDI que deseas timbrar. Puedes solicitarnos ejemplos de la estructura de este JSON en <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n","type":"text"}]},"url":"{{URI}}/invoice/create","description":"<h1 id=\"guía-completa-complemento-de-nómina-12\">Guía Completa: Complemento de Nómina 1.2</h1>\n<h2 id=\"introducción\">Introducción</h2>\n<p>El <strong>Complemento de Nómina versión 1.2</strong> permite incorporar al Comprobante Fiscal Digital por Internet (CFDI) la información que ampara conceptos de ingresos por salarios, la prestación de un servicio personal subordinado o conceptos asimilados a salarios.</p>\n<h3 id=\"versión-y-vigencia\">Versión y Vigencia</h3>\n<ul>\n<li><strong>Versión del Complemento:</strong> 1.2</li>\n<li><strong>Revisión Actual:</strong> E</li>\n<li><strong>Vigencia:</strong> A partir del 01 de enero de 2026</li>\n<li><strong>Tipo de Comprobante:</strong> <code>\"N\"</code> (Nómina)</li>\n</ul>\n<h3 id=\"¿qué-hace-la-api-por-ti\">¿Qué hace la API por ti?</h3>\n<p>Nuestra API automatiza todos los procesos complejos de generación de Recibos de Nómina:</p>\n<ul>\n<li>✅ <strong>Validación automática</strong> de datos según normativa SAT</li>\n<li>✅ <strong>Estructuración XML</strong> conforme al esquema oficial</li>\n<li>✅ <strong>Validación de catálogos</strong> (tipos de percepción, deducción, etc.)</li>\n<li>✅ <strong>Cálculo de totales</strong> (percepciones, deducciones, otros pagos)</li>\n<li>✅ <strong>Timbrado</strong> con Proveedor Autorizado de Certificación (PAC)</li>\n<li>✅ <strong>Generación de PDF</strong> con diseño personalizable</li>\n<li>✅ <strong>Cumplimiento normativo</strong> con la revisión E vigente</li>\n</ul>\n<hr />\n<h2 id=\"estructura-base-del-cfdi-con-complemento-de-nómina\">Estructura Base del CFDI con Complemento de Nómina</h2>\n<h3 id=\"características-especiales-del-cfdi-de-nómina\">Características Especiales del CFDI de Nómina</h3>\n<p>El CFDI de Nómina tiene características particulares que lo diferencian de otros tipos de comprobantes:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Característica</th>\n<th>Valor</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>TipoDeComprobante</strong></td>\n<td><code>\"N\"</code></td>\n<td>Fijo para comprobantes de nómina</td>\n</tr>\n<tr>\n<td><strong>UsoCFDI del Receptor</strong></td>\n<td><code>\"CN01\"</code></td>\n<td>Uso específico para nómina</td>\n</tr>\n<tr>\n<td><strong>ClaveProdServ</strong></td>\n<td><code>\"84111505\"</code></td>\n<td>Clave fija para servicios de nómina</td>\n</tr>\n<tr>\n<td><strong>ClaveUnidad</strong></td>\n<td><code>\"ACT\"</code></td>\n<td>Unidad de medida fija</td>\n</tr>\n<tr>\n<td><strong>ObjetoImp</strong></td>\n<td><code>\"01\"</code></td>\n<td>No objeto de impuesto (el complemento maneja los impuestos)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"estructura-del-json-base\">Estructura del JSON Base</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"NOM\",\n  \"Folio\": \"4374\",\n  \"Fecha\": \"2024-12-20T09:09:25\",\n  \"SubTotal\": \"7500.05\",\n  \"Descuento\": \"1234.09\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"6265.96\",\n  \"TipoDeComprobante\": \"N\",\n  \"FormaPago\": \"99\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"45079\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"601\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"MAQQ950112NM1\",\n    \"Nombre\": \"ROBERTO MARTINEZ CRUZ\",\n    \"UsoCFDI\": \"CN01\",\n    \"DomicilioFiscalReceptor\": \"67150\",\n    \"RegimenFiscalReceptor\": \"605\"\n  },\n  \"Conceptos\": [\n    {\n      \"ClaveProdServ\": \"84111505\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Descripcion\": \"Pago de nómina\",\n      \"ValorUnitario\": \"7500.05\",\n      \"Importe\": \"7500.05\",\n      \"Descuento\": \"1234.09\",\n      \"ObjetoImp\": \"01\"\n    }\n  ],\n  \"Complemento\": {\n    \"Nomina12\": {\n      // Estructura del complemento de nómina\n    }\n  }\n}\n</code></pre>\n<hr />\n<h2 id=\"estructura-del-complemento-nomina12\">Estructura del Complemento Nomina12</h2>\n<h3 id=\"nodo-principal-nomina12\">Nodo Principal: Nomina12</h3>\n<p>El complemento de nómina se estructura dentro del nodo <code>Complemento.Nomina12</code> y contiene la siguiente información:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Complemento\": {\n  \"Nomina12\": {\n    \"Version\": \"1.2\",\n    \"TipoNomina\": \"O\",\n    \"FechaPago\": \"2024-12-20\",\n    \"FechaInicialPago\": \"2024-12-01\",\n    \"FechaFinalPago\": \"2024-12-20\",\n    \"NumDiasPagados\": \"20\",\n    \"TotalPercepciones\": \"7500.05\",\n    \"TotalDeducciones\": \"1234.09\",\n    \"TotalOtrosPagos\": \"0.00\"\n  }\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-principal\">Campos del Nodo Principal</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Version</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Versión del complemento</td>\n<td><code>\"1.2\"</code> (fijo)</td>\n</tr>\n<tr>\n<td><code>TipoNomina</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de nómina</td>\n<td><code>\"O\"</code> (Ordinaria), <code>\"E\"</code> (Extraordinaria)</td>\n</tr>\n<tr>\n<td><code>FechaPago</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Fecha efectiva de pago</td>\n<td>Formato: <code>\"YYYY-MM-DD\"</code></td>\n</tr>\n<tr>\n<td><code>FechaInicialPago</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Fecha inicial del período</td>\n<td>Formato: <code>\"YYYY-MM-DD\"</code></td>\n</tr>\n<tr>\n<td><code>FechaFinalPago</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Fecha final del período</td>\n<td>Formato: <code>\"YYYY-MM-DD\"</code></td>\n</tr>\n<tr>\n<td><code>NumDiasPagados</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número o fracción de días pagados</td>\n<td>Decimal (0.001 a 36160.000)</td>\n</tr>\n<tr>\n<td><code>TotalPercepciones</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Suma total de percepciones</td>\n<td>Decimal con 2 decimales</td>\n</tr>\n<tr>\n<td><code>TotalDeducciones</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Suma total de deducciones</td>\n<td>Decimal con 2 decimales</td>\n</tr>\n<tr>\n<td><code>TotalOtrosPagos</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Suma total de otros pagos</td>\n<td>Decimal con 2 decimales</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-emisor-complemento-de-nómina\">Nodo Emisor (Complemento de Nómina)</h2>\n<p>El nodo <code>Emisor</code> dentro del complemento de nómina contiene información específica del patrón.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Emisor\": {\n  \"Curp\": \"XAXX010101HDFXXX00\",\n  \"RegistroPatronal\": \"1244555412\",\n  \"RfcPatronOrigen\": \"ABC123456789\",\n  \"EntidadSNCF\": {\n    \"OrigenRecurso\": \"IP\",\n    \"MontoRecursoPropio\": \"5000.00\"\n  }\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-emisor\">Campos del Nodo Emisor</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Curp</code></td>\n<td>String</td>\n<td>❌</td>\n<td>CURP del emisor (si es persona física)</td>\n</tr>\n<tr>\n<td><code>RegistroPatronal</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Registro patronal o clave de ramo-pagaduría</td>\n</tr>\n<tr>\n<td><code>RfcPatronOrigen</code></td>\n<td>String</td>\n<td>❌</td>\n<td>RFC del patrón cuando el pago se realiza a través de un tercero</td>\n</tr>\n<tr>\n<td><code>EntidadSNCF</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Información para entidades del Sistema Nacional de Coordinación Fiscal</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-entidadsncf\">Nodo EntidadSNCF</h3>\n<p>Este nodo es obligatorio para entidades adheridas al Sistema Nacional de Coordinación Fiscal.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"EntidadSNCF\": {\n  \"OrigenRecurso\": \"IP\",\n  \"MontoRecursoPropio\": \"5000.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>OrigenRecurso</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Origen del recurso utilizado</td>\n<td>Ver catálogo c_OrigenRecurso</td>\n</tr>\n<tr>\n<td><code>MontoRecursoPropio</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Monto pagado con recursos propios (si origen es mixto)</td>\n<td>Decimal</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Valores comunes de OrigenRecurso:</strong></p>\n<ul>\n<li><code>\"IP\"</code> - Ingresos propios</li>\n<li><code>\"IF\"</code> - Ingresos federales</li>\n<li><code>\"IM\"</code> - Ingresos mixtos</li>\n</ul>\n<hr />\n<h2 id=\"nodo-receptor-complemento-de-nómina\">Nodo Receptor (Complemento de Nómina)</h2>\n<p>El nodo <code>Receptor</code> contiene la información del trabajador (empleado).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Receptor\": {\n  \"Curp\": \"CAPF771010HJCMSR03\",\n  \"NumSeguridadSocial\": \"98765573454\",\n  \"FechaInicioRelLaboral\": \"2024-06-01\",\n  \"Antigüedad\": \"P6M\",\n  \"TipoContrato\": \"01\",\n  \"Sindicalizado\": \"No\",\n  \"TipoJornada\": \"01\",\n  \"TipoRegimen\": \"02\",\n  \"NumEmpleado\": \"060\",\n  \"Departamento\": \"Desarrollo\",\n  \"Puesto\": \"Desarrollador\",\n  \"RiesgoPuesto\": \"2\",\n  \"PeriodicidadPago\": \"04\",\n  \"Banco\": \"021\",\n  \"CuentaBancaria\": \"123456789012345678\",\n  \"SalarioBaseCotApor\": \"435.50\",\n  \"SalarioDiarioIntegrado\": \"435.50\",\n  \"ClaveEntFed\": \"JAL\",\n  \"SubContratacion\": [\n    {\n      \"RfcLabora\": \"ABC123456789\",\n      \"PorcentajeTiempo\": \"50.00\"\n    }\n  ]\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-receptor\">Campos del Nodo Receptor</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores/Formato</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Curp</code></td>\n<td>String</td>\n<td>✅</td>\n<td>CURP del trabajador</td>\n<td>18 caracteres</td>\n</tr>\n<tr>\n<td><code>NumSeguridadSocial</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Número de seguridad social</td>\n<td>Máximo 15 dígitos</td>\n</tr>\n<tr>\n<td><code>FechaInicioRelLaboral</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Fecha de inicio de relación laboral</td>\n<td><code>\"YYYY-MM-DD\"</code></td>\n</tr>\n<tr>\n<td><code>Antigüedad</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Antigüedad del trabajador</td>\n<td>Formato ISO 8601: <code>\"P[n]Y[n]M[n]D\"</code> o <code>\"P[n]W\"</code></td>\n</tr>\n<tr>\n<td><code>TipoContrato</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de contrato</td>\n<td>Ver catálogo c_TipoContrato</td>\n</tr>\n<tr>\n<td><code>Sindicalizado</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Si está asociado a sindicato</td>\n<td><code>\"Sí\"</code> o <code>\"No\"</code></td>\n</tr>\n<tr>\n<td><code>TipoJornada</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Tipo de jornada</td>\n<td>Ver catálogo c_TipoJornada</td>\n</tr>\n<tr>\n<td><code>TipoRegimen</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Régimen de contratación</td>\n<td>Ver catálogo c_TipoRegimen</td>\n</tr>\n<tr>\n<td><code>NumEmpleado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número de empleado</td>\n<td>1 a 15 caracteres</td>\n</tr>\n<tr>\n<td><code>Departamento</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Departamento o área</td>\n<td>Máximo 100 caracteres</td>\n</tr>\n<tr>\n<td><code>Puesto</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Puesto o actividad</td>\n<td>Máximo 100 caracteres</td>\n</tr>\n<tr>\n<td><code>RiesgoPuesto</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave de riesgo del puesto</td>\n<td>Ver catálogo c_RiesgoPuesto</td>\n</tr>\n<tr>\n<td><code>PeriodicidadPago</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Periodicidad de pago</td>\n<td>Ver catálogo c_PeriodicidadPago</td>\n</tr>\n<tr>\n<td><code>Banco</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave del banco</td>\n<td>Ver catálogo c_Banco</td>\n</tr>\n<tr>\n<td><code>CuentaBancaria</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Cuenta bancaria, CLABE o tarjeta</td>\n<td>10, 11, 15, 16 o 18 posiciones</td>\n</tr>\n<tr>\n<td><code>SalarioBaseCotApor</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Salario base para cotización</td>\n<td>Decimal</td>\n</tr>\n<tr>\n<td><code>SalarioDiarioIntegrado</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Salario diario integrado</td>\n<td>Decimal</td>\n</tr>\n<tr>\n<td><code>ClaveEntFed</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave de entidad federativa</td>\n<td>Ver catálogo c_Estado (3 caracteres)</td>\n</tr>\n<tr>\n<td><code>SubContratacion</code></td>\n<td>Array</td>\n<td>❌</td>\n<td>Lista de subcontrataciones</td>\n<td>Ver abajo</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"formato-de-antigüedad\">Formato de Antigüedad</h3>\n<p>La antigüedad se expresa en formato ISO 8601:</p>\n<ul>\n<li><strong>Por semanas:</strong> <code>\"P21W\"</code> (21 semanas)</li>\n<li><strong>Por años, meses y días:</strong> <code>\"P6Y3M15D\"</code> (6 años, 3 meses, 15 días)</li>\n<li><strong>Solo días:</strong> <code>\"P30D\"</code> (30 días)</li>\n</ul>\n<h3 id=\"nodo-subcontratacion\">Nodo SubContratacion</h3>\n<p>Array que contiene las empresas que subcontrataron al trabajador.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"SubContratacion\": [\n  {\n    \"RfcLabora\": \"ABC123456789\",\n    \"PorcentajeTiempo\": \"50.00\"\n  }\n]\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>RfcLabora</code></td>\n<td>String</td>\n<td>✅</td>\n<td>RFC de la empresa que subcontrata</td>\n</tr>\n<tr>\n<td><code>PorcentajeTiempo</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Porcentaje de tiempo trabajado</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-percepciones\">Nodo Percepciones</h2>\n<p>El nodo <code>Percepciones</code> contiene todas las percepciones (ingresos) del trabajador.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Percepciones\": {\n  \"TotalSueldos\": \"7500.05\",\n  \"TotalSeparacionIndemnizacion\": \"0.00\",\n  \"TotalJubilacionPensionRetiro\": \"0.00\",\n  \"TotalGravado\": \"7500.05\",\n  \"TotalExento\": \"0.00\",\n  \"Percepcion\": [\n    {\n      \"TipoPercepcion\": \"001\",\n      \"Clave\": \"001\",\n      \"Concepto\": \"Sueldos, Salarios Rayas y Jornales\",\n      \"ImporteGravado\": \"6250.05\",\n      \"ImporteExento\": \"0.00\",\n      \"HorasExtra\": [\n        {\n          \"Dias\": \"2\",\n          \"TipoHoras\": \"03\",\n          \"HorasExtra\": \"4\",\n          \"ImportePagado\": \"500.00\"\n        }\n      ]\n    },\n    {\n      \"TipoPercepcion\": \"049\",\n      \"Clave\": \"014\",\n      \"Concepto\": \"Premios de asistencia\",\n      \"ImporteGravado\": \"625.00\",\n      \"ImporteExento\": \"0.00\"\n    }\n  ],\n  \"JubilacionPensionRetiro\": {\n    \"TotalUnaExhibicion\": \"0.00\",\n    \"TotalParcialidad\": \"0.00\",\n    \"MontoDiario\": \"0.00\",\n    \"IngresoAcumulable\": \"0.00\",\n    \"IngresoNoAcumulable\": \"0.00\"\n  },\n  \"SeparacionIndemnizacion\": {\n    \"TotalPagado\": \"0.00\",\n    \"NumAñosServicio\": \"0\",\n    \"UltimoSueldoMensOrd\": \"0.00\",\n    \"IngresoAcumulable\": \"0.00\",\n    \"IngresoNoAcumulable\": \"0.00\"\n  }\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-percepciones\">Campos del Nodo Percepciones</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TotalSueldos</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Total de sueldos y salarios</td>\n</tr>\n<tr>\n<td><code>TotalSeparacionIndemnizacion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Total de separación e indemnización</td>\n</tr>\n<tr>\n<td><code>TotalJubilacionPensionRetiro</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Total de jubilación, pensión o retiro</td>\n</tr>\n<tr>\n<td><code>TotalGravado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Total de percepciones gravadas</td>\n</tr>\n<tr>\n<td><code>TotalExento</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Total de percepciones exentas</td>\n</tr>\n<tr>\n<td><code>Percepcion</code></td>\n<td>Array</td>\n<td>✅</td>\n<td>Array de percepciones individuales</td>\n</tr>\n<tr>\n<td><code>JubilacionPensionRetiro</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Información de jubilación/pensión</td>\n</tr>\n<tr>\n<td><code>SeparacionIndemnizacion</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Información de separación/indemnización</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-percepcion-array\">Nodo Percepcion (Array)</h3>\n<p>Cada elemento del array representa una percepción individual.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"TipoPercepcion\": \"001\",\n  \"Clave\": \"001\",\n  \"Concepto\": \"Sueldos, Salarios Rayas y Jornales\",\n  \"ImporteGravado\": \"6250.05\",\n  \"ImporteExento\": \"0.00\",\n  \"AccionesOTitulos\": {\n    \"ValorMercado\": \"1000.00\",\n    \"PrecioAlOtorgarse\": \"800.00\"\n  },\n  \"HorasExtra\": [\n    {\n      \"Dias\": \"2\",\n      \"TipoHoras\": \"03\",\n      \"HorasExtra\": \"4\",\n      \"ImportePagado\": \"500.00\"\n    }\n  ]\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoPercepcion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave del tipo de percepción</td>\n</tr>\n<tr>\n<td><code>Clave</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave interna de la percepción</td>\n</tr>\n<tr>\n<td><code>Concepto</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Descripción del concepto</td>\n</tr>\n<tr>\n<td><code>ImporteGravado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Importe gravado de la percepción</td>\n</tr>\n<tr>\n<td><code>ImporteExento</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Importe exento de la percepción</td>\n</tr>\n<tr>\n<td><code>AccionesOTitulos</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Información de acciones o títulos valor</td>\n</tr>\n<tr>\n<td><code>HorasExtra</code></td>\n<td>Array</td>\n<td>❌</td>\n<td>Array de horas extra trabajadas</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"tipos-de-percepción-comunes\">Tipos de Percepción Comunes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Clave</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>\"001\"</code></td>\n<td>Sueldos, Salarios Rayas y Jornales</td>\n</tr>\n<tr>\n<td><code>\"002\"</code></td>\n<td>Gratificación Anual (Aguinaldo)</td>\n</tr>\n<tr>\n<td><code>\"003\"</code></td>\n<td>Participación de los Trabajadores en las Utilidades PTU</td>\n</tr>\n<tr>\n<td><code>\"004\"</code></td>\n<td>Reembolso de Gastos Médicos Dentales y Hospitalarios</td>\n</tr>\n<tr>\n<td><code>\"005\"</code></td>\n<td>Fondo de Ahorro</td>\n</tr>\n<tr>\n<td><code>\"006\"</code></td>\n<td>Caja de ahorro</td>\n</tr>\n<tr>\n<td><code>\"010\"</code></td>\n<td>Premios por puntualidad</td>\n</tr>\n<tr>\n<td><code>\"011\"</code></td>\n<td>Prima de Seguro de vida</td>\n</tr>\n<tr>\n<td><code>\"012\"</code></td>\n<td>Seguro de Gastos Médicos Mayores</td>\n</tr>\n<tr>\n<td><code>\"013\"</code></td>\n<td>Cuotas Sindicales Pagadas por el Patrón</td>\n</tr>\n<tr>\n<td><code>\"014\"</code></td>\n<td>Subsidios por incapacidad</td>\n</tr>\n<tr>\n<td><code>\"015\"</code></td>\n<td>Becas para trabajadores</td>\n</tr>\n<tr>\n<td><code>\"019\"</code></td>\n<td>Horas extra</td>\n</tr>\n<tr>\n<td><code>\"020\"</code></td>\n<td>Prima dominical</td>\n</tr>\n<tr>\n<td><code>\"021\"</code></td>\n<td>Prima vacacional</td>\n</tr>\n<tr>\n<td><code>\"022\"</code></td>\n<td>Prima por antigüedad</td>\n</tr>\n<tr>\n<td><code>\"023\"</code></td>\n<td>Pagos por separación</td>\n</tr>\n<tr>\n<td><code>\"024\"</code></td>\n<td>Seguro de retiro</td>\n</tr>\n<tr>\n<td><code>\"025\"</code></td>\n<td>Indemnizaciones</td>\n</tr>\n<tr>\n<td><code>\"026\"</code></td>\n<td>Reembolso por funeral</td>\n</tr>\n<tr>\n<td><code>\"027\"</code></td>\n<td>Cuotas de seguridad social pagadas por el patrón</td>\n</tr>\n<tr>\n<td><code>\"028\"</code></td>\n<td>Comisiones</td>\n</tr>\n<tr>\n<td><code>\"029\"</code></td>\n<td>Vales de despensa</td>\n</tr>\n<tr>\n<td><code>\"030\"</code></td>\n<td>Vales de restaurante</td>\n</tr>\n<tr>\n<td><code>\"031\"</code></td>\n<td>Vales de gasolina</td>\n</tr>\n<tr>\n<td><code>\"032\"</code></td>\n<td>Vales de ropa</td>\n</tr>\n<tr>\n<td><code>\"033\"</code></td>\n<td>Ayuda para renta</td>\n</tr>\n<tr>\n<td><code>\"034\"</code></td>\n<td>Ayuda para artículos escolares</td>\n</tr>\n<tr>\n<td><code>\"035\"</code></td>\n<td>Ayuda para anteojos</td>\n</tr>\n<tr>\n<td><code>\"036\"</code></td>\n<td>Ayuda para transporte</td>\n</tr>\n<tr>\n<td><code>\"037\"</code></td>\n<td>Ayuda para gastos de funeral</td>\n</tr>\n<tr>\n<td><code>\"038\"</code></td>\n<td>Otros ingresos por salarios</td>\n</tr>\n<tr>\n<td><code>\"039\"</code></td>\n<td>Jubilaciones, pensiones o haberes de retiro en una exhibición</td>\n</tr>\n<tr>\n<td><code>\"044\"</code></td>\n<td>Jubilaciones, pensiones o haberes de retiro en parcialidades</td>\n</tr>\n<tr>\n<td><code>\"045\"</code></td>\n<td>Ingresos en acciones o títulos valor que representan bienes</td>\n</tr>\n<tr>\n<td><code>\"046\"</code></td>\n<td>Alimentación</td>\n</tr>\n<tr>\n<td><code>\"047\"</code></td>\n<td>Habitación</td>\n</tr>\n<tr>\n<td><code>\"048\"</code></td>\n<td>Premios por asistencia</td>\n</tr>\n<tr>\n<td><code>\"049\"</code></td>\n<td>Viáticos</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-accionesotitulos\">Nodo AccionesOTitulos</h3>\n<p>Información sobre ingresos por acciones o títulos valor.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"AccionesOTitulos\": {\n  \"ValorMercado\": \"1000.00\",\n  \"PrecioAlOtorgarse\": \"800.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ValorMercado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Valor de mercado al ejercer la opción</td>\n</tr>\n<tr>\n<td><code>PrecioAlOtorgarse</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Precio establecido al otorgarse la opción</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-horasextra-array\">Nodo HorasExtra (Array)</h3>\n<p>Array que contiene las horas extra trabajadas.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"HorasExtra\": [\n  {\n    \"Dias\": \"2\",\n    \"TipoHoras\": \"03\",\n    \"HorasExtra\": \"4\",\n    \"ImportePagado\": \"500.00\"\n  }\n]\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Dias</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>Número de días con horas extra</td>\n<td>Mínimo 1</td>\n</tr>\n<tr>\n<td><code>TipoHoras</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de horas extra</td>\n<td>Ver catálogo c_TipoHoras</td>\n</tr>\n<tr>\n<td><code>HorasExtra</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>Número de horas extra</td>\n<td>Mínimo 1</td>\n</tr>\n<tr>\n<td><code>ImportePagado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Importe pagado por horas extra</td>\n<td>Decimal</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Tipos de Horas Comunes:</strong></p>\n<ul>\n<li><code>\"01\"</code> - Dobles</li>\n<li><code>\"02\"</code> - Triples</li>\n<li><code>\"03\"</code> - Tiempo extra</li>\n</ul>\n<h3 id=\"nodo-jubilacionpensionretiro\">Nodo JubilacionPensionRetiro</h3>\n<p>Información sobre pagos por jubilación, pensión o haberes de retiro.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"JubilacionPensionRetiro\": {\n  \"TotalUnaExhibicion\": \"50000.00\",\n  \"TotalParcialidad\": \"0.00\",\n  \"MontoDiario\": \"0.00\",\n  \"IngresoAcumulable\": \"40000.00\",\n  \"IngresoNoAcumulable\": \"10000.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TotalUnaExhibicion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Monto total si se paga en una exhibición</td>\n</tr>\n<tr>\n<td><code>TotalParcialidad</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Ingresos totales si se paga en parcialidades</td>\n</tr>\n<tr>\n<td><code>MontoDiario</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Monto diario percibido (en parcialidades)</td>\n</tr>\n<tr>\n<td><code>IngresoAcumulable</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Ingresos acumulables</td>\n</tr>\n<tr>\n<td><code>IngresoNoAcumulable</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Ingresos no acumulables</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-separacionindemnizacion\">Nodo SeparacionIndemnizacion</h3>\n<p>Información sobre pagos por separación e indemnización.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"SeparacionIndemnizacion\": {\n  \"TotalPagado\": \"50000.00\",\n  \"NumAñosServicio\": \"5\",\n  \"UltimoSueldoMensOrd\": \"15000.00\",\n  \"IngresoAcumulable\": \"40000.00\",\n  \"IngresoNoAcumulable\": \"10000.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TotalPagado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Monto total del pago</td>\n</tr>\n<tr>\n<td><code>NumAñosServicio</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>Número de años de servicio (0 a 99)</td>\n</tr>\n<tr>\n<td><code>UltimoSueldoMensOrd</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Último sueldo mensual ordinario</td>\n</tr>\n<tr>\n<td><code>IngresoAcumulable</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Ingresos acumulables</td>\n</tr>\n<tr>\n<td><code>IngresoNoAcumulable</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Ingresos no acumulables</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-deducciones\">Nodo Deducciones</h2>\n<p>El nodo <code>Deducciones</code> contiene todas las deducciones aplicadas al trabajador.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Deducciones\": {\n  \"TotalOtrasDeducciones\": \"179.34\",\n  \"TotalImpuestosRetenidos\": \"1054.75\",\n  \"Deduccion\": [\n    {\n      \"TipoDeduccion\": \"002\",\n      \"Clave\": \"001\",\n      \"Concepto\": \"ISR\",\n      \"Importe\": \"1054.75\"\n    },\n    {\n      \"TipoDeduccion\": \"001\",\n      \"Clave\": \"012\",\n      \"Concepto\": \"Seguridad social\",\n      \"Importe\": \"179.34\"\n    }\n  ]\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-deducciones\">Campos del Nodo Deducciones</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TotalOtrasDeducciones</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Total de deducciones distintas a ISR</td>\n</tr>\n<tr>\n<td><code>TotalImpuestosRetenidos</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Total de ISR retenido (TipoDeduccion 002)</td>\n</tr>\n<tr>\n<td><code>Deduccion</code></td>\n<td>Array</td>\n<td>✅</td>\n<td>Array de deducciones individuales</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-deduccion-array\">Nodo Deduccion (Array)</h3>\n<p>Cada elemento del array representa una deducción individual.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"TipoDeduccion\": \"002\",\n  \"Clave\": \"001\",\n  \"Concepto\": \"ISR\",\n  \"Importe\": \"1054.75\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoDeduccion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave del tipo de deducción</td>\n</tr>\n<tr>\n<td><code>Clave</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave interna de la deducción</td>\n</tr>\n<tr>\n<td><code>Concepto</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Descripción del concepto</td>\n</tr>\n<tr>\n<td><code>Importe</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Importe de la deducción</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"tipos-de-deducción-comunes\">Tipos de Deducción Comunes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Clave</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>\"001\"</code></td>\n<td>Seguridad social</td>\n</tr>\n<tr>\n<td><code>\"002\"</code></td>\n<td>ISR</td>\n</tr>\n<tr>\n<td><code>\"003\"</code></td>\n<td>Aportaciones a retiro, cesantía en edad avanzada y vejez</td>\n</tr>\n<tr>\n<td><code>\"004\"</code></td>\n<td>Otros</td>\n</tr>\n<tr>\n<td><code>\"005\"</code></td>\n<td>Aportaciones a Fondo de vivienda</td>\n</tr>\n<tr>\n<td><code>\"006\"</code></td>\n<td>Descuento por incapacidad</td>\n</tr>\n<tr>\n<td><code>\"007\"</code></td>\n<td>Pensión alimenticia</td>\n</tr>\n<tr>\n<td><code>\"008\"</code></td>\n<td>Renta</td>\n</tr>\n<tr>\n<td><code>\"009\"</code></td>\n<td>Préstamos provenientes del Fondo Nacional de la Vivienda para los Trabajadores</td>\n</tr>\n<tr>\n<td><code>\"010\"</code></td>\n<td>Pago por crédito de vivienda</td>\n</tr>\n<tr>\n<td><code>\"011\"</code></td>\n<td>Pago de abono INFONACOT</td>\n</tr>\n<tr>\n<td><code>\"012\"</code></td>\n<td>Anticipo de salarios</td>\n</tr>\n<tr>\n<td><code>\"013\"</code></td>\n<td>Pagos realizados como trabajador por cuenta ajena</td>\n</tr>\n<tr>\n<td><code>\"014\"</code></td>\n<td>Pagos por subcontratación</td>\n</tr>\n<tr>\n<td><code>\"015\"</code></td>\n<td>Pensiones alimenticias</td>\n</tr>\n<tr>\n<td><code>\"019\"</code></td>\n<td>Jubilación, pensión o haberes de retiro en una exhibición (Art. 94 LISR)</td>\n</tr>\n<tr>\n<td><code>\"020\"</code></td>\n<td>Jubilación, pensión o haberes de retiro en parcialidades (Art. 94 LISR)</td>\n</tr>\n<tr>\n<td><code>\"021\"</code></td>\n<td>Compensaciones</td>\n</tr>\n<tr>\n<td><code>\"022\"</code></td>\n<td>Reducción de salarios</td>\n</tr>\n<tr>\n<td><code>\"023\"</code></td>\n<td>Fondo de ahorro</td>\n</tr>\n<tr>\n<td><code>\"024\"</code></td>\n<td>Caja de ahorro</td>\n</tr>\n<tr>\n<td><code>\"025\"</code></td>\n<td>Cuotas sindicales</td>\n</tr>\n<tr>\n<td><code>\"026\"</code></td>\n<td>Ausencia (Ausentismo)</td>\n</tr>\n<tr>\n<td><code>\"027\"</code></td>\n<td>Cuotas obrero patronales</td>\n</tr>\n<tr>\n<td><code>\"028\"</code></td>\n<td>Aportaciones voluntarias</td>\n</tr>\n<tr>\n<td><code>\"029\"</code></td>\n<td>Aportaciones complementarias de retiro</td>\n</tr>\n<tr>\n<td><code>\"030\"</code></td>\n<td>Seguro de retiro</td>\n</tr>\n<tr>\n<td><code>\"031\"</code></td>\n<td>Aportaciones a planes de pensiones privados</td>\n</tr>\n<tr>\n<td><code>\"032\"</code></td>\n<td>Aportaciones a planes de pensiones privados con aportación del trabajador</td>\n</tr>\n<tr>\n<td><code>\"033\"</code></td>\n<td>Aportaciones a planes de pensiones privados sin aportación del trabajador</td>\n</tr>\n<tr>\n<td><code>\"034\"</code></td>\n<td>Aportaciones a planes de pensiones privados con aportación del trabajador y del patrón</td>\n</tr>\n<tr>\n<td><code>\"035\"</code></td>\n<td>Aportaciones a planes de pensiones privados sin aportación del trabajador y del patrón</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-otrospagos\">Nodo OtrosPagos</h2>\n<p>El nodo <code>OtrosPagos</code> contiene pagos adicionales que no son percepciones ni deducciones.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"OtrosPagos\": {\n  \"OtroPago\": [\n    {\n      \"TipoOtroPago\": \"002\",\n      \"Clave\": \"001\",\n      \"Concepto\": \"Viáticos\",\n      \"Importe\": \"500.00\",\n      \"SubsidioAlEmpleo\": {\n        \"SubsidioCausado\": \"100.00\"\n      },\n      \"CompensacionSaldosAFavor\": {\n        \"SaldoAFavor\": \"200.00\",\n        \"Año\": \"2024\",\n        \"RemanenteSalFav\": \"150.00\"\n      }\n    }\n  ]\n}\n</code></pre>\n<h3 id=\"nodo-otropago-array\">Nodo OtroPago (Array)</h3>\n<p>Cada elemento del array representa un pago adicional.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"TipoOtroPago\": \"002\",\n  \"Clave\": \"001\",\n  \"Concepto\": \"Viáticos\",\n  \"Importe\": \"500.00\",\n  \"SubsidioAlEmpleo\": {\n    \"SubsidioCausado\": \"100.00\"\n  },\n  \"CompensacionSaldosAFavor\": {\n    \"SaldoAFavor\": \"200.00\",\n    \"Año\": \"2024\",\n    \"RemanenteSalFav\": \"150.00\"\n  }\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoOtroPago</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave del tipo de otro pago</td>\n</tr>\n<tr>\n<td><code>Clave</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave interna del otro pago</td>\n</tr>\n<tr>\n<td><code>Concepto</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Descripción del concepto</td>\n</tr>\n<tr>\n<td><code>Importe</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Importe del otro pago</td>\n</tr>\n<tr>\n<td><code>SubsidioAlEmpleo</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Información del subsidio al empleo</td>\n</tr>\n<tr>\n<td><code>CompensacionSaldosAFavor</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Información de compensación de saldos</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"tipos-de-otro-pago-comunes\">Tipos de Otro Pago Comunes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Clave</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>\"001\"</code></td>\n<td>Reintegro de ISR pagado en exceso (Art. 1o. fracción V de la LISR)</td>\n</tr>\n<tr>\n<td><code>\"002\"</code></td>\n<td>Subsidio para el empleo (efectivamente entregado al trabajador)</td>\n</tr>\n<tr>\n<td><code>\"003\"</code></td>\n<td>Viáticos (entregados al trabajador)</td>\n</tr>\n<tr>\n<td><code>\"004\"</code></td>\n<td>Aplicación de saldo a favor por compensación anual</td>\n</tr>\n<tr>\n<td><code>\"005\"</code></td>\n<td>Reintegro de ISR retenido en exceso de ejercicios anteriores</td>\n</tr>\n<tr>\n<td><code>\"006\"</code></td>\n<td>Reintegro de ISR pagado en exceso de ejercicios anteriores</td>\n</tr>\n<tr>\n<td><code>\"007\"</code></td>\n<td>Reintegro de ISR retenido en exceso de ejercicios anteriores (Art. 1o. fracción V de la LISR)</td>\n</tr>\n<tr>\n<td><code>\"008\"</code></td>\n<td>Reintegro de ISR pagado en exceso de ejercicios anteriores (Art. 1o. fracción V de la LISR)</td>\n</tr>\n<tr>\n<td><code>\"009\"</code></td>\n<td>Reintegro de ISR retenido en exceso de ejercicios anteriores (Art. 1o. fracción V de la LISR)</td>\n</tr>\n<tr>\n<td><code>\"010\"</code></td>\n<td>Reintegro de ISR pagado en exceso de ejercicios anteriores (Art. 1o. fracción V de la LISR)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-subsidioalempleo\">Nodo SubsidioAlEmpleo</h3>\n<p>Información sobre el subsidio al empleo.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"SubsidioAlEmpleo\": {\n  \"SubsidioCausado\": \"100.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>SubsidioCausado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Subsidio causado según tabla del Anexo 8 RMF</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-compensacionsaldosafavor\">Nodo CompensacionSaldosAFavor</h3>\n<p>Información sobre compensación de saldos a favor.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"CompensacionSaldosAFavor\": {\n  \"SaldoAFavor\": \"200.00\",\n  \"Año\": \"2024\",\n  \"RemanenteSalFav\": \"150.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>SaldoAFavor</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Saldo a favor determinado en periodos anteriores</td>\n</tr>\n<tr>\n<td><code>Año</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>Año en que se determinó el saldo a favor</td>\n</tr>\n<tr>\n<td><code>RemanenteSalFav</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Remanente del saldo a favor</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-incapacidades\">Nodo Incapacidades</h2>\n<p>El nodo <code>Incapacidades</code> contiene información sobre las incapacidades del trabajador.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Incapacidades\": {\n  \"Incapacidad\": [\n    {\n      \"DiasIncapacidad\": \"3\",\n      \"TipoIncapacidad\": \"01\",\n      \"ImporteMonetario\": \"500.00\"\n    }\n  ]\n}\n</code></pre>\n<h3 id=\"nodo-incapacidad-array\">Nodo Incapacidad (Array)</h3>\n<p>Cada elemento del array representa una incapacidad.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"DiasIncapacidad\": \"3\",\n  \"TipoIncapacidad\": \"01\",\n  \"ImporteMonetario\": \"500.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>DiasIncapacidad</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>Número de días de incapacidad</td>\n<td>Mínimo 1</td>\n</tr>\n<tr>\n<td><code>TipoIncapacidad</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de incapacidad</td>\n<td>Ver catálogo c_TipoIncapacidad</td>\n</tr>\n<tr>\n<td><code>ImporteMonetario</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Monto del importe monetario</td>\n<td>Decimal</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"tipos-de-incapacidad-comunes\">Tipos de Incapacidad Comunes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Clave</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>\"01\"</code></td>\n<td>Riesgo de trabajo</td>\n</tr>\n<tr>\n<td><code>\"02\"</code></td>\n<td>Enfermedad en general</td>\n</tr>\n<tr>\n<td><code>\"03\"</code></td>\n<td>Maternidad</td>\n</tr>\n<tr>\n<td><code>\"04\"</code></td>\n<td>Guardería</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"ejemplo-completo-recibo-de-nómina\">Ejemplo Completo: Recibo de Nómina</h2>\n<p>A continuación se presenta un ejemplo completo de un recibo de nómina con todos los nodos principales:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"NOM\",\n  \"Folio\": \"4374\",\n  \"Fecha\": \"2024-12-20T09:09:25\",\n  \"SubTotal\": \"7500.05\",\n  \"Descuento\": \"1234.09\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"6265.96\",\n  \"TipoDeComprobante\": \"N\",\n  \"FormaPago\": \"99\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"45079\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"601\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"MAQQ950112NM1\",\n    \"Nombre\": \"ROBERTO MARTINEZ CRUZ\",\n    \"UsoCFDI\": \"CN01\",\n    \"DomicilioFiscalReceptor\": \"67150\",\n    \"RegimenFiscalReceptor\": \"605\"\n  },\n  \"Conceptos\": [\n    {\n      \"ClaveProdServ\": \"84111505\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Descripcion\": \"Pago de nómina\",\n      \"ValorUnitario\": \"7500.05\",\n      \"Importe\": \"7500.05\",\n      \"Descuento\": \"1234.09\",\n      \"ObjetoImp\": \"01\"\n    }\n  ],\n  \"Complemento\": {\n    \"Nomina12\": {\n      \"Version\": \"1.2\",\n      \"TipoNomina\": \"O\",\n      \"FechaPago\": \"2024-12-20\",\n      \"FechaInicialPago\": \"2024-12-01\",\n      \"FechaFinalPago\": \"2024-12-20\",\n      \"NumDiasPagados\": \"20\",\n      \"TotalPercepciones\": \"7500.05\",\n      \"TotalDeducciones\": \"1234.09\",\n      \"TotalOtrosPagos\": \"0.00\",\n      \"Emisor\": {\n        \"RegistroPatronal\": \"1244555412\"\n      },\n      \"Receptor\": {\n        \"Curp\": \"CAPF771010HJCMSR03\",\n        \"TipoContrato\": \"01\",\n        \"TipoRegimen\": \"02\",\n        \"NumEmpleado\": \"060\",\n        \"PeriodicidadPago\": \"04\",\n        \"ClaveEntFed\": \"JAL\",\n        \"NumSeguridadSocial\": \"98765573454\",\n        \"Banco\": \"021\",\n        \"FechaInicioRelLaboral\": \"2024-06-01\",\n        \"Antigüedad\": \"P6M\",\n        \"Puesto\": \"Desarrollador\",\n        \"SalarioBaseCotApor\": \"435.50\",\n        \"RiesgoPuesto\": \"2\",\n        \"SalarioDiarioIntegrado\": \"435.50\"\n      },\n      \"Percepciones\": {\n        \"TotalGravado\": \"7500.05\",\n        \"TotalExento\": \"0.00\",\n        \"TotalSueldos\": \"7500.05\",\n        \"Percepcion\": [\n          {\n            \"TipoPercepcion\": \"001\",\n            \"Clave\": \"001\",\n            \"Concepto\": \"Sueldos, Salarios Rayas y Jornales\",\n            \"ImporteGravado\": \"6250.05\",\n            \"ImporteExento\": \"0.00\"\n          },\n          {\n            \"TipoPercepcion\": \"049\",\n            \"Clave\": \"014\",\n            \"Concepto\": \"Premios de asistencia\",\n            \"ImporteGravado\": \"625.00\",\n            \"ImporteExento\": \"0.00\"\n          },\n          {\n            \"TipoPercepcion\": \"010\",\n            \"Clave\": \"013\",\n            \"Concepto\": \"Premios por puntualidad\",\n            \"ImporteGravado\": \"625.00\",\n            \"ImporteExento\": \"0.00\"\n          }\n        ]\n      },\n      \"Deducciones\": {\n        \"TotalOtrasDeducciones\": \"179.34\",\n        \"TotalImpuestosRetenidos\": \"1054.75\",\n        \"Deduccion\": [\n          {\n            \"TipoDeduccion\": \"002\",\n            \"Clave\": \"001\",\n            \"Concepto\": \"ISR\",\n            \"Importe\": \"1054.75\"\n          },\n          {\n            \"TipoDeduccion\": \"001\",\n            \"Clave\": \"012\",\n            \"Concepto\": \"Seguridad social\",\n            \"Importe\": \"179.34\"\n          }\n        ]\n      }\n    }\n  }\n}\n</code></pre>\n<hr />\n<h2 id=\"uso-de-la-api\">Uso de la API</h2>\n<h3 id=\"endpoint\">Endpoint</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST /api/v5/invoice/create\n</code></pre><h3 id=\"headers-requeridos\">Headers Requeridos</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>Content-Type: application/x-www-form-urlencoded\nX-Api-Key: [TU_API_KEY]\n</code></pre><h3 id=\"ejemplo-con-curl\">Ejemplo con cURL</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\">curl --location 'https://facturadigital_v4.test/api/v5/invoice/create' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--header 'X-Api-Key: TU_API_KEY' \\\n--data-urlencode 'json={\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"NOM\",\n  \"Folio\": \"4374\",\n  \"Fecha\": \"2024-12-20T09:09:25\",\n  \"SubTotal\": \"7500.05\",\n  \"Descuento\": \"1234.09\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"6265.96\",\n  \"TipoDeComprobante\": \"N\",\n  \"FormaPago\": \"99\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"45079\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"601\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"MAQQ950112NM1\",\n    \"Nombre\": \"ROBERTO MARTINEZ CRUZ\",\n    \"UsoCFDI\": \"CN01\",\n    \"DomicilioFiscalReceptor\": \"67150\",\n    \"RegimenFiscalReceptor\": \"605\"\n  },\n  \"Conceptos\": [\n    {\n      \"ClaveProdServ\": \"84111505\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Descripcion\": \"Pago de nómina\",\n      \"ValorUnitario\": \"7500.05\",\n      \"Importe\": \"7500.05\",\n      \"Descuento\": \"1234.09\",\n      \"ObjetoImp\": \"01\"\n    }\n  ],\n  \"Complemento\": {\n    \"Nomina12\": {\n      \"Version\": \"1.2\",\n      \"TipoNomina\": \"O\",\n      \"FechaPago\": \"2024-12-20\",\n      \"FechaInicialPago\": \"2024-12-01\",\n      \"FechaFinalPago\": \"2024-12-20\",\n      \"NumDiasPagados\": \"20\",\n      \"TotalPercepciones\": \"7500.05\",\n      \"TotalDeducciones\": \"1234.09\",\n      \"TotalOtrosPagos\": \"0.00\",\n      \"Emisor\": {\n        \"RegistroPatronal\": \"1244555412\"\n      },\n      \"Receptor\": {\n        \"Curp\": \"CAPF771010HJCMSR03\",\n        \"TipoContrato\": \"01\",\n        \"TipoRegimen\": \"02\",\n        \"NumEmpleado\": \"060\",\n        \"PeriodicidadPago\": \"04\",\n        \"ClaveEntFed\": \"JAL\",\n        \"NumSeguridadSocial\": \"98765573454\",\n        \"Banco\": \"021\",\n        \"FechaInicioRelLaboral\": \"2024-06-01\",\n        \"Antigüedad\": \"P6M\",\n        \"Puesto\": \"Desarrollador\",\n        \"SalarioBaseCotApor\": \"435.50\",\n        \"RiesgoPuesto\": \"2\",\n        \"SalarioDiarioIntegrado\": \"435.50\"\n      },\n      \"Percepciones\": {\n        \"TotalGravado\": \"7500.05\",\n        \"TotalExento\": \"0.00\",\n        \"TotalSueldos\": \"7500.05\",\n        \"Percepcion\": [\n          {\n            \"TipoPercepcion\": \"001\",\n            \"Clave\": \"001\",\n            \"Concepto\": \"Sueldos, Salarios Rayas y Jornales\",\n            \"ImporteGravado\": \"6250.05\",\n            \"ImporteExento\": \"0.00\"\n          }\n        ]\n      },\n      \"Deducciones\": {\n        \"TotalOtrasDeducciones\": \"179.34\",\n        \"TotalImpuestosRetenidos\": \"1054.75\",\n        \"Deduccion\": [\n          {\n            \"TipoDeduccion\": \"002\",\n            \"Clave\": \"001\",\n            \"Concepto\": \"ISR\",\n            \"Importe\": \"1054.75\"\n          }\n        ]\n      }\n    }\n  }\n}'\n</code></pre>\n<hr />\n<h2 id=\"validaciones-y-reglas-importantes\">Validaciones y Reglas Importantes</h2>\n<h3 id=\"validaciones-del-cfdi-base\">Validaciones del CFDI Base</h3>\n<ol>\n<li><strong>TipoDeComprobante:</strong> Debe ser exactamente <code>\"N\"</code></li>\n<li><strong>UsoCFDI:</strong> Debe ser <code>\"CN01\"</code> (Pago de nómina)</li>\n<li><strong>ClaveProdServ:</strong> Debe ser <code>\"84111505\"</code> (Servicios de nómina)</li>\n<li><strong>ClaveUnidad:</strong> Debe ser <code>\"ACT\"</code> (Acto)</li>\n<li><strong>ObjetoImp:</strong> Debe ser <code>\"01\"</code> (No objeto de impuesto)</li>\n</ol>\n<h3 id=\"validaciones-del-complemento\">Validaciones del Complemento</h3>\n<ol>\n<li><strong>Version:</strong> Debe ser exactamente <code>\"1.2\"</code></li>\n<li><strong>TipoNomina:</strong> Solo acepta <code>\"O\"</code> (Ordinaria) o <code>\"E\"</code> (Extraordinaria)</li>\n<li><strong>Fechas:</strong> <ul>\n<li><code>FechaPago</code> debe ser igual o posterior a <code>FechaFinalPago</code></li>\n<li><code>FechaFinalPago</code> debe ser igual o posterior a <code>FechaInicialPago</code></li>\n</ul>\n</li>\n<li><strong>NumDiasPagados:</strong> Debe estar entre 0.001 y 36160.000</li>\n<li><strong>CURP:</strong> Debe tener formato válido (18 caracteres)</li>\n<li><strong>Totales:</strong> Los totales deben coincidir con la suma de los elementos</li>\n</ol>\n<h3 id=\"reglas-de-negocio\">Reglas de Negocio</h3>\n<ol>\n<li><strong>TotalPercepciones:</strong> Debe ser igual a la suma de <code>TotalGravado + TotalExento</code> en el nodo Percepciones</li>\n<li><strong>TotalDeducciones:</strong> Debe ser igual a la suma de <code>TotalOtrasDeducciones + TotalImpuestosRetenidos</code></li>\n<li><strong>Total del CFDI:</strong> Debe ser igual a <code>SubTotal - Descuento</code></li>\n<li><strong>SubTotal del CFDI:</strong> Debe ser igual a <code>TotalPercepciones</code> del complemento</li>\n<li><strong>Descuento del CFDI:</strong> Debe ser igual a <code>TotalDeducciones</code> del complemento</li>\n</ol>\n<hr />\n<h2 id=\"preguntas-frecuentes-faq\">Preguntas Frecuentes (FAQ)</h2>\n<h3 id=\"¿cuándo-debo-usar-nómina-ordinaria-vs-extraordinaria\">¿Cuándo debo usar nómina ordinaria vs extraordinaria?</h3>\n<ul>\n<li><strong>Nómina Ordinaria (<code>\"O\"</code>):</strong> Para pagos periódicos regulares (quincenal, mensual, etc.)</li>\n<li><strong>Nómina Extraordinaria (<code>\"E\"</code>):</strong> Para pagos especiales como aguinaldo, PTU, bonos extraordinarios, etc.</li>\n</ul>\n<h3 id=\"¿cómo-calculo-el-numdiaspagados\">¿Cómo calculo el NumDiasPagados?</h3>\n<p>El <code>NumDiasPagados</code> puede ser:</p>\n<ul>\n<li>Un número entero: <code>\"15\"</code> (15 días completos)</li>\n<li>Un decimal: <code>\"15.5\"</code> (15 días y medio)</li>\n<li>Máximo permitido: <code>36160.000</code></li>\n</ul>\n<h3 id=\"¿qué-pasa-si-el-trabajador-tiene-múltiples-percepciones\">¿Qué pasa si el trabajador tiene múltiples percepciones?</h3>\n<p>Debes incluir todas las percepciones en el array <code>Percepcion</code>. Cada percepción debe tener su <code>TipoPercepcion</code>, <code>Clave</code>, <code>Concepto</code>, <code>ImporteGravado</code> e <code>ImporteExento</code>.</p>\n<h3 id=\"¿cómo-manejo-las-horas-extra\">¿Cómo manejo las horas extra?</h3>\n<p>Las horas extra se incluyen dentro del nodo <code>Percepcion</code> correspondiente, en el array <code>HorasExtra</code>. Puedes tener múltiples registros de horas extra en una misma percepción.</p>\n<h3 id=\"¿qué-es-el-salariobasecotapor-vs-salariodiariointegrado\">¿Qué es el SalarioBaseCotApor vs SalarioDiarioIntegrado?</h3>\n<ul>\n<li><strong>SalarioBaseCotApor:</strong> Salario base para el cálculo de cuotas y aportaciones de seguridad social</li>\n<li><strong>SalarioDiarioIntegrado:</strong> Salario diario integrado para el cálculo de indemnizaciones (según Art. 84 LFT)</li>\n</ul>\n<h3 id=\"¿cuándo-debo-incluir-el-nodo-entidadsncf\">¿Cuándo debo incluir el nodo EntidadSNCF?</h3>\n<p>Solo cuando el emisor es una entidad adherida al Sistema Nacional de Coordinación Fiscal (gobiernos estatales, municipales, etc.).</p>\n<h3 id=\"¿cómo-expreso-la-antigüedad\">¿Cómo expreso la antigüedad?</h3>\n<p>La antigüedad se expresa en formato ISO 8601:</p>\n<ul>\n<li>Por semanas: <code>\"P21W\"</code> (21 semanas)</li>\n<li>Por años/meses/días: <code>\"P6Y3M15D\"</code> (6 años, 3 meses, 15 días)</li>\n<li>Solo días: <code>\"P30D\"</code> (30 días)</li>\n</ul>\n<h3 id=\"¿puedo-omitir-campos-opcionales\">¿Puedo omitir campos opcionales?</h3>\n<p>Sí, todos los campos marcados como opcionales (<code>❌</code>) pueden omitirse o enviarse como <code>null</code>. Sin embargo, algunos campos son condicionales y deben incluirse en ciertos casos (ver descripción de cada campo).</p>\n<hr />\n<h2 id=\"catálogos-del-sat\">Catálogos del SAT</h2>\n<p>Para consultar los catálogos oficiales del SAT, visita:</p>\n<ul>\n<li><strong>Catálogos de Nómina:</strong> <a href=\"http://www.sat.gob.mx/sitio_internet/cfd/catalogos/Nomina/\">http://www.sat.gob.mx/sitio_internet/cfd/catalogos/Nomina/</a></li>\n<li><strong>Catálogos Generales:</strong> <a href=\"http://www.sat.gob.mx/sitio_internet/cfd/catalogos/\">http://www.sat.gob.mx/sitio_internet/cfd/catalogos/</a></li>\n</ul>\n<h3 id=\"catálogos-principales-utilizados\">Catálogos Principales Utilizados</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Catálogo</th>\n<th>Descripción</th>\n<th>Ubicación</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>c_TipoNomina</code></td>\n<td>Tipo de nómina</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoContrato</code></td>\n<td>Tipo de contrato</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoRegimen</code></td>\n<td>Régimen de contratación</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_PeriodicidadPago</code></td>\n<td>Periodicidad de pago</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoPercepcion</code></td>\n<td>Tipos de percepción</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoDeduccion</code></td>\n<td>Tipos de deducción</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoOtroPago</code></td>\n<td>Tipos de otro pago</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoIncapacidad</code></td>\n<td>Tipos de incapacidad</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoHoras</code></td>\n<td>Tipos de horas extra</td>\n<td>catNomina.xsd</td>\n</tr>\n<tr>\n<td><code>c_Banco</code></td>\n<td>Bancos</td>\n<td>catCFDI.xsd</td>\n</tr>\n<tr>\n<td><code>c_Estado</code></td>\n<td>Entidades federativas</td>\n<td>catCFDI.xsd</td>\n</tr>\n<tr>\n<td><code>c_RiesgoPuesto</code></td>\n<td>Riesgos de trabajo</td>\n<td>catNomina.xsd</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"notas-finales\">Notas Finales</h2>\n<h3 id=\"buenas-prácticas\">Buenas Prácticas</h3>\n<ol>\n<li><strong>Valida todos los datos</strong> antes de enviar el JSON a la API</li>\n<li><strong>Verifica los catálogos SAT</strong> antes de usar códigos</li>\n<li><strong>Calcula correctamente los totales</strong> para evitar errores de validación</li>\n<li><strong>Usa formato ISO para fechas</strong> (<code>YYYY-MM-DD</code>)</li>\n<li><strong>Verifica la CURP</strong> del trabajador antes de incluirla</li>\n<li><strong>Mantén un registro</strong> de los UUIDs generados</li>\n<li><strong>Almacena los XMLs</strong> timbrados para cumplimiento fiscal</li>\n</ol>\n<h3 id=\"errores-comunes-a-evitar\">Errores Comunes a Evitar</h3>\n<ul>\n<li>❌ Usar <code>TipoDeComprobante</code> diferente a <code>\"N\"</code></li>\n<li>❌ Usar <code>UsoCFDI</code> diferente a <code>\"CN01\"</code></li>\n<li>❌ Incluir impuestos en el CFDI base (deben ir solo en el complemento)</li>\n<li>❌ Totales que no coinciden con la suma de elementos</li>\n<li>❌ Fechas en formato incorrecto</li>\n<li>❌ CURP con formato inválido</li>\n<li>❌ Códigos de catálogo inexistentes</li>\n</ul>\n<h3 id=\"soporte\">Soporte</h3>\n<p>Si requieres ayuda adicional o ejemplos específicos, contáctanos:</p>\n<ul>\n<li><strong>Email:</strong> <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></li>\n<li><strong>Documentación:</strong> docs.facturadigital.com.mx</li>\n</ul>\n<hr />\n<p><strong>Última actualización:</strong> Diciembre 2025<br /><strong>Versión del Complemento:</strong> 1.2 Revisión E<br /><strong>Vigencia:</strong> A partir del 01 de enero de 2026<br /><strong>Versión de CFDI:</strong> 4.0</p>\n","urlObject":{"path":["invoice","create"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"77f8c603-eaf8-4d80-abda-9c63a516fa8e"},{"name":"Crear CFDI con Carta Porte","id":"99accf10-2b8b-418c-85b2-4dbf349933a9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"TkRJMTIwMzI2SEY1LTk5N2MwOWU4LWIyODAtMTFlYi1iNmQxLTUyNTQwMGY4ZmM1ZA==","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n  \"Version\": \"4.0\",\n  \"Serie\": \"A\",\n  \"Folio\": \"TEST-2025-001\",\n  \"Fecha\": \"2025-12-18T12:00:00\",\n  \"FormaPago\": \"03\",\n  \"SubTotal\": \"4631.63\",\n  \"Descuento\": \"0.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"5187.42\",\n  \"TipoDeComprobante\": \"I\",\n  \"Exportacion\": \"01\",\n  \"MetodoPago\": \"PUE\",\n  \"LugarExpedicion\": \"64000\",\n  \"Emisor\": {\n    \"Rfc\": \"AAA010101AAA\",\n    \"Nombre\": \"EMPRESA DE TRANSPORTES EJEMPLO SA DE CV\",\n    \"RegimenFiscal\": \"601\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"CLIENTE DE PRUEBAS GENERICO\",\n    \"DomicilioFiscalReceptor\": \"06000\",\n    \"RegimenFiscalReceptor\": \"616\",\n    \"UsoCFDI\": \"G03\"\n  },\n  \"Conceptos\": [\n    {\n      \"ClaveProdServ\": \"78101801\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ZZ\",\n      \"Unidad\": \"N/A\",\n      \"Descripcion\": \"SERVICIO DE FLETE REGIONAL - RUTA DE PRUEBA\",\n      \"ValorUnitario\": \"4631.63\",\n      \"Importe\": \"4631.63\",\n      \"Descuento\": \"0.00\",\n      \"ObjetoImp\": \"02\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"4631.63\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"741.06\"\n          }\n        ],\n        \"Retenciones\": [\n          {\n            \"Base\": \"4631.63\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.040000\",\n            \"Importe\": \"185.27\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosRetenidos\": \"185.27\",\n    \"TotalImpuestosTrasladados\": \"741.06\",\n    \"Retenciones\": [\n      {\n        \"Impuesto\": \"002\",\n        \"Importe\": \"185.27\"\n      }\n    ],\n    \"Traslados\": [\n      {\n        \"Base\": \"4631.63\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"741.06\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"CartaPorte31\": {\n      \"Version\": \"3.1\",\n      \"IdCCP\": \"CCC00000-0000-0000-0000-000000000000\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"172\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"AAA010101AAA\",\n          \"NombreRemitenteDestinatario\": \"REMITENTE DE PRUEBA\",\n          \"FechaHoraSalidaLlegada\": \"2025-12-18T05:00:00\",\n          \"Domicilio\": {\n            \"Calle\": \"AVENIDA SIEMPRE VIVA\",\n            \"CodigoPostal\": \"54000\",\n            \"Colonia\": \"0001\",\n            \"Estado\": \"MEX\",\n            \"Municipio\": \"001\",\n            \"Pais\": \"MEX\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"DESTINATARIO DE PRUEBA\",\n          \"FechaHoraSalidaLlegada\": \"2025-12-18T08:00:00\",\n          \"DistanciaRecorrida\": \"172\",\n          \"Domicilio\": {\n            \"Calle\": \"CALLE FALSA 123\",\n            \"CodigoPostal\": \"76000\",\n            \"Colonia\": \"0002\",\n            \"Estado\": \"QUE\",\n            \"Municipio\": \"001\",\n            \"Pais\": \"MEX\"\n          }\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"140.67\",\n        \"UnidadPeso\": \"KGM\",\n        \"NumTotalMercancias\": \"3\",\n        \"Autotransporte\": {\n          \"PermSCT\": \"TPAF02\",\n          \"NumPermisoSCT\": \"PERMISO_SCT_12345\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"T2S3\",\n            \"PesoBrutoVehicular\": \"17\",\n            \"PlacaVM\": \"XX999XX\",\n            \"AnioModeloVM\": \"2026\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"SEGUROS DE PRUEBA SA\",\n            \"PolizaRespCivil\": \"POLIZA-987654321\"\n          },\n          \"Remolques\": [\n            {\n              \"SubTipoRem\": \"CTR001\",\n              \"Placa\": \"YY888YY\"\n            }\n          ]\n        },\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"31181701\",\n            \"Descripcion\": \"MERCANCIA_PRUEBA_01\",\n            \"Cantidad\": \"1\",\n            \"ClaveUnidad\": \"H87\",\n            \"MaterialPeligroso\": \"No\",\n            \"PesoEnKg\": \"0.16\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"1\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          },\n          {\n            \"BienesTransp\": \"31181701\",\n            \"Descripcion\": \"MERCANCIA_PRUEBA_02\",\n            \"Cantidad\": \"1\",\n            \"ClaveUnidad\": \"H87\",\n            \"MaterialPeligroso\": \"No\",\n            \"PesoEnKg\": \"0.94\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"1\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          },\n          {\n            \"BienesTransp\": \"31181701\",\n            \"Descripcion\": \"MERCANCIA_PRUEBA_03\",\n            \"Cantidad\": \"1\",\n            \"ClaveUnidad\": \"H87\",\n            \"MaterialPeligroso\": \"No\",\n            \"PesoEnKg\": \"2\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"1\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          }\n        ]\n      },\n      \"FiguraTransporte\": [\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"XEXX010101000\",\n          \"NumLicencia\": \"LICENCIA_001\",\n          \"NombreFigura\": \"OPERADOR DE PRUEBA\",\n          \"Domicilio\": {\n            \"Calle\": \"CALLE DEL OPERADOR\",\n            \"CodigoPostal\": \"42000\",\n            \"Colonia\": \"0003\",\n            \"Estado\": \"HID\",\n            \"Municipio\": \"001\",\n            \"NumeroExterior\": \"100\",\n            \"NumeroInterior\": \"A\",\n            \"Pais\": \"MEX\"\n          }\n        }\n      ]\n    }\n  }\n}","description":"<p>Cadena JSON con los datos del CFDI que deseas timbrar. Puedes solicitarnos ejemplos de la estructura de este JSON en <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n","type":"text"}]},"url":"{{URI}}/invoice/create","description":"<h1 id=\"guía-completa-complemento-de-carta-porte-31\">Guía Completa: Complemento de Carta Porte 3.1</h1>\n<h2 id=\"introducción\">Introducción</h2>\n<p>El <strong>Complemento de Carta Porte versión 3.1</strong> permite incorporar al Comprobante Fiscal Digital por Internet (CFDI) la información relacionada a los bienes y/o mercancías, ubicaciones de origen, puntos intermedios y destinos, así como lo referente al medio por el que se transportan; que circulen por vía terrestre, férrea, aérea o naveguen por vía marítima; además de incluir el traslado de hidrocarburos y petrolíferos.</p>\n<h3 id=\"versión-y-vigencia\">Versión y Vigencia</h3>\n<ul>\n<li><strong>Versión del Complemento:</strong> 3.1</li>\n<li><strong>Vigencia:</strong> Versión actual y vigente</li>\n<li><strong>Tipos de Comprobante:</strong> <code>\"I\"</code> (Ingreso), <code>\"T\"</code> (Traslado)</li>\n<li><strong>Medios de Transporte:</strong> Autotransporte, Ferroviario, Aéreo, Marítimo</li>\n</ul>\n<h3 id=\"¿qué-hace-la-api-por-ti\">¿Qué hace la API por ti?</h3>\n<p>Nuestra API automatiza todos los procesos complejos de generación de CFDI con Carta Porte:</p>\n<ul>\n<li>✅ <strong>Validación automática</strong> de datos según normativa SAT</li>\n<li>✅ <strong>Estructuración XML</strong> conforme al esquema oficial</li>\n<li>✅ <strong>Generación automática de IdCCP</strong> (si se especifica \"AUTO\")</li>\n<li>✅ <strong>Validación de catálogos</strong> (tipos de transporte, estaciones, etc.)</li>\n<li>✅ <strong>Soporte para múltiples medios de transporte</strong></li>\n<li>✅ <strong>Timbrado</strong> con Proveedor Autorizado de Certificación (PAC)</li>\n<li>✅ <strong>Generación de PDF</strong> con diseño personalizable</li>\n<li>✅ <strong>Conversión automática</strong> de Carta Porte 3.0 a 3.1</li>\n</ul>\n<hr />\n<h2 id=\"estructura-base-del-cfdi-con-complemento-de-carta-porte\">Estructura Base del CFDI con Complemento de Carta Porte</h2>\n<h3 id=\"características-especiales\">Características Especiales</h3>\n<p>El CFDI con Carta Porte se utiliza para amparar el traslado de mercancías. Puede ser:</p>\n<ul>\n<li><strong>Factura de Ingreso (<code>TipoDeComprobante: \"I\"</code>):</strong> Cuando se cobra por el servicio de transporte</li>\n<li><strong>Comprobante de Traslado (<code>TipoDeComprobante: \"T\"</code>):</strong> Cuando solo se ampara el movimiento sin cobro</li>\n</ul>\n<h3 id=\"estructura-del-json-base\">Estructura del JSON Base</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"A\",\n  \"Folio\": \"50\",\n  \"Fecha\": \"2024-12-20T12:00:00\",\n  \"FormaPago\": \"99\",\n  \"SubTotal\": \"100.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"116.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PPD\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"G03\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"02\",\n      \"ClaveProdServ\": \"78101500\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"SERVICIO\",\n      \"Descripcion\": \"Flete de Monterrey a Saltillo\",\n      \"ValorUnitario\": \"100.00\",\n      \"Importe\": \"100.00\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"100.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"16.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"16.00\",\n    \"Traslados\": [\n      {\n        \"Base\": \"100.00\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"16.00\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"CartaPorte31\": {\n      // Estructura del complemento de Carta Porte\n    }\n  }\n}\n</code></pre>\n<hr />\n<h2 id=\"estructura-del-complemento-cartaporte31\">Estructura del Complemento CartaPorte31</h2>\n<h3 id=\"nodo-principal-cartaporte31\">Nodo Principal: CartaPorte31</h3>\n<p>El complemento de Carta Porte se estructura dentro del nodo <code>Complemento.CartaPorte31</code>:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Complemento\": {\n  \"CartaPorte31\": {\n    \"Version\": \"3.1\",\n    \"IdCCP\": \"AUTO\",\n    \"TranspInternac\": \"No\",\n    \"TotalDistRec\": \"50\",\n    \"Ubicaciones\": [],\n    \"Mercancias\": {},\n    \"FiguraTransporte\": []\n  }\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-principal\">Campos del Nodo Principal</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n<th>Valores</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Version</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Versión del complemento</td>\n<td><code>\"3.1\"</code> (fijo)</td>\n</tr>\n<tr>\n<td><code>IdCCP</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Identificador único del complemento</td>\n<td><code>\"AUTO\"</code> o UUID formato <code>CCCxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</code></td>\n</tr>\n<tr>\n<td><code>TranspInternac</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Si es transporte internacional</td>\n<td><code>\"Sí\"</code> o <code>\"No\"</code></td>\n</tr>\n<tr>\n<td><code>EntradaSalidaMerc</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Si los bienes ingresan o salen del país</td>\n<td><code>\"Entrada\"</code> o <code>\"Salida\"</code></td>\n</tr>\n<tr>\n<td><code>PaisOrigenDestino</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave del país de origen o destino</td>\n<td>Ver catálogo c_Pais</td>\n</tr>\n<tr>\n<td><code>ViaEntradaSalida</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Vía de ingreso o salida</td>\n<td>Ver catálogo c_CveTransporte</td>\n</tr>\n<tr>\n<td><code>TotalDistRec</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Distancia total recorrida en kilómetros</td>\n<td>Decimal (0.01 a 99999)</td>\n</tr>\n<tr>\n<td><code>RegistroISTMO</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Si aplica para Polos de Desarrollo del Istmo</td>\n<td><code>\"Sí\"</code></td>\n</tr>\n<tr>\n<td><code>UbicacionPoloOrigen</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Región de origen en el Istmo</td>\n<td>Ver catálogo c_RegistroISTMO</td>\n</tr>\n<tr>\n<td><code>UbicacionPoloDestino</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Región de destino en el Istmo</td>\n<td>Ver catálogo c_RegistroISTMO</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"⚠️-importante-sobre-idccp\">⚠️ Importante sobre IdCCP</h3>\n<ul>\n<li><strong>Usar <code>\"AUTO\"</code>:</strong> La API generará automáticamente un IdCCP válido</li>\n<li><strong>Formato manual:</strong> Si proporcionas un IdCCP, debe seguir el formato: <code>CCCxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</code> (36 caracteres)</li>\n<li><strong>Recomendado:</strong> Usar <code>\"AUTO\"</code> para evitar errores de formato</li>\n</ul>\n<hr />\n<h2 id=\"nodo-ubicaciones\">Nodo Ubicaciones</h2>\n<p>El nodo <code>Ubicaciones</code> contiene las ubicaciones de origen y destino del traslado. <strong>Mínimo se requieren 2 ubicaciones</strong> (un origen y un destino).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Ubicaciones\": [\n  {\n    \"TipoUbicacion\": \"Origen\",\n    \"IDUbicacion\": \"OR000001\",\n    \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n    \"NombreRemitenteDestinatario\": \"EMPRESA REMITENTE\",\n    \"FechaHoraSalidaLlegada\": \"2024-12-20T12:00:00\",\n    \"DistanciaRecorrida\": \"50\",\n    \"Domicilio\": {\n      \"Calle\": \"Av. Principal\",\n      \"NumeroExterior\": \"100\",\n      \"Colonia\": \"Centro\",\n      \"Municipio\": \"Monterrey\",\n      \"Estado\": \"Nuevo Leon\",\n      \"Pais\": \"MEX\",\n      \"CodigoPostal\": \"64000\"\n    }\n  },\n  {\n    \"TipoUbicacion\": \"Destino\",\n    \"IDUbicacion\": \"DE000001\",\n    \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n    \"NombreRemitenteDestinatario\": \"NOVATECH DIGITAL\",\n    \"FechaHoraSalidaLlegada\": \"2024-12-20T16:00:00\",\n    \"DistanciaRecorrida\": \"50\",\n    \"Domicilio\": {\n      \"Calle\": \"Palmas\",\n      \"NumeroExterior\": \"123\",\n      \"Colonia\": \"Anahuac\",\n      \"Municipio\": \"Apodaca\",\n      \"Estado\": \"Nuevo Leon\",\n      \"Pais\": \"MEX\",\n      \"CodigoPostal\": \"66265\"\n    }\n  }\n]\n</code></pre>\n<h3 id=\"campos-del-nodo-ubicacion\">Campos del Nodo Ubicacion</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoUbicacion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de ubicación</td>\n</tr>\n<tr>\n<td><code>IDUbicacion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Identificador único</td>\n</tr>\n<tr>\n<td><code>RFCRemitenteDestinatario</code></td>\n<td>String</td>\n<td>✅</td>\n<td>RFC del remitente o destinatario</td>\n</tr>\n<tr>\n<td><code>NombreRemitenteDestinatario</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Nombre del remitente o destinatario</td>\n</tr>\n<tr>\n<td><code>NumRegIdTrib</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Número de registro fiscal (extranjero)</td>\n</tr>\n<tr>\n<td><code>ResidenciaFiscal</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave del país de residencia</td>\n</tr>\n<tr>\n<td><code>NumEstacion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave de estación</td>\n</tr>\n<tr>\n<td><code>NombreEstacion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Nombre de la estación</td>\n</tr>\n<tr>\n<td><code>NavegacionTrafico</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Tipo de puerto (solo marítimo)</td>\n</tr>\n<tr>\n<td><code>FechaHoraSalidaLlegada</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Fecha y hora de salida o llegada</td>\n</tr>\n<tr>\n<td><code>TipoEstacion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Tipo de estación</td>\n</tr>\n<tr>\n<td><code>DistanciaRecorrida</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Distancia en kilómetros</td>\n</tr>\n<tr>\n<td><code>Domicilio</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Información del domicilio</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-domicilio\">Nodo Domicilio</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Domicilio\": {\n  \"Calle\": \"Av. Principal\",\n  \"NumeroExterior\": \"100\",\n  \"NumeroInterior\": \"A\",\n  \"Colonia\": \"Centro\",\n  \"Localidad\": \"Monterrey\",\n  \"Referencia\": \"Frente al parque\",\n  \"Municipio\": \"Monterrey\",\n  \"Estado\": \"Nuevo Leon\",\n  \"Pais\": \"MEX\",\n  \"CodigoPostal\": \"64000\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Calle</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Calle del domicilio</td>\n</tr>\n<tr>\n<td><code>NumeroExterior</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Número exterior</td>\n</tr>\n<tr>\n<td><code>NumeroInterior</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Número interior</td>\n</tr>\n<tr>\n<td><code>Colonia</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Colonia</td>\n</tr>\n<tr>\n<td><code>Localidad</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Localidad</td>\n</tr>\n<tr>\n<td><code>Referencia</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Referencia geográfica</td>\n</tr>\n<tr>\n<td><code>Municipio</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Municipio</td>\n</tr>\n<tr>\n<td><code>Estado</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Estado</td>\n</tr>\n<tr>\n<td><code>Pais</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave del país</td>\n</tr>\n<tr>\n<td><code>CodigoPostal</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Código postal</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-mercancias\">Nodo Mercancias</h2>\n<p>El nodo <code>Mercancias</code> contiene la información de los bienes y/o mercancías transportadas.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Mercancias\": {\n  \"PesoBrutoTotal\": \"150.00\",\n  \"UnidadPeso\": \"KGM\",\n  \"PesoNetoTotal\": \"140.00\",\n  \"NumTotalMercancias\": \"1\",\n  \"CargoPorTasacion\": \"0.00\",\n  \"LogisticaInversaRecoleccionDevolucion\": null,\n  \"Mercancia\": [\n    {\n      \"BienesTransp\": \"10216100\",\n      \"Descripcion\": \"Productos diversos\",\n      \"Cantidad\": \"10\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"PIEZAS\",\n      \"PesoEnKg\": \"150.00\",\n      \"CantidadTransporta\": [\n        {\n          \"Cantidad\": \"10\",\n          \"IDOrigen\": \"OR000001\",\n          \"IDDestino\": \"DE000001\"\n        }\n      ]\n    }\n  ]\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-mercancias\">Campos del Nodo Mercancias</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PesoBrutoTotal</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Peso bruto total</td>\n</tr>\n<tr>\n<td><code>UnidadPeso</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Unidad de peso</td>\n</tr>\n<tr>\n<td><code>PesoNetoTotal</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Peso neto total</td>\n</tr>\n<tr>\n<td><code>NumTotalMercancias</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número total de tipos de mercancías</td>\n</tr>\n<tr>\n<td><code>CargoPorTasacion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Cargo por tasación (aéreo)</td>\n</tr>\n<tr>\n<td><code>LogisticaInversaRecoleccionDevolucion</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Si aplica logística inversa</td>\n</tr>\n<tr>\n<td><code>Mercancia</code></td>\n<td>Array</td>\n<td>✅</td>\n<td>Array de mercancías</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-mercancia-array\">Nodo Mercancia (Array)</h3>\n<p>Cada elemento del array representa un tipo de mercancía transportada.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"BienesTransp\": \"10216100\",\n  \"ClaveSTCC\": \"887791\",\n  \"Descripcion\": \"Productos diversos\",\n  \"Cantidad\": \"10\",\n  \"ClaveUnidad\": \"H87\",\n  \"Unidad\": \"PIEZAS\",\n  \"Dimensiones\": \"30/40/30cm\",\n  \"MaterialPeligroso\": \"No\",\n  \"CveMaterialPeligroso\": \"\",\n  \"Embalaje\": \"\",\n  \"DescripEmbalaje\": \"\",\n  \"PesoEnKg\": \"150.00\",\n  \"ValorMercancia\": \"5000.00\",\n  \"Moneda\": \"MXN\",\n  \"FraccionArancelaria\": \"\",\n  \"UUIDComercioExt\": \"\",\n  \"CantidadTransporta\": [\n    {\n      \"Cantidad\": \"10\",\n      \"IDOrigen\": \"OR000001\",\n      \"IDDestino\": \"DE000001\",\n      \"CvesTransporte\": \"\"\n    }\n  ],\n  \"DocumentacionAduanera\": [],\n  \"GuiasIdentificacion\": [],\n  \"DetalleMercancia\": {\n    \"UnidadPesoMerc\": \"KGM\",\n    \"PesoBruto\": \"150.00\",\n    \"PesoNeto\": \"140.00\",\n    \"PesoTara\": \"10.00\",\n    \"NumPiezas\": \"10\"\n  }\n}\n</code></pre>\n<h3 id=\"campos-del-nodo-mercancia\">Campos del Nodo Mercancia</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>BienesTransp</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave de producto transportado</td>\n</tr>\n<tr>\n<td><code>ClaveSTCC</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave STCC (solo ferroviario)</td>\n</tr>\n<tr>\n<td><code>Descripcion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Descripción de la mercancía</td>\n</tr>\n<tr>\n<td><code>Cantidad</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Cantidad transportada</td>\n</tr>\n<tr>\n<td><code>ClaveUnidad</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave de unidad de medida</td>\n</tr>\n<tr>\n<td><code>Unidad</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Descripción de la unidad</td>\n</tr>\n<tr>\n<td><code>Dimensiones</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Dimensiones del empaque</td>\n</tr>\n<tr>\n<td><code>MaterialPeligroso</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Si es material peligroso</td>\n</tr>\n<tr>\n<td><code>CveMaterialPeligroso</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave del material peligroso</td>\n</tr>\n<tr>\n<td><code>Embalaje</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Tipo de embalaje</td>\n</tr>\n<tr>\n<td><code>DescripEmbalaje</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Descripción del embalaje</td>\n</tr>\n<tr>\n<td><code>PesoEnKg</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Peso en kilogramos</td>\n</tr>\n<tr>\n<td><code>ValorMercancia</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Valor de la mercancía</td>\n</tr>\n<tr>\n<td><code>Moneda</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Moneda del valor</td>\n</tr>\n<tr>\n<td><code>FraccionArancelaria</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Fracción arancelaria</td>\n</tr>\n<tr>\n<td><code>UUIDComercioExt</code></td>\n<td>String</td>\n<td>❌</td>\n<td>UUID de comercio exterior</td>\n</tr>\n<tr>\n<td><code>CantidadTransporta</code></td>\n<td>Array</td>\n<td>❌</td>\n<td>Cantidades por origen-destino</td>\n</tr>\n<tr>\n<td><code>DocumentacionAduanera</code></td>\n<td>Array</td>\n<td>❌</td>\n<td>Documentación aduanera</td>\n</tr>\n<tr>\n<td><code>GuiasIdentificacion</code></td>\n<td>Array</td>\n<td>❌</td>\n<td>Guías de identificación</td>\n</tr>\n<tr>\n<td><code>DetalleMercancia</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Detalle de peso de la mercancía</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-cantidadtransporta-array\">Nodo CantidadTransporta (Array)</h3>\n<p>Especifica la cantidad de mercancía que se transporta desde un origen a un destino específico.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Cantidad\": \"10\",\n  \"IDOrigen\": \"OR000001\",\n  \"IDDestino\": \"DE000001\",\n  \"CvesTransporte\": \"\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Cantidad</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Cantidad transportada</td>\n</tr>\n<tr>\n<td><code>IDOrigen</code></td>\n<td>String</td>\n<td>✅</td>\n<td>ID de ubicación de origen</td>\n</tr>\n<tr>\n<td><code>IDDestino</code></td>\n<td>String</td>\n<td>✅</td>\n<td>ID de ubicación de destino</td>\n</tr>\n<tr>\n<td><code>CvesTransporte</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Clave de transporte</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-documentacionaduanera-array\">Nodo DocumentacionAduanera (Array)</h3>\n<p>Documentación aduanera para mercancías de procedencia extranjera.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"TipoDocumento\": \"01\",\n  \"NumPedimento\": \"24  12  1234  1234567\",\n  \"IdentDocAduanero\": \"123456\",\n  \"RFCImpo\": \"ABC123456789\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoDocumento</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de documento aduanero</td>\n</tr>\n<tr>\n<td><code>NumPedimento</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Número de pedimento</td>\n</tr>\n<tr>\n<td><code>IdentDocAduanero</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Identificador del documento</td>\n</tr>\n<tr>\n<td><code>RFCImpo</code></td>\n<td>String</td>\n<td>❌</td>\n<td>RFC del importador</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-guiasidentificacion-array\">Nodo GuiasIdentificacion (Array)</h3>\n<p>Guías de identificación para paquetes transportados.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"NumeroGuiaIdentificacion\": \"1234567890\",\n  \"DescripGuiaIdentificacion\": \"Paquete con productos electrónicos\",\n  \"PesoGuiaIdentificacion\": \"5.500\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>NumeroGuiaIdentificacion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número de guía</td>\n</tr>\n<tr>\n<td><code>DescripGuiaIdentificacion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Descripción del contenido</td>\n</tr>\n<tr>\n<td><code>PesoGuiaIdentificacion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Peso en kilogramos</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"nodo-detallemercancia\">Nodo DetalleMercancia</h3>\n<p>Detalle específico de peso de la mercancía.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"UnidadPesoMerc\": \"KGM\",\n  \"PesoBruto\": \"150.00\",\n  \"PesoNeto\": \"140.00\",\n  \"PesoTara\": \"10.00\",\n  \"NumPiezas\": \"10\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>UnidadPesoMerc</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Unidad de peso</td>\n</tr>\n<tr>\n<td><code>PesoBruto</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Peso bruto</td>\n</tr>\n<tr>\n<td><code>PesoNeto</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Peso neto</td>\n</tr>\n<tr>\n<td><code>PesoTara</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Peso de tara</td>\n</tr>\n<tr>\n<td><code>NumPiezas</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Número de piezas</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"medios-de-transporte\">Medios de Transporte</h2>\n<p>El complemento de Carta Porte soporta 4 medios de transporte. Solo debes incluir el nodo correspondiente al medio que utilices.</p>\n<h3 id=\"1-autotransporte\">1. Autotransporte</h3>\n<p>Para transporte por carretera en territorio nacional.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"Autotransporte\": {\n  \"PermSCT\": \"TPAF01\",\n  \"NumPermisoSCT\": \"1345648745\",\n  \"IdentificacionVehicular\": {\n    \"ConfigVehicular\": \"C2\",\n    \"PesoBrutoVehicular\": \"38.50\",\n    \"PlacaVM\": \"ABC123D\",\n    \"AnioModeloVM\": \"2024\"\n  },\n  \"Seguros\": {\n    \"AseguraRespCivil\": \"GNP SEGUROS\",\n    \"PolizaRespCivil\": \"7174005154\",\n    \"AseguraMedAmbiente\": \"QUALITAS\",\n    \"PolizaMedAmbiente\": \"000004848725411\",\n    \"AseguraCarga\": \"GNP SEGUROS CARGA\",\n    \"PolizaCarga\": \"00019008787\",\n    \"PrimaSeguro\": \"8500.00\"\n  },\n  \"Remolques\": [\n    {\n      \"SubTipoRem\": \"CTR007\",\n      \"Placa\": \"MNQ177A\"\n    }\n  ]\n}\n</code></pre>\n<h4 id=\"campos-de-autotransporte\">Campos de Autotransporte</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PermSCT</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de permiso SCT</td>\n</tr>\n<tr>\n<td><code>NumPermisoSCT</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número de permiso SCT</td>\n</tr>\n<tr>\n<td><code>IdentificacionVehicular</code></td>\n<td>Object</td>\n<td>✅</td>\n<td>Datos del vehículo</td>\n</tr>\n<tr>\n<td><code>Seguros</code></td>\n<td>Object</td>\n<td>✅</td>\n<td>Información de seguros</td>\n</tr>\n<tr>\n<td><code>Remolques</code></td>\n<td>Array</td>\n<td>❌</td>\n<td>Array de remolques</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-identificacionvehicular\">Nodo IdentificacionVehicular</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"ConfigVehicular\": \"C2\",\n  \"PesoBrutoVehicular\": \"38.50\",\n  \"PlacaVM\": \"ABC123D\",\n  \"AnioModeloVM\": \"2024\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ConfigVehicular</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Configuración vehicular</td>\n</tr>\n<tr>\n<td><code>PesoBrutoVehicular</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Peso bruto vehicular en toneladas</td>\n</tr>\n<tr>\n<td><code>PlacaVM</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Placa del vehículo (sin guiones)</td>\n</tr>\n<tr>\n<td><code>AnioModeloVM</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>Año del modelo</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-seguros\">Nodo Seguros</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"AseguraRespCivil\": \"GNP SEGUROS\",\n  \"PolizaRespCivil\": \"7174005154\",\n  \"AseguraMedAmbiente\": \"QUALITAS\",\n  \"PolizaMedAmbiente\": \"000004848725411\",\n  \"AseguraCarga\": \"GNP SEGUROS CARGA\",\n  \"PolizaCarga\": \"00019008787\",\n  \"PrimaSeguro\": \"8500.00\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>AseguraRespCivil</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Nombre de aseguradora de responsabilidad civil</td>\n</tr>\n<tr>\n<td><code>PolizaRespCivil</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número de póliza de responsabilidad civil</td>\n</tr>\n<tr>\n<td><code>AseguraMedAmbiente</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Aseguradora de medio ambiente (material peligroso)</td>\n</tr>\n<tr>\n<td><code>PolizaMedAmbiente</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Póliza de medio ambiente</td>\n</tr>\n<tr>\n<td><code>AseguraCarga</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Aseguradora de carga</td>\n</tr>\n<tr>\n<td><code>PolizaCarga</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Póliza de carga</td>\n</tr>\n<tr>\n<td><code>PrimaSeguro</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Prima del seguro</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-remolques-array\">Nodo Remolques (Array)</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"SubTipoRem\": \"CTR007\",\n  \"Placa\": \"MNQ177A\"\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>SubTipoRem</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Subtipo de remolque</td>\n</tr>\n<tr>\n<td><code>Placa</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Placa del remolque (sin guiones)</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Nota:</strong> Máximo 2 remolques por autotransporte.</p>\n<hr />\n<h3 id=\"2-transporte-marítimo\">2. Transporte Marítimo</h3>\n<p>Para transporte por vía marítima.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"TransporteMaritimo\": {\n  \"PermSCT\": \"TPAF01\",\n  \"NumPermisoSCT\": \"123456\",\n  \"NombreAseg\": \"SEGUROS MARITIMOS\",\n  \"NumPolizaSeguro\": \"123456789\",\n  \"TipoEmbarcacion\": \"BUQ\",\n  \"Matricula\": \"MEX123456\",\n  \"NumeroOMI\": \"IMO1234567\",\n  \"AnioEmbarcacion\": \"2020\",\n  \"NombreEmbarc\": \"BARCO TRANSPORTADOR\",\n  \"NacionalidadEmbarc\": \"MEX\",\n  \"UnidadesDeArqBruto\": \"5000.000\",\n  \"TipoCarga\": \"CGS\",\n  \"Eslora\": \"100.50\",\n  \"Manga\": \"20.30\",\n  \"Calado\": \"8.50\",\n  \"Puntal\": \"15.20\",\n  \"LineaNaviera\": \"LINEA NAVIERA MEXICANA\",\n  \"NombreAgenteNaviero\": \"AGENTE NAVIERO SA DE CV\",\n  \"NumAutorizacionNaviero\": \"123456\",\n  \"NumViaje\": \"VIA001\",\n  \"NumConocEmbarc\": \"CONOC001\",\n  \"PermisoTempNavegacion\": \"123456\",\n  \"Contenedor\": [\n    {\n      \"TipoContenedor\": \"CN\",\n      \"MatriculaContenedor\": \"ABCD1234567\",\n      \"NumPrecinto\": \"12345\",\n      \"IdCCPRelacionado\": \"CCC12345-1234-1234-1234-123456789012\",\n      \"PlacaVMCCP\": \"ABC123D\",\n      \"FechaCertificacionCCP\": \"2024-12-20T12:00:00\"\n    }\n  ]\n}\n</code></pre>\n<h4 id=\"campos-principales-de-transporte-marítimo\">Campos Principales de Transporte Marítimo</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoEmbarcacion</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de embarcación</td>\n</tr>\n<tr>\n<td><code>Matricula</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Matrícula de la embarcación</td>\n</tr>\n<tr>\n<td><code>NumeroOMI</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número OMI</td>\n</tr>\n<tr>\n<td><code>NacionalidadEmbarc</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Nacionalidad de la embarcación</td>\n</tr>\n<tr>\n<td><code>UnidadesDeArqBruto</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Unidades de arqueo bruto</td>\n</tr>\n<tr>\n<td><code>TipoCarga</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de carga</td>\n</tr>\n<tr>\n<td><code>NombreAgenteNaviero</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Nombre del agente naviero</td>\n</tr>\n<tr>\n<td><code>NumAutorizacionNaviero</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número de autorización del naviero</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"3-transporte-aéreo\">3. Transporte Aéreo</h3>\n<p>Para transporte por vía aérea.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"TransporteAereo\": {\n  \"PermSCT\": \"TPAF01\",\n  \"NumPermisoSCT\": \"123456\",\n  \"MatriculaAeronave\": \"XA-ABC\",\n  \"NombreAseg\": \"SEGUROS AEREOS\",\n  \"NumPolizaSeguro\": \"123456789\",\n  \"NumeroGuia\": \"123456789012\",\n  \"LugarContrato\": \"Ciudad de México\",\n  \"CodigoTransportista\": \"AM\",\n  \"RFCEmbarcador\": \"ABC123456789\",\n  \"NombreEmbarcador\": \"EMPRESA EMBARCADORA\"\n}\n</code></pre>\n<h4 id=\"campos-principales-de-transporte-aéreo\">Campos Principales de Transporte Aéreo</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>PermSCT</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de permiso SCT</td>\n</tr>\n<tr>\n<td><code>NumPermisoSCT</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número de permiso SCT</td>\n</tr>\n<tr>\n<td><code>NumeroGuia</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Número de guía aérea</td>\n</tr>\n<tr>\n<td><code>CodigoTransportista</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Código del transportista</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"4-transporte-ferroviario\">4. Transporte Ferroviario</h3>\n<p>Para transporte por vía férrea.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"TransporteFerroviario\": {\n  \"TipoDeServicio\": \"TS01\",\n  \"TipoDeTrafico\": \"TT01\",\n  \"NombreAseg\": \"SEGUROS FERROVIARIOS\",\n  \"NumPolizaSeguro\": \"123456789\",\n  \"DerechosDePaso\": [\n    {\n      \"TipoDerechoDePaso\": \"TP01\",\n      \"KilometrajePagado\": \"100.50\"\n    }\n  ],\n  \"Carro\": [\n    {\n      \"TipoCarro\": \"TC01\",\n      \"MatriculaCarro\": \"123456\",\n      \"GuiaCarro\": \"GUIA001\",\n      \"ToneladasNetasCarro\": \"50.000\",\n      \"Contenedor\": [\n        {\n          \"TipoContenedor\": \"CN\",\n          \"PesoContenedorVacio\": \"2000.000\",\n          \"PesoNetoMercancia\": \"48000.000\"\n        }\n      ]\n    }\n  ]\n}\n</code></pre>\n<h4 id=\"campos-principales-de-transporte-ferroviario\">Campos Principales de Transporte Ferroviario</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoDeServicio</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de servicio</td>\n</tr>\n<tr>\n<td><code>TipoDeTrafico</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de tráfico</td>\n</tr>\n<tr>\n<td><code>Carro</code></td>\n<td>Array</td>\n<td>✅</td>\n<td>Array de carros</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"nodo-carro-array\">Nodo Carro (Array)</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"TipoCarro\": \"TC01\",\n  \"MatriculaCarro\": \"123456\",\n  \"GuiaCarro\": \"GUIA001\",\n  \"ToneladasNetasCarro\": \"50.000\",\n  \"Contenedor\": []\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoCarro</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de carro</td>\n</tr>\n<tr>\n<td><code>MatriculaCarro</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Matrícula del carro</td>\n</tr>\n<tr>\n<td><code>GuiaCarro</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Guía del carro</td>\n</tr>\n<tr>\n<td><code>ToneladasNetasCarro</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Toneladas netas</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-figuratransporte\">Nodo FiguraTransporte</h2>\n<p>El nodo <code>FiguraTransporte</code> contiene información de las figuras que participan en el transporte (operador, propietario, arrendatario, etc.).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"FiguraTransporte\": [\n  {\n    \"TipoFigura\": \"01\",\n    \"RFCFigura\": \"GOLJ860719Q32\",\n    \"NumLicencia\": \"78411134546\",\n    \"NombreFigura\": \"ANTONIO AGUIRRE LOPEZ\",\n    \"NumRegIdTribFigura\": \"\",\n    \"ResidenciaFiscalFigura\": \"\",\n    \"PartesTransporte\": [\n      {\n        \"ParteTransporte\": \"PT01\"\n      }\n    ],\n    \"Domicilio\": {\n      \"Calle\": \"Av. Principal\",\n      \"NumeroExterior\": \"100\",\n      \"Colonia\": \"Centro\",\n      \"Municipio\": \"Monterrey\",\n      \"Estado\": \"Nuevo Leon\",\n      \"Pais\": \"MEX\",\n      \"CodigoPostal\": \"64000\"\n    }\n  }\n]\n</code></pre>\n<h3 id=\"campos-del-nodo-tiposfigura\">Campos del Nodo TiposFigura</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>TipoFigura</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Tipo de figura</td>\n</tr>\n<tr>\n<td><code>RFCFigura</code></td>\n<td>String</td>\n<td>❌</td>\n<td>RFC de la figura</td>\n</tr>\n<tr>\n<td><code>NumLicencia</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Número de licencia</td>\n</tr>\n<tr>\n<td><code>NombreFigura</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Nombre de la figura</td>\n</tr>\n<tr>\n<td><code>NumRegIdTribFigura</code></td>\n<td>String</td>\n<td>❌</td>\n<td>Registro fiscal (extranjero)</td>\n</tr>\n<tr>\n<td><code>ResidenciaFiscalFigura</code></td>\n<td>String</td>\n<td>❌</td>\n<td>País de residencia fiscal</td>\n</tr>\n<tr>\n<td><code>PartesTransporte</code></td>\n<td>Array</td>\n<td>❌</td>\n<td>Partes del transporte</td>\n</tr>\n<tr>\n<td><code>Domicilio</code></td>\n<td>Object</td>\n<td>❌</td>\n<td>Domicilio de la figura</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"tipos-de-figura-comunes\">Tipos de Figura Comunes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Clave</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>\"01\"</code></td>\n<td>Operador</td>\n</tr>\n<tr>\n<td><code>\"02\"</code></td>\n<td>Propietario</td>\n</tr>\n<tr>\n<td><code>\"03\"</code></td>\n<td>Arrendatario</td>\n</tr>\n<tr>\n<td><code>\"04\"</code></td>\n<td>Notificado</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"nodo-regimenesaduaneros\">Nodo RegimenesAduaneros</h2>\n<p>Nodo opcional para registrar regímenes aduaneros (máximo 10).</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"RegimenesAduaneros\": {\n  \"RegimenAduaneroCCP\": [\n    {\n      \"RegimenAduanero\": \"A1\"\n    }\n  ]\n}\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Requerido</th>\n<th>Descripción</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>RegimenAduanero</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Clave del régimen aduanero</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"ejemplo-1-factura-de-ingreso-con-carta-porte-31-autotransporte\">Ejemplo 1: Factura de Ingreso con Carta Porte 3.1 (Autotransporte)</h2>\n<p>Ejemplo completo de una factura de ingreso con complemento de Carta Porte para autotransporte:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"A\",\n  \"Folio\": \"50\",\n  \"Fecha\": \"2024-12-20T12:00:00\",\n  \"FormaPago\": \"99\",\n  \"SubTotal\": \"100.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"116.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PPD\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"G03\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"02\",\n      \"ClaveProdServ\": \"78101500\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"SERVICIO\",\n      \"Descripcion\": \"Flete de Monterrey a Saltillo\",\n      \"ValorUnitario\": \"100.00\",\n      \"Importe\": \"100.00\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"100.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"16.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"16.00\",\n    \"Traslados\": [\n      {\n        \"Base\": \"100.00\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"16.00\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"CartaPorte31\": {\n      \"Version\": \"3.1\",\n      \"IdCCP\": \"AUTO\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"50\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n          \"NombreRemitenteDestinatario\": \"EMPRESA REMITENTE\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T12:00:00\",\n          \"DistanciaRecorrida\": \"50\",\n          \"Domicilio\": {\n            \"Calle\": \"Av. Principal\",\n            \"NumeroExterior\": \"100\",\n            \"Colonia\": \"Centro\",\n            \"Municipio\": \"Monterrey\",\n            \"Estado\": \"Nuevo Leon\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"64000\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"NOVATECH DIGITAL\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T16:00:00\",\n          \"DistanciaRecorrida\": \"50\",\n          \"Domicilio\": {\n            \"Calle\": \"Palmas\",\n            \"NumeroExterior\": \"123\",\n            \"Colonia\": \"Anahuac\",\n            \"Municipio\": \"Apodaca\",\n            \"Estado\": \"Nuevo Leon\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"66265\"\n          }\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"150.00\",\n        \"UnidadPeso\": \"KGM\",\n        \"PesoNetoTotal\": \"140.00\",\n        \"NumTotalMercancias\": \"1\",\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"10216100\",\n            \"Descripcion\": \"Productos diversos\",\n            \"Cantidad\": \"10\",\n            \"ClaveUnidad\": \"H87\",\n            \"Unidad\": \"PIEZAS\",\n            \"PesoEnKg\": \"150.00\",\n            \"ValorMercancia\": \"5000.00\",\n            \"Moneda\": \"MXN\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"10\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          }\n        ],\n        \"Autotransporte\": {\n          \"PermSCT\": \"TPAF01\",\n          \"NumPermisoSCT\": \"1345648745\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"C2\",\n            \"PesoBrutoVehicular\": \"38.50\",\n            \"PlacaVM\": \"ABC123D\",\n            \"AnioModeloVM\": \"2024\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"GNP SEGUROS\",\n            \"PolizaRespCivil\": \"7174005154\"\n          }\n        }\n      },\n      \"FiguraTransporte\": [\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"GOLJ860719Q32\",\n          \"NumLicencia\": \"78411134546\",\n          \"NombreFigura\": \"ANTONIO AGUIRRE LOPEZ\"\n        }\n      ]\n    }\n  }\n}\n</code></pre>\n<hr />\n<h2 id=\"ejemplo-2-comprobante-de-traslado-con-carta-porte-31\">Ejemplo 2: Comprobante de Traslado con Carta Porte 3.1</h2>\n<p>El comprobante de <strong>Traslado</strong> (<code>TipoDeComprobante: \"T\"</code>) se utiliza exclusivamente para amparar el movimiento de mercancía <strong>sin realizar cobro alguno</strong>. Todos los valores monetarios deben ser <strong>cero</strong>.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"TR-INTERNAL\",\n  \"Folio\": \"508\",\n  \"Fecha\": \"2024-12-20T12:00:00\",\n  \"SubTotal\": \"0\",\n  \"Moneda\": \"XXX\",\n  \"Total\": \"0\",\n  \"TipoDeComprobante\": \"T\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"G03\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"01\",\n      \"ClaveProdServ\": \"78101500\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Unidad\": \"SERVICIO\",\n      \"Descripcion\": \"TRASLADO DE MERCANCIA DE BODEGA SANTA CATARINA A CEDIS BLVD. ACAPULCO\",\n      \"ValorUnitario\": \"0\",\n      \"Importe\": \"0\"\n    }\n  ],\n  \"Complemento\": {\n    \"CartaPorte31\": {\n      \"Version\": \"3.1\",\n      \"IdCCP\": \"AUTO\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"50\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n          \"NombreRemitenteDestinatario\": \"EMPRESA REMITENTE\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T12:00:00\",\n          \"Domicilio\": {\n            \"Calle\": \"Av. Principal\",\n            \"NumeroExterior\": \"100\",\n            \"Colonia\": \"Centro\",\n            \"Municipio\": \"Monterrey\",\n            \"Estado\": \"Nuevo Leon\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"64000\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"NOVATECH DIGITAL\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T16:00:00\",\n          \"DistanciaRecorrida\": \"50\",\n          \"Domicilio\": {\n            \"Calle\": \"Palmas\",\n            \"NumeroExterior\": \"123\",\n            \"Colonia\": \"Anahuac\",\n            \"Municipio\": \"Apodaca\",\n            \"Estado\": \"Nuevo Leon\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"66265\"\n          }\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"150.00\",\n        \"UnidadPeso\": \"KGM\",\n        \"PesoNetoTotal\": \"140.00\",\n        \"NumTotalMercancias\": \"1\",\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"10216100\",\n            \"Descripcion\": \"Productos diversos\",\n            \"Cantidad\": \"10\",\n            \"ClaveUnidad\": \"H87\",\n            \"Unidad\": \"PIEZAS\",\n            \"PesoEnKg\": \"150.00\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"10\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          }\n        ],\n        \"Autotransporte\": {\n          \"PermSCT\": \"TPAF01\",\n          \"NumPermisoSCT\": \"1345648745\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"C2\",\n            \"PesoBrutoVehicular\": \"38.50\",\n            \"PlacaVM\": \"ABC123D\",\n            \"AnioModeloVM\": \"2024\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"GNP SEGUROS\",\n            \"PolizaRespCivil\": \"7174005154\"\n          }\n        }\n      },\n      \"FiguraTransporte\": [\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"GOLJ860719Q32\",\n          \"NumLicencia\": \"78411134546\",\n          \"NombreFigura\": \"ANTONIO AGUIRRE LOPEZ\"\n        }\n      ]\n    }\n  }\n}\n</code></pre>\n<h3 id=\"características-del-comprobante-de-traslado\">Características del Comprobante de Traslado</h3>\n<ul>\n<li><strong>Moneda:</strong> Debe ser <code>\"XXX\"</code> (sin moneda)</li>\n<li><strong>SubTotal y Total:</strong> Deben ser <code>\"0\"</code></li>\n<li><strong>ObjetoImp:</strong> Debe ser <code>\"01\"</code> (No objeto de impuesto)</li>\n<li><strong>Sin impuestos:</strong> No se declaran impuestos en este tipo de comprobante</li>\n<li><strong>Sin FormaPago:</strong> El campo <code>FormaPago</code> se elimina automáticamente</li>\n</ul>\n<hr />\n<h2 id=\"uso-de-la-api\">Uso de la API</h2>\n<h3 id=\"endpoint\">Endpoint</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST /api/v5/invoice/create\n</code></pre><h3 id=\"headers-requeridos\">Headers Requeridos</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>Content-Type: application/x-www-form-urlencoded\nX-Api-Key: [TU_API_KEY]\n</code></pre><h3 id=\"ejemplo-con-curl\">Ejemplo con cURL</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\">curl --location 'https://facturadigital_v4.test/api/v5/invoice/create' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--header 'X-Api-Key: TU_API_KEY' \\\n--data-urlencode 'json={\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"A\",\n  \"Folio\": \"50\",\n  \"Fecha\": \"2024-12-20T12:00:00\",\n  \"FormaPago\": \"99\",\n  \"SubTotal\": \"100.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": \"1\",\n  \"Total\": \"116.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PPD\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"XAXX010101000\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"UsoCFDI\": \"G03\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"02\",\n      \"ClaveProdServ\": \"78101500\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"H87\",\n      \"Unidad\": \"SERVICIO\",\n      \"Descripcion\": \"Flete de Monterrey a Saltillo\",\n      \"ValorUnitario\": \"100.00\",\n      \"Importe\": \"100.00\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"100.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"16.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"16.00\",\n    \"Traslados\": [\n      {\n        \"Base\": \"100.00\",\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"16.00\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"CartaPorte31\": {\n      \"Version\": \"3.1\",\n      \"IdCCP\": \"AUTO\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"50\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n          \"NombreRemitenteDestinatario\": \"EMPRESA REMITENTE\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T12:00:00\",\n          \"Domicilio\": {\n            \"Calle\": \"Av. Principal\",\n            \"NumeroExterior\": \"100\",\n            \"Colonia\": \"Centro\",\n            \"Municipio\": \"Monterrey\",\n            \"Estado\": \"Nuevo Leon\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"64000\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"NOVATECH DIGITAL\",\n          \"FechaHoraSalidaLlegada\": \"2024-12-20T16:00:00\",\n          \"DistanciaRecorrida\": \"50\",\n          \"Domicilio\": {\n            \"Calle\": \"Palmas\",\n            \"NumeroExterior\": \"123\",\n            \"Colonia\": \"Anahuac\",\n            \"Municipio\": \"Apodaca\",\n            \"Estado\": \"Nuevo Leon\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"66265\"\n          }\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"150.00\",\n        \"UnidadPeso\": \"KGM\",\n        \"PesoNetoTotal\": \"140.00\",\n        \"NumTotalMercancias\": \"1\",\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"10216100\",\n            \"Descripcion\": \"Productos diversos\",\n            \"Cantidad\": \"10\",\n            \"ClaveUnidad\": \"H87\",\n            \"Unidad\": \"PIEZAS\",\n            \"PesoEnKg\": \"150.00\",\n            \"CantidadTransporta\": [\n              {\n                \"Cantidad\": \"10\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\"\n              }\n            ]\n          }\n        ],\n        \"Autotransporte\": {\n          \"PermSCT\": \"TPAF01\",\n          \"NumPermisoSCT\": \"1345648745\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"C2\",\n            \"PesoBrutoVehicular\": \"38.50\",\n            \"PlacaVM\": \"ABC123D\",\n            \"AnioModeloVM\": \"2024\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"GNP SEGUROS\",\n            \"PolizaRespCivil\": \"7174005154\"\n          }\n        }\n      },\n      \"FiguraTransporte\": [\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"GOLJ860719Q32\",\n          \"NumLicencia\": \"78411134546\",\n          \"NombreFigura\": \"ANTONIO AGUIRRE LOPEZ\"\n        }\n      ]\n    }\n  }\n}'\n</code></pre>\n<hr />\n<h2 id=\"validaciones-y-reglas-importantes\">Validaciones y Reglas Importantes</h2>\n<h3 id=\"validaciones-del-cfdi-base\">Validaciones del CFDI Base</h3>\n<ol>\n<li><strong>TipoDeComprobante:</strong> Debe ser <code>\"I\"</code> (Ingreso) o <code>\"T\"</code> (Traslado)</li>\n<li><strong>ClaveProdServ:</strong> Para servicios de transporte, usar <code>\"78101500\"</code></li>\n<li><strong>ObjetoImp:</strong> <ul>\n<li><code>\"02\"</code> para facturas de ingreso con impuestos</li>\n<li><code>\"01\"</code> para comprobantes de traslado</li>\n</ul>\n</li>\n</ol>\n<h3 id=\"validaciones-del-complemento\">Validaciones del Complemento</h3>\n<ol>\n<li><strong>Version:</strong> Debe ser exactamente <code>\"3.1\"</code></li>\n<li><strong>IdCCP:</strong> <ul>\n<li>Puede ser <code>\"AUTO\"</code> para generación automática</li>\n<li>O seguir formato: <code>CCCxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</code></li>\n</ul>\n</li>\n<li><strong>Ubicaciones:</strong> <ul>\n<li>Mínimo 2 ubicaciones (un origen y un destino)</li>\n<li><code>IDUbicacion</code> debe seguir formato <code>OR000001</code> o <code>DE000001</code></li>\n</ul>\n</li>\n<li><strong>Mercancias:</strong> <ul>\n<li>Debe incluir al menos una mercancía</li>\n<li><code>PesoBrutoTotal</code> debe coincidir con la suma de pesos</li>\n</ul>\n</li>\n<li><strong>Medio de Transporte:</strong> Solo incluir UN medio de transporte (Autotransporte, Marítimo, Aéreo o Ferroviario)</li>\n</ol>\n<h3 id=\"reglas-de-negocio\">Reglas de Negocio</h3>\n<ol>\n<li><strong>PesoBrutoTotal:</strong> Debe ser igual o mayor a la suma de <code>PesoEnKg</code> de todas las mercancías</li>\n<li><strong>NumTotalMercancias:</strong> Debe ser igual al número de elementos en el array <code>Mercancia</code></li>\n<li><strong>IDUbicacion:</strong> Si se usa en <code>CantidadTransporta</code>, debe existir en <code>Ubicaciones</code></li>\n<li><strong>Placas:</strong> No deben incluir guiones ni espacios</li>\n<li><strong>Fechas:</strong> <code>FechaHoraSalidaLlegada</code> del destino debe ser posterior a la del origen</li>\n</ol>\n<hr />\n<h2 id=\"preguntas-frecuentes-faq\">Preguntas Frecuentes (FAQ)</h2>\n<h3 id=\"¿cuándo-debo-usar-factura-de-ingreso-vs-comprobante-de-traslado\">¿Cuándo debo usar factura de ingreso vs comprobante de traslado?</h3>\n<ul>\n<li><strong>Factura de Ingreso (<code>\"I\"</code>):</strong> Cuando cobras por el servicio de transporte. Incluye montos, impuestos y el complemento de Carta Porte.</li>\n<li><strong>Comprobante de Traslado (<code>\"T\"</code>):</strong> Cuando solo amparas el movimiento de mercancía sin cobro. Todos los valores son cero.</li>\n</ul>\n<h3 id=\"¿cómo-genero-el-idccp-automáticamente\">¿Cómo genero el IdCCP automáticamente?</h3>\n<p>Usa <code>\"IdCCP\": \"AUTO\"</code> y la API generará automáticamente un identificador válido con formato <code>CCCxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</code>.</p>\n<h3 id=\"¿puedo-tener-múltiples-orígenes-y-destinos\">¿Puedo tener múltiples orígenes y destinos?</h3>\n<p>Sí, puedes tener múltiples ubicaciones de origen y destino. Solo asegúrate de que cada <code>IDUbicacion</code> sea único y que las referencias en <code>CantidadTransporta</code> coincidan.</p>\n<h3 id=\"¿qué-medio-de-transporte-debo-usar\">¿Qué medio de transporte debo usar?</h3>\n<ul>\n<li><strong>Autotransporte:</strong> Para transporte por carretera en territorio nacional</li>\n<li><strong>Transporte Marítimo:</strong> Para transporte por vía marítima</li>\n<li><strong>Transporte Aéreo:</strong> Para transporte por vía aérea</li>\n<li><strong>Transporte Ferroviario:</strong> Para transporte por vía férrea</li>\n</ul>\n<p>Solo debes incluir UN medio de transporte en tu JSON.</p>\n<h3 id=\"¿cómo-manejo-materiales-peligrosos\">¿Cómo manejo materiales peligrosos?</h3>\n<p>Si transportas materiales peligrosos:</p>\n<ol>\n<li>Marca <code>MaterialPeligroso: \"Sí\"</code> en la mercancía</li>\n<li>Especifica <code>CveMaterialPeligroso</code> según catálogo</li>\n<li>Incluye información de <code>Embalaje</code> y <code>DescripEmbalaje</code></li>\n<li>En Autotransporte, incluye <code>AseguraMedAmbiente</code> y <code>PolizaMedAmbiente</code> en Seguros</li>\n</ol>\n<h3 id=\"¿qué-es-el-campo-totaldistrec\">¿Qué es el campo TotalDistRec?</h3>\n<p>Es la distancia total recorrida en kilómetros. Puede ser la suma de las distancias registradas en cada ubicación o la distancia total del viaje.</p>\n<h3 id=\"¿cuándo-debo-incluir-el-nodo-regimenesaduaneros\">¿Cuándo debo incluir el nodo RegimenesAduaneros?</h3>\n<p>Solo cuando los bienes transportados tienen procedencia extranjera y aplica algún régimen aduanero. Máximo 10 regímenes.</p>\n<h3 id=\"¿cómo-expreso-las-dimensiones\">¿Cómo expreso las dimensiones?</h3>\n<p>Las dimensiones se expresan en formato: <code>\"largo/alto/anchounidad\"</code>, por ejemplo:</p>\n<ul>\n<li><code>\"30/40/30cm\"</code> (centímetros)</li>\n<li><code>\"12/16/12plg\"</code> (pulgadas)</li>\n</ul>\n<hr />\n<h2 id=\"catálogos-del-sat\">Catálogos del SAT</h2>\n<p>Para consultar los catálogos oficiales del SAT, visita:</p>\n<ul>\n<li><strong>Catálogos de Carta Porte:</strong> <a href=\"http://www.sat.gob.mx/sitio_internet/cfd/catalogos/CartaPorte/\">http://www.sat.gob.mx/sitio_internet/cfd/catalogos/CartaPorte/</a></li>\n<li><strong>Catálogos Generales:</strong> <a href=\"http://www.sat.gob.mx/sitio_internet/cfd/catalogos/\">http://www.sat.gob.mx/sitio_internet/cfd/catalogos/</a></li>\n</ul>\n<h3 id=\"catálogos-principales-utilizados\">Catálogos Principales Utilizados</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Catálogo</th>\n<th>Descripción</th>\n<th>Ubicación</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>c_ClaveProdServCP</code></td>\n<td>Claves de productos transportados</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_ConfigAutotransporte</code></td>\n<td>Configuraciones vehiculares</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoPermiso</code></td>\n<td>Tipos de permiso SCT</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_SubTipoRem</code></td>\n<td>Subtipos de remolque</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_FiguraTransporte</code></td>\n<td>Tipos de figura de transporte</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_Estaciones</code></td>\n<td>Estaciones de transporte</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoEstacion</code></td>\n<td>Tipos de estación</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_MaterialPeligroso</code></td>\n<td>Materiales peligrosos</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoEmbalaje</code></td>\n<td>Tipos de embalaje</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_ClaveUnidadPeso</code></td>\n<td>Unidades de peso</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_RegimenAduanero</code></td>\n<td>Regímenes aduaneros</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_ConfigMaritima</code></td>\n<td>Configuraciones marítimas</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_ClaveTipoCarga</code></td>\n<td>Tipos de carga marítima</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_CodigoTransporteAereo</code></td>\n<td>Códigos de transporte aéreo</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoDeServicio</code></td>\n<td>Tipos de servicio ferroviario</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoDeTrafico</code></td>\n<td>Tipos de tráfico ferroviario</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_TipoCarro</code></td>\n<td>Tipos de carro ferroviario</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_Contenedor</code></td>\n<td>Tipos de contenedor ferroviario</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_ContenedorMaritimo</code></td>\n<td>Tipos de contenedor marítimo</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_DocumentoAduanero</code></td>\n<td>Tipos de documento aduanero</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_CveTransporte</code></td>\n<td>Claves de transporte</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n<tr>\n<td><code>c_RegistroISTMO</code></td>\n<td>Regiones del Istmo de Tehuantepec</td>\n<td>catCartaPorte.xsd</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"notas-finales\">Notas Finales</h2>\n<h3 id=\"buenas-prácticas\">Buenas Prácticas</h3>\n<ol>\n<li><strong>Usa <code>IdCCP: \"AUTO\"</code></strong> para evitar errores de formato</li>\n<li><strong>Valida todos los datos</strong> antes de enviar el JSON a la API</li>\n<li><strong>Verifica los catálogos SAT</strong> antes de usar códigos</li>\n<li><strong>Usa formato ISO para fechas</strong> (<code>YYYY-MM-DDTHH:mm:ss</code>)</li>\n<li><strong>Asegúrate de que los IDUbicacion sean únicos</strong> y sigan el formato correcto</li>\n<li><strong>Verifica que las placas no tengan guiones ni espacios</strong></li>\n<li><strong>Mantén un registro</strong> de los UUIDs e IdCCPs generados</li>\n<li><strong>Almacena los XMLs</strong> timbrados para cumplimiento fiscal</li>\n</ol>\n<h3 id=\"errores-comunes-a-evitar\">Errores Comunes a Evitar</h3>\n<ul>\n<li>❌ Usar <code>CartaPorte20</code> o <code>CartaPorte30</code> en lugar de <code>CartaPorte31</code></li>\n<li>❌ Incluir múltiples medios de transporte</li>\n<li>❌ Usar placas con guiones o espacios</li>\n<li>❌ IDUbicacion que no coinciden entre Ubicaciones y CantidadTransporta</li>\n<li>❌ PesoBrutoTotal que no coincide con la suma de pesos</li>\n<li>❌ Fechas en formato incorrecto</li>\n<li>❌ Códigos de catálogo inexistentes</li>\n<li>❌ Menos de 2 ubicaciones (mínimo un origen y un destino)</li>\n</ul>\n<h3 id=\"soporte\">Soporte</h3>\n<p>Si requieres ayuda adicional o ejemplos específicos, contáctanos:</p>\n<ul>\n<li><strong>Email:</strong> <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></li>\n<li><strong>Documentación:</strong> docs.facturadigital.com.mx</li>\n</ul>\n<hr />\n<p><strong>Última actualización:</strong> Diciembre 2025<br /><strong>Versión del Complemento:</strong> 3.1<br /><strong>Versión de CFDI:</strong> 4.0</p>\n","urlObject":{"path":["invoice","create"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"99accf10-2b8b-418c-85b2-4dbf349933a9"},{"name":"Crear CFDI con Complemento Pagos","id":"3fa935be-f410-4302-bd2b-d8f6cf1dd292","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"PAYMENT\",\n  \"Folio\": 5605,\n  \"Fecha\": \"AUTO\",\n  \"SubTotal\": \"0\",\n  \"Moneda\": \"XXX\",\n  \"Total\": \"0\",\n  \"TipoDeComprobante\": \"P\",\n  \"LugarExpedicion\": \"67150\",\n  \"LeyendaFolio\": \"COMPROBANTE DE PAGO\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"NDI120326HF5\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"ResidenciaFiscal\": null,\n    \"NumRegIdTrib\": null,\n    \"UsoCFDI\": \"CP01\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\",\n    \"Calle\": \"Palmas\",\n    \"NoExt\": \"9810\",\n    \"NoInt\": null,\n    \"Colonia\": \"Anahuac\",\n    \"Municipio\": \"Apodaca\",\n    \"Estado\": \"Nuevo Leon\",\n    \"Pais\": \"México\",\n    \"CodigoPostal\": \"67349\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"01\",\n      \"ClaveProdServ\": \"84111506\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Descripcion\": \"Pago\",\n      \"ValorUnitario\": \"0\",\n      \"Importe\": \"0\",\n      \"Descuento\": null\n    }\n  ],\n  \"Complemento\": {\n    \"Pagos20\": {\n      \"Totales\": {\n        \"TotalRetencionesIVA\": \"\",\n        \"TotalRetencionesISR\": \"\",\n        \"TotalRetencionesIEPS\": \"\",\n        \"TotalTrasladosBaseIVA16\": \"\",\n        \"TotalTrasladosImpuestoIVA16\": \"\",\n        \"TotalTrasladosBaseIVA8\": \"\",\n        \"TotalTrasladosImpuestoIVA8\": \"\",\n        \"TotalTrasladosBaseIVA0\": \"\",\n        \"TotalTrasladosImpuestoIVA0\": \"\",\n        \"TotalTrasladosBaseIVAExento\": \"\",\n        \"MontoTotalPagos\": \"1000.00\"\n      },\n      \"Pago\": [\n        {\n          \"FechaPago\": \"2022-09-05T12:00:00\",\n          \"FormaDePagoP\": \"02\",\n          \"MonedaP\": \"MXN\",\n          \"TipoCambioP\": \"1\",\n          \"Monto\": \"1000.00\",\n          \"NumOperacion\": \"\",\n          \"RfcEmisorCtaOrd\": \"\",\n          \"NomBancoOrdExt\": \"\",\n          \"CtaOrdenante\": \"\",\n          \"RfcEmisorCtaBen\": \"\",\n          \"CtaBeneficiario\": \"\",\n          \"TipoCadPago\": \"\",\n          \"CertPago\": \"\",\n          \"CadPago\": \"\",\n          \"SelloPago\": \"\",\n          \"DoctoRelacionado\": [\n            {\n              \"IdDocumento\": \"12333022-ddd2-4079-b6e2-9d5f758462fd\",\n              \"Serie\": \"FA\",\n              \"Folio\": \"7596\",\n              \"MonedaDR\": \"MXN\",\n              \"EquivalenciaDR\": \"1\",\n              \"NumParcialidad\": \"1\",\n              \"ImpSaldoAnt\": \"2900.00\",\n              \"ImpPagado\": \"1000.00\",\n              \"ImpSaldoInsoluto\": \"1900.00\",\n              \"ObjetoImpDR\": \"01\"\n            }\n          ],\n          \"TrasladosP\": [\n            {\n              \"BaseP\": \"1000.00\",\n              \"ImpuestoP\": \"002\",\n              \"TipoFactorP\": \"Tasa\",\n              \"TasaOCuotaP\": \"0.160000\",\n              \"ImporteP\": \"160.00\"\n            }\n          ]\n        }\n      ]\n    }\n  }\n}","description":"<p>Cadena JSON con los datos del CFDI que deseas timbrar. Puedes solicitarnos ejemplos de la estructura de este JSON en <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n","type":"text"}]},"url":"{{URI}}/invoice/create","description":"<h1 id=\"crear-un-cfdi-40-desde-cero\">Crear un CFDI 4.0 desde cero</h1>\n<h2 id=\"introducción\">Introducción</h2>\n<p>Este método te permitirá generar por completo un CFDI de cualquier tipo (Ingreso, Egreso, Traslado, Nómina, Pago), a través de una simple estructura JSON que contiene todos los datos del comprobante fiscal.</p>\n<p>Este método realiza todas las tareas complicadas por ti, es decir, se encarga de validar la información, estructurarla en un XML, generar la cadena original, sello digital, timbrar, verificar, generar el PDF y devolverte los datos listos para ser entregados a tu receptor.</p>\n<h4 id=\"ventajas\">Ventajas:</h4>\n<ul>\n<li>Generación de CFDI en un solo paso</li>\n<li>Evitar problemas de sellado, estructura de XML, problemas de codificación UTF-8, etc.</li>\n<li>Evitar la tarea de crear / modificar un PDF</li>\n<li>Optimización en recursos tecnológicos como servidores de procesamiento, resguardo, etc.</li>\n<li>Actualizaciones simples y automáticas</li>\n</ul>\n<h2 id=\"cfdi-40-factura-simple-de-ingreso\">CFDI 4.0: Factura simple de Ingreso</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n   \"Version\":\"4.0\",\n   \"Exportacion\":\"01\",\n   \"Serie\":\"F\",\n   \"Folio\":\"987750\",\n   \"Fecha\":\"AUTO\",\n   \"FormaPago\":\"01\",\n   \"CondicionesDePago\":\"CONDICIONES\",\n   \"SubTotal\":\"200.00\",\n   \"Descuento\":null,\n   \"Moneda\":\"MXN\",\n   \"TipoCambio\":1,\n   \"Total\":\"232.00\",\n   \"TipoDeComprobante\":\"E\",\n   \"MetodoPago\":\"PUE\",\n   \"LugarExpedicion\":\"67150\",\n   \"extra1\":\"info extra 1\",\n   \"extra2\":\"info extra 2\",\n   \"extra3\":\"info extra 3\",\n   \"extra15\":\"info extra 15\",\n   \"extra30\":\"info extra 30\",\n   \"LeyendaFolio\":\"FACTURA\",\n   \"Confirmacion\":null,\n   \"CfdiRelacionadosTipoRelacion\":\"01\",\n   \"CfdiRelacionados\":[\n      {\n         \"UUID\":\"4956BB44-5281-4B5C-BF10-453D4EC5178B\"\n      },\n      {\n         \"UUID\":\"4956BB44-5281-4B5C-BF10-453D4EC5178B\"\n      },\n      {\n         \"UUID\":\"4956BB44-5281-4B5C-BF10-453D4EC5178B\"\n      },\n      {\n         \"UUID\":\"4956BB44-5281-4B5C-BF10-453D4EC5178B\"\n      }\n   ],\n   \"Emisor\":{\n      \"RegimenFiscal\":\"612\"\n   },\n   \"Receptor\":{\n      \"Rfc\":\"NDI120326HF5\",\n      \"Nombre\":\"NOVATECH DIGITAL\",\n      \"ResidenciaFiscal\":null,\n      \"NumRegIdTrib\":null,\n      \"UsoCFDI\":\"G03\",\n      \"Calle\":\"Palmas\",\n      \"NoExt\":null,\n      \"NoInt\":null,\n      \"Colonia\":\"Anahuac\",\n      \"Localidad\":null,\n      \"Referencia\":null,\n      \"Municipio\":\"Apodaca\",\n      \"Estado\":\"Nuevo Leon\",\n      \"Pais\":\"Mexico\",\n      \"CodigoPostal\":\"66265\",\n      \"DomicilioFiscalReceptor\":\"66265\",\n      \"RegimenFiscalReceptor\":\"601\"\n   },\n   \"Conceptos\":[\n      {\n         \"ClaveProdServ\":\"01010101\",\n         \"NoIdentificacion\":\"01\",\n         \"Cantidad\":1,\n         \"ClaveUnidad\":\"ZZ\",\n         \"Unidad\":\"Pieza\",\n         \"Descripcion\":\"Mezcal Oaxaca\",\n         \"ValorUnitario\":\"200.00\",\n         \"Importe\":\"200.00\",\n         \"Descuento\":null,\n         \"extra1\":\"dato extra 1\",\n         \"extra5\":\"dato extra 5\",\n         \"extra10\":\"dato extra 10\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"200.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"32.00\"\n               }\n            ]\n         }\n      }\n   ],\n   \"Impuestos\":{\n      \"TotalImpuestosTrasladados\":\"32.00\",\n      \"Traslados\":[\n         {\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"32.00\"\n         }\n      ]\n   }\n}\nHelpers en campos\n\n</code></pre>\n<blockquote>\n<p>IMPORTANTE: Estos campos deben ser incluidos a nivel raíz del JSON y no afectan en términos fiscales.</p>\n</blockquote>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo (Propiedad) dentro del JSON</strong></th>\n<th><strong>Valor Ejemplo</strong></th>\n<th><strong>Función</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Fecha</strong></td>\n<td><strong>AUTO</strong></td>\n<td>Asignará la fecha de nuestro servidor. IMPORTANTE: Debes tener cuidado de usar este valor \"AUTO\". Si tu aplicación no controla los doble click del usuario, puedes duplicar facturas.</td>\n</tr>\n<tr>\n<td>printxml</td>\n<td>true</td>\n<td>Esta propiedad imprimirá el xml en pantalla. Es decir, en lugar de retornar un valor JSON, te retornará un valor HTML con la impresión del XML que estás generando (antes de timbrar).</td>\n</tr>\n<tr>\n<td>Fecha</td>\n<td>yyyy-mm-ddThh:mm:ss</td>\n<td>Es el formato recomendado para evitar duplicidad de facturas.</td>\n</tr>\n<tr>\n<td>config_plantilla_id</td>\n<td>factura_default</td>\n<td>ID de la plantilla PDF (diseño) que utilizarás para este CFDI. Si deseas utilizar diferentes plantillas impresas, debes configurar un ID único dentro del panel de administración.</td>\n</tr>\n<tr>\n<td>LeyendaFolio</td>\n<td>FACTURA</td>\n<td>String que aparecerá en la parte superior derecha de la factura PDF.</td>\n</tr>\n<tr>\n<td>EstatusCobranza</td>\n<td>1: Por Cobrar  <br />2: Cobrado Parcialmente  <br />3: Cobrado totalmente</td>\n<td></td>\n</tr>\n<tr>\n<td>MontoCobrado</td>\n<td>100.00</td>\n<td>Monto inicial cobrado, en caso de que ya exista un anticipo.</td>\n</tr>\n<tr>\n<td>SaldoInsoluto</td>\n<td>50.00</td>\n<td>Monto del saldo insoluto, en caso de que ya exista un anticipo.</td>\n</tr>\n<tr>\n<td>extra1</td>\n<td>Vendido por Jose Luis Aldape</td>\n<td>String para agregar comentarios a tu PDF.  <br />Puedes agregar del extra1 al extra30.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"campos-opcionales\">Campos opcionales:</h3>\n<h4 id=\"los-siguientes-campos-y-nodos-son-opcionales\">Los siguientes campos y nodos son opcionales:</h4>\n<ul>\n<li>Folio</li>\n<li>Serie</li>\n<li>CondicionesDePago</li>\n<li>Descuento</li>\n<li>extra1 al extra30</li>\n<li>LeyendaFolio</li>\n<li>Confirmacion</li>\n<li>CfdiRelacionadosTipoRelacion</li>\n<li>CfdiRelacionados</li>\n<li>Del campo <strong>extra1</strong> al campo <strong>extra30</strong></li>\n<li>Receptor<ul>\n<li>ResidenciaFiscal</li>\n<li>NumRegIdTrib</li>\n<li>Calle</li>\n<li>NoExt</li>\n<li>NoInt</li>\n<li>Colonia</li>\n<li>Localidad</li>\n<li>Referencia</li>\n<li>Municipio</li>\n<li>Estado</li>\n<li>Pais</li>\n<li>CodigoPostal</li>\n</ul>\n</li>\n<li>Conceptos<ul>\n<li>NoIdentificacion</li>\n<li>Unidad</li>\n<li>Descuento</li>\n<li>Del campo <strong>extra1</strong> al campo <strong>extra10</strong></li>\n</ul>\n</li>\n</ul>\n<h2 id=\"cfdi-40-ingreso-con-complemento-de-carta-porte-versión-20-autotransporte\">CFDI 4.0: Ingreso con Complemento de Carta Porte versión 2.0 (Autotransporte)</h2>\n<blockquote>\n<p>NOTA: Este tipo de comprobante lo debes utilizar por ejemplo si eres una empresa de transportes, realizas fletes. Te explico a detalle:</p>\n<p>Es exactamente lo mismo que haces cuando cobras un flete y le cobras el servicio a tu cliente que le brindarás el servicio, sin embargo, deberás declararle a la autoridad (SAT) el detalle de la mercancía que moverás (aunque sea mercancía ajena).</p>\n<p>Ahora bien, si es un listado enorme de mercancía, deberás pedirle a tu cliente un archivo electrónico en formato XML/JSON/CSV con el detalle de la mercancía, mismo que podrás cargar de forma automática dentro de nuestro módulo B2B (Business to Business).</p>\n<p>El módulo B2B te permitirá leer automáticamente los detalles de la mercancía que tu cliente quiere trasladar utilizando tu servicio de fletes; de esta forma, ya no tendrás que capturar partida por partida dentro del complemento.</p>\n<p>Es importante mencionar que el concepto de la factura deberá ser el mismo que siempre has manejado, por ejemplo: \"SERVICIO DE FLETE DE MONTERREY A REYNOSA, CAJA SECA DOBLE REMOLQUE CON AYUDANTES\" y el monto que cobras por el servicio. Exactamente igual que como lo hacías antes.</p>\n<p>Y en adición, se incluye el Complemento de Carta Porte 2.0 en la parte inferior de la factura, mismo que contendrá información como ubicación de origen, destino, tipo de vehículo, placas, remolques y tipos de remolque que llevarás en ese servicio, el chofer que asignarás a la unidad y sus datos básicos, así como el detalle de la mercancía que trasladarás.</p>\n<p>Si tienes dudas, contáctanos en <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a> ó ingresa a nuestro sitio web <a href=\"http://www.facturadigital.com.mx\">www.facturadigital.com.mx</a></p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\":\"4.0\",\n  \"Exportacion\":\"01\",\n  \"Serie\": \"A\",\n  \"Folio\": \"50\",\n  \"Fecha\": \"2021-11-25T12:00:00\",\n  \"FormaPago\": \"99\",\n  \"SubTotal\": \"100.00\",\n  \"Moneda\": \"MXN\",\n  \"TipoCambio\": null,\n  \"Total\": \"116.00\",\n  \"TipoDeComprobante\": \"I\",\n  \"MetodoPago\": \"PPD\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n      \"Rfc\":\"NDI120326HF5\",\n      \"Nombre\":\"NOVATECH DIGITAL\",\n      \"ResidenciaFiscal\":null,\n      \"NumRegIdTrib\":null,\n      \"UsoCFDI\":\"G03\",\n      \"Calle\":\"Palmas\",\n      \"NoExt\":null,\n      \"NoInt\":null,\n      \"Colonia\":\"Anahuac\",\n      \"Localidad\":null,\n      \"Referencia\":null,\n      \"Municipio\":\"Apodaca\",\n      \"Estado\":\"Nuevo Leon\",\n      \"Pais\":\"Mexico\",\n      \"CodigoPostal\":\"66265\",\n      \"DomicilioFiscalReceptor\":\"66265\",\n      \"RegimenFiscalReceptor\":\"601\"\n  },\n  \"Conceptos\": [\n    {\n      \"ClaveProdServ\": \"78101500\",\n      \"NoIdentificacion\": null,\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ZZ\",\n      \"Unidad\": \"\",\n      \"Descripcion\": \"Flete de Mty a Saltillo\",\n      \"ValorUnitario\": \"100.00\",\n      \"Importe\": \"100.00\",\n      \"Impuestos\": {\n        \"Traslados\": [\n          {\n            \"Base\": \"100.00\",\n            \"Impuesto\": \"002\",\n            \"TipoFactor\": \"Tasa\",\n            \"TasaOCuota\": \"0.160000\",\n            \"Importe\": \"16.00\"\n          }\n        ]\n      }\n    }\n  ],\n  \"Impuestos\": {\n    \"TotalImpuestosTrasladados\": \"16.00\",\n    \"TotalImpuestosRetenidos\": null,\n    \"Traslados\": [\n      {\n        \"Impuesto\": \"002\",\n        \"TipoFactor\": \"Tasa\",\n        \"TasaOCuota\": \"0.160000\",\n        \"Importe\": \"16.00\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"CartaPorte20\": {\n      \"Version\": \"2.0\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"20\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n          \"NombreRemitenteDestinatario\": \"Ermenegildo Zegna\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T12:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"\",\n          \"Domicilio\": {\n            \"Calle\": \"\",\n            \"NumeroExterior\": \"\",\n            \"NumeroInterior\": \"\",\n            \"Colonia\": \"\",\n            \"Localidad\": \"07\",\n            \"Referencia\": \"\",\n            \"Municipio\": \"039\",\n            \"Estado\": \"NLE\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"64830\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"Home&amp;Garden Company\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T16:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"10\"\n        },\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000002\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"Home&amp;Garden Company\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T16:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"\"\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000002\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"RESTAURANTE EL FAISAN\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T16:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"10\"\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"150.00\",\n        \"UnidadPeso\": \"LTR\",\n        \"PesoNetoTotal\": \"160.00\",\n        \"NumTotalMercancias\": \"1\",\n        \"CargoPorTasacion\": \"12.50\",\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"10216100\",\n            \"ClaveSTCC\": \"887791\",\n            \"Descripcion\": \"Plantas exóticas - Estrella de Belén viva\",\n            \"Cantidad\": \"180\",\n            \"ClaveUnidad\": \"H87\",\n            \"Unidad\": \"PIEZAS\",\n            \"Dimensiones\": \"30/40/30cm\",\n            \"MaterialPeligroso\":\"\",\n            \"CveMaterialPeligroso\": \"\",\n            \"Embalaje\": \"\",\n            \"DescripEmbalaje\": \"Emplayado\",\n            \"PesoEnKg\": \"150.00\",\n            \"ValorMercancia\": \"\",\n            \"Moneda\": \"MXN\",\n            \"FraccionArancelaria\": \"\",\n            \"UUIDComercioExt\":\"\",\n            \"Pedimentos\":[],\n            \"GuiasIdentificacion\":[],\n            \"CantidadTransporta\":[\n              {\n                \"Cantidad\": \"1.000\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\",\n                \"CvesTransporte\": \"\"\n              },\n              {\n                \"Cantidad\": \"1.000\",\n                \"IDOrigen\": \"OR000002\",\n                \"IDDestino\": \"DE000002\",\n                \"CvesTransporte\": \"\"\n              }\n            ]\n          }\n        ],\n        \"Autotransporte\": {\n          \"PermSCT\":\"TPAF01\",\n          \"NumPermisoSCT\": \"1345648745\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"VL\",\n            \"PlacaVM\": \"RPK516A\",\n            \"AnioModeloVM\": \"2021\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"GNP SEGUROS\",\n            \"PolizaRespCivil\": \"7174005154\",\n            \"AseguraMedAmbiente\": \"QUALITAS\",\n            \"PolizaMedAmbiente\": \"000004848725411\",\n            \"AseguraCarga\": \"GNP SEGUROS CARGA\",\n            \"PolizaCarga\": \"00019008787\",\n            \"PrimaSeguro\": \"850000.00\"\n          },\n          \"Remolques\":[\n            {\n              \"SubTipoRem\":\"CTR007\",\n              \"Placa\":\"MNQ177A\"\n            },\n            {\n              \"SubTipoRem\":\"CTR007\",\n              \"Placa\":\"RPQ322Y\"\n            }\n          ]\n        }\n      },\n      \"FiguraTransporte\":[\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"GOLJ860719Q32\",\n          \"NumLicencia\": \"78411134546\",\n          \"NombreFigura\": \"ANTONIO AGUIRRE\",\n          \"NumRegIdTribFigura\": \"\",\n          \"ResidenciaFiscalFigura\": \"\"\n        }\n      ]\n    }\n  }\n}\n\n</code></pre>\n<h2 id=\"cfdi-40-traslado-con-complemento-de-carta-porte-versión-20-autotransporte\">CFDI 4.0: Traslado con Complemento de Carta Porte versión 2.0 (Autotransporte)</h2>\n<blockquote>\n<p>IMPORTANTE: El comprobante de Traslado (TipoDeComprobante = T) se utiliza exclusivamente para trasladar o \"mover\" mercancía de un lugar a otro, sin realizar algún cobro de esta mercancía en el mismo documento, por lo tanto, todos los valores deben declararse en CEROS. Es decir, no se considera como una Factura o como una venta, sino como un documento para amparar la posesión de la mercancía.</p>\n<p>Puedes utilizar este tipo de comprobante T por ejemplo cuando muevas mercancía de tu planta de producción a tus almacenes o centros de distribución.</p>\n<p>En este tipo de comprobante, eliminamos todos los nodos que tengan impuestos, métodos de pago, forma de pago, y la moneda se define como XXX. De esta forma, entendemos que es un comprobante que no representa venta o ingreso alguno para el emisor.</p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\":\"4.0\",\n  \"Exportacion\":\"01\",\n  \"Serie\": \"TR-INTERNAL\",\n  \"Folio\": \"508\",\n  \"Fecha\": \"2021-11-25T12:00:00\",\n  \"FormaPago\": \"99\",\n  \"SubTotal\": \"0\",\n  \"Moneda\": \"XXX\",\n  \"Total\": \"0\",\n  \"TipoDeComprobante\": \"T\",\n  \"LugarExpedicion\": \"32417\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n      \"Rfc\":\"NDI120326HF5\",\n      \"Nombre\":\"NOVATECH DIGITAL\",\n      \"ResidenciaFiscal\":null,\n      \"NumRegIdTrib\":null,\n      \"UsoCFDI\":\"G03\",\n      \"Calle\":\"Palmas\",\n      \"NoExt\":null,\n      \"NoInt\":null,\n      \"Colonia\":\"Anahuac\",\n      \"Localidad\":null,\n      \"Referencia\":null,\n      \"Municipio\":\"Apodaca\",\n      \"Estado\":\"Nuevo Leon\",\n      \"Pais\":\"Mexico\",\n      \"CodigoPostal\":\"66265\",\n      \"DomicilioFiscalReceptor\":\"66265\",\n      \"RegimenFiscalReceptor\":\"601\"\n  },\n  \"Conceptos\": [\n    {\n      \"ClaveProdServ\": \"78101500\",\n      \"NoIdentificacion\": null,\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ZZ\",\n      \"Unidad\": \"\",\n      \"Descripcion\": \"TRASLADO DE MERCANCIA DE BODEGA SANTA CATARINA A CEDIS BLVD. ACAPULCO\",\n      \"ValorUnitario\": \"0\",\n      \"Importe\": \"0\"\n    }\n  ],\n  \"Complemento\": {\n    \"CartaPorte20\": {\n      \"Version\": \"2.0\",\n      \"TranspInternac\": \"No\",\n      \"TotalDistRec\": \"20\",\n      \"Ubicaciones\": [\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000001\",\n          \"RFCRemitenteDestinatario\": \"SAOA890320M87\",\n          \"NombreRemitenteDestinatario\": \"Ermenegildo Zegna\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T12:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"\",\n          \"Domicilio\": {\n            \"Calle\": \"\",\n            \"NumeroExterior\": \"\",\n            \"NumeroInterior\": \"\",\n            \"Colonia\": \"\",\n            \"Localidad\": \"07\",\n            \"Referencia\": \"\",\n            \"Municipio\": \"039\",\n            \"Estado\": \"NLE\",\n            \"Pais\": \"MEX\",\n            \"CodigoPostal\": \"64830\"\n          }\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000001\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"Home&amp;Garden Company\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T16:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"10\"\n        },\n        {\n          \"TipoUbicacion\": \"Origen\",\n          \"IDUbicacion\": \"OR000002\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"Home&amp;Garden Company\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T16:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"\"\n        },\n        {\n          \"TipoUbicacion\": \"Destino\",\n          \"IDUbicacion\": \"DE000002\",\n          \"RFCRemitenteDestinatario\": \"XAXX010101000\",\n          \"NombreRemitenteDestinatario\": \"RESTAURANTE EL FAISAN\",\n          \"NumRegIdTrib\": \"\",\n          \"ResidenciaFiscal\": \"\",\n          \"NumEstacion\": \"\",\n          \"NombreEstacion\": \"\",\n          \"NavegacionTrafico\": \"\",\n          \"FechaHoraSalidaLlegada\": \"2021-11-25T16:00:00\",\n          \"TipoEstacion\": \"\",\n          \"DistanciaRecorrida\": \"10\"\n        }\n      ],\n      \"Mercancias\": {\n        \"PesoBrutoTotal\": \"150.00\",\n        \"UnidadPeso\": \"LTR\",\n        \"PesoNetoTotal\": \"160.00\",\n        \"NumTotalMercancias\": \"1\",\n        \"CargoPorTasacion\": \"12.50\",\n        \"Mercancia\": [\n          {\n            \"BienesTransp\": \"10216100\",\n            \"ClaveSTCC\": \"887791\",\n            \"Descripcion\": \"Plantas exóticas - Estrella de Belén viva\",\n            \"Cantidad\": \"180\",\n            \"ClaveUnidad\": \"H87\",\n            \"Unidad\": \"PIEZAS\",\n            \"Dimensiones\": \"30/40/30cm\",\n            \"MaterialPeligroso\":\"\",\n            \"CveMaterialPeligroso\": \"\",\n            \"Embalaje\": \"\",\n            \"DescripEmbalaje\": \"Emplayado\",\n            \"PesoEnKg\": \"150.00\",\n            \"ValorMercancia\": \"\",\n            \"Moneda\": \"MXN\",\n            \"FraccionArancelaria\": \"\",\n            \"UUIDComercioExt\":\"\",\n            \"Pedimentos\":[],\n            \"GuiasIdentificacion\":[],\n            \"CantidadTransporta\":[\n              {\n                \"Cantidad\": \"1.000\",\n                \"IDOrigen\": \"OR000001\",\n                \"IDDestino\": \"DE000001\",\n                \"CvesTransporte\": \"\"\n              },\n              {\n                \"Cantidad\": \"1.000\",\n                \"IDOrigen\": \"OR000002\",\n                \"IDDestino\": \"DE000002\",\n                \"CvesTransporte\": \"\"\n              }\n            ]\n          }\n        ],\n        \"Autotransporte\": {\n          \"PermSCT\":\"TPAF01\",\n          \"NumPermisoSCT\": \"1345648745\",\n          \"IdentificacionVehicular\": {\n            \"ConfigVehicular\": \"VL\",\n            \"PlacaVM\": \"RPK516A\",\n            \"AnioModeloVM\": \"2021\"\n          },\n          \"Seguros\": {\n            \"AseguraRespCivil\": \"GNP SEGUROS\",\n            \"PolizaRespCivil\": \"7174005154\",\n            \"AseguraMedAmbiente\": \"QUALITAS\",\n            \"PolizaMedAmbiente\": \"000004848725411\",\n            \"AseguraCarga\": \"GNP SEGUROS CARGA\",\n            \"PolizaCarga\": \"00019008787\",\n            \"PrimaSeguro\": \"850000.00\"\n          },\n          \"Remolques\":[\n            {\n              \"SubTipoRem\":\"CTR007\",\n              \"Placa\":\"MNQ177A\"\n            },\n            {\n              \"SubTipoRem\":\"CTR007\",\n              \"Placa\":\"RPQ322Y\"\n            }\n          ]\n        }\n      },\n      \"FiguraTransporte\":[\n        {\n          \"TipoFigura\": \"01\",\n          \"RFCFigura\": \"GOLJ860719Q32\",\n          \"NumLicencia\": \"78411134546\",\n          \"NombreFigura\": \"ANTONIO AGUIRRE\",\n          \"NumRegIdTribFigura\": \"\",\n          \"ResidenciaFiscalFigura\": \"\"\n        }\n      ]\n    }\n  }\n}\n\n</code></pre>\n<h1 id=\"timbrado-cfdi-40\">Timbrado CFDI 4.0</h1>\n<h4 id=\"introducción-1\">Introducción</h4>\n<p>Para esta nueva versión disponible a partir del 1 de Enero de 2022, tenemos algunos cambios importantes que mencionaremos a continuación.</p>\n<blockquote>\n<p><strong>IMPORTANTE:</strong> Los endpoints y métodos se mantienen tanto para la versión 3.3 como para la versión 4.0, solo se añaden elementos y atributos para indicar a la API que se requiere una versión 4.0.</p>\n<p><strong>Si ya timbras en 3.3 desde nuestra API, solo deberás modificar el contenido de tu JSON.</strong></p>\n</blockquote>\n<h1 id=\"¿ya-timbras-en-versión-33\">¿YA TIMBRAS EN VERSIÓN 3.3?</h1>\n<h2 id=\"te-compartimos-paso-a-paso-las-modificaciones-que-debes-hacer-en-tu-json\">Te compartimos paso a paso, las modificaciones que debes hacer en tu JSON.</h2>\n<blockquote>\n<p><strong>¡No es necesario que actualices tu conexión o que cambies a la API v5. Simplemente actualiza los datos de tu JSON y listo!</strong></p>\n</blockquote>\n<h4 id=\"nodonivel-raíz\"><strong>Nodo/nivel RAÍZ:</strong></h4>\n<ol>\n<li>Agregar atributo <strong>Version</strong> con el valor fijo \"4.0\". Ej. <strong>\"Version\" : \"4.0\".</strong></li>\n<li>Agregar atributo <strong>Exportacion</strong> con el valor de acuerdo al catálogo c_Exportacion.</li>\n</ol>\n<h4 id=\"nodo-emisor\"><strong>Nodo Emisor:</strong></h4>\n<ol>\n<li>El atributo <strong>Nombre</strong> ahora es obligatorio, y deberá coincidir exactamente con el registro que tenga el emisor ante el Registro Federal de Contribuyentes.</li>\n</ol>\n<h4 id=\"nodo-receptor\"><strong>Nodo Receptor:</strong></h4>\n<ol>\n<li>El atributo <strong>Nombre</strong> ahora es obligatorio, y deberá coincidir exactamente con el registro que tenga el emisor ante el Registro Federal de Contribuyentes.</li>\n<li>Agregar atributo <strong>DomicilioFiscalReceptor</strong> con el valor del código postal del domicilio del receptor. Ej. <strong>\"DomicilioFiscalReceptor\":\"64000\"</strong></li>\n<li>Agregar atributo <strong>RegimenFiscalReceptor</strong> con el valor de la clave del Régimen Fiscal, de acuerdo al que el contribuyente receptor aplicará al efecto fiscal de este comprobante.</li>\n</ol>\n<h4 id=\"nodo-conceptos\"><strong>Nodo Conceptos:</strong></h4>\n<ol>\n<li>Agregar atributo <strong>ObjetoImp</strong>, en donde se expresará si la operación comercial es objeto o no de impuestos.</li>\n</ol>\n<h4 id=\"nodo-impuestos\"><strong>Nodo Impuestos:</strong></h4>\n<ol>\n<li>Agregar atributo <strong>Base</strong> dentro del nodo <strong>Impuestos.Traslados</strong>, tal como lo haces para los traslados del concepto.</li>\n</ol>\n<h1 id=\"cfdi-40-factura-de-ingreso\">CFDI 4.0: Factura de INGRESO</h1>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n   \"Version\":\"4.0\",\n   \"Exportacion\":\"01\",\n   \"Serie\":\"F\",\n   \"Folio\":\"987750\",\n   \"Fecha\":\"AUTO\",\n   \"FormaPago\":\"01\",\n   \"CondicionesDePago\":\"CONDICIONES\",\n   \"SubTotal\":\"200.00\",\n   \"Descuento\":null,\n   \"Moneda\":\"MXN\",\n   \"TipoCambio\":1,\n   \"Total\":\"232.00\",\n   \"TipoDeComprobante\":\"E\",\n   \"MetodoPago\":\"PUE\",\n   \"LugarExpedicion\":\"67150\",\n   \"extra1\":\"info extra 1\",\n   \"extra2\":\"info extra 2\",\n   \"extra3\":\"info extra 3\",\n   \"extra15\":\"info extra 15\",\n   \"extra30\":\"info extra 30\",\n   \"LeyendaFolio\":\"FACTURA\",\n   \"Emisor\":{\n      \"RegimenFiscal\":\"612\"\n   },\n   \"Receptor\":{\n      \"Rfc\":\"NDI120326HF5\",\n      \"Nombre\":\"NOVATECH DIGITAL\",\n      \"ResidenciaFiscal\":null,\n      \"NumRegIdTrib\":null,\n      \"UsoCFDI\":\"G03\",\n      \"Calle\":\"Palmas\",\n      \"NoExt\":null,\n      \"NoInt\":null,\n      \"Colonia\":\"Anahuac\",\n      \"Localidad\":null,\n      \"Referencia\":null,\n      \"Municipio\":\"Apodaca\",\n      \"Estado\":\"Nuevo Leon\",\n      \"Pais\":\"Mexico\",\n      \"CodigoPostal\":\"66265\",\n      \"DomicilioFiscalReceptor\":\"66265\",\n      \"RegimenFiscalReceptor\":\"601\"\n   },\n   \"Conceptos\":[\n      {\n         \"ObjetoImp\":\"02\",\n         \"ClaveProdServ\":\"01010101\",\n         \"NoIdentificacion\":\"01\",\n         \"Cantidad\":1,\n         \"ClaveUnidad\":\"ZZ\",\n         \"Unidad\":\"Pieza\",\n         \"Descripcion\":\"Mezcal Oaxaca\",\n         \"ValorUnitario\":\"200.00\",\n         \"Importe\":\"200.00\",\n         \"Descuento\":null,\n         \"extra1\":\"dato extra 1\",\n         \"extra5\":\"dato extra 5\",\n         \"extra10\":\"dato extra 10\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"200.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"32.00\"\n               }\n            ]\n         }\n      }\n   ],\n   \"Impuestos\":{\n      \"TotalImpuestosTrasladados\":\"32.00\",\n      \"Traslados\":[\n         {\n            \"Base\":\"200.00\",\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"32.00\"\n         }\n      ]\n   }\n}\n\n</code></pre>\n<h1 id=\"cfdi-40-json-factura-público-en-general-ingreso\">CFDI 4.0: JSON Factura PÚBLICO EN GENERAL INGRESO</h1>\n<p>Para la versión CFDI 4.0, tenemos nuevas reglas para emitir el CFDI de público en general, las cuales enumeraremos a continuación y deberás seguirlas al pié de la letra.</p>\n<h4 id=\"reglas-para-emitir-cfdi-40-público-en-general\">REGLAS PARA EMITIR CFDI 4.0 PÚBLICO EN GENERAL:</h4>\n<ol>\n<li><strong>El Receptor.RFC debe ser: XAXX010101000</strong></li>\n<li><strong>El Receptor.Nombre debe ser: PÚBLICO EN GENERAL</strong> <em><strong>(NO OMITAS EL ACENTO EN LA Ú)</strong></em></li>\n<li><strong>El Receptor.DomicilioFiscalReceptor debe ser el mismo que LugarExpedición</strong></li>\n<li><strong>El Receptor.UsoCFDI debe ser: S01</strong></li>\n<li><strong>El Receptor.RegimenFiscalReceptor debe ser: 616</strong></li>\n</ol>\n<h1 id=\"cfdi-40-json-factura-global-ingreso\">CFDI 4.0: JSON Factura Global INGRESO</h1>\n<p>En la factura global se incorpora un nuevo nodo llamado \"InformacionGlobal\", que contiene la información de los períodos que considera este ingreso del público en general.</p>\n<p>Dentro del nuevo nodo \"InformacionGlobal\", encontraremos los siguientes atributos:</p>\n<p><strong>\"Periodicidad\":</strong> Campo requerido para registrar el período al que corresponde<br />la información del comprobante global.<br />Cuando el valor de este campo sea “05” el campo RegimenFiscal<br />debe ser “621”.</p>\n<p><strong>\"Meses\":</strong> Se debe registrar la clave del mes o los meses al que<br />corresponde la información de las operaciones celebradas con<br />el público en general, las distintas claves vigentes se encuentran<br />incluidas en el catálogo c_Meses.</p>\n<blockquote>\n<p>Cuando el valor del campo Periodicidad sea “05”, este<br />campo debe contener alguno de los valores “13”, “14”, “15”,<br />“16”, “17” o “18”.</p>\n</blockquote>\n<blockquote>\n<p>Si el campo Periodicidad contiene un valor diferente de<br />“05”, este campo debe contener alguno de los valores<br />“01”, “02”, “03”, “04”, “05”, “06”, “07”, “08”, “09”, “10”, “11” o “12”.</p>\n</blockquote>\n<p><strong>\"Año\":</strong> Se debe registrar el año al que corresponde la información del<br />comprobante global.</p>\n<blockquote>\n<p>El valor registrado debe ser igual al año en curso o al año<br />inmediato anterior considerando el registrado en la<br />Fecha de emisión del comprobante.</p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n   \"Version\":\"4.0\",\n   \"Exportacion\":\"01\",\n   \"Serie\":\"F\",\n   \"Folio\":\"987750\",\n   \"Fecha\":\"AUTO\",\n   \"FormaPago\":\"01\",\n   \"SubTotal\":\"200.00\",\n   \"Descuento\":null,\n   \"Moneda\":\"MXN\",\n   \"TipoCambio\":1,\n   \"Total\":\"232.00\",\n   \"TipoDeComprobante\":\"E\",\n   \"MetodoPago\":\"PUE\",\n   \"LugarExpedicion\":\"67150\",\n   \"LeyendaFolio\":\"FACTURA GLOBAL\",\n   \"Emisor\":{\n      \"RegimenFiscal\":\"612\"\n   },\n   \"Receptor\":{\n      \"Rfc\":\"NDI120326HF5\",\n      \"Nombre\":\"NOVATECH DIGITAL\",\n      \"ResidenciaFiscal\":null,\n      \"NumRegIdTrib\":null,\n      \"UsoCFDI\":\"G03\",\n      \"Calle\":\"Palmas\",\n      \"NoExt\":null,\n      \"NoInt\":null,\n      \"Colonia\":\"Anahuac\",\n      \"Localidad\":null,\n      \"Referencia\":null,\n      \"Municipio\":\"Apodaca\",\n      \"Estado\":\"Nuevo Leon\",\n      \"Pais\":\"Mexico\",\n      \"CodigoPostal\":\"66265\",\n      \"DomicilioFiscalReceptor\":\"66265\",\n      \"RegimenFiscalReceptor\":\"601\"\n   },\n   \"InformacionGlobal\": {\n      \"Periodicidad\": \"01\",\n      \"Meses\": \"05\",\n      \"Año\": \"2022\"\n   }\n   \"Conceptos\":[\n      {\n         \"ObjetoImp\":\"02\",\n         \"ClaveProdServ\":\"01010101\",\n         \"NoIdentificacion\":\"01\",\n         \"Cantidad\":1,\n         \"ClaveUnidad\":\"ZZ\",\n         \"Unidad\":\"Pieza\",\n         \"Descripcion\":\"Mezcal Oaxaca\",\n         \"ValorUnitario\":\"200.00\",\n         \"Importe\":\"200.00\",\n         \"Descuento\":null,\n         \"extra1\":\"dato extra 1\",\n         \"extra5\":\"dato extra 5\",\n         \"extra10\":\"dato extra 10\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"200.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"32.00\"\n               }\n            ]\n         }\n      }\n   ],\n   \"Impuestos\":{\n      \"TotalImpuestosTrasladados\":\"32.00\",\n      \"Traslados\":[\n         {\n            \"Base\":\"200.00\",\n            \"Impuesto\":\"002\",\n            \"TipoFactor\":\"Tasa\",\n            \"TasaOCuota\":\"0.160000\",\n            \"Importe\":\"32.00\"\n         }\n      ]\n   }\n}\n\n</code></pre>\n<h2 id=\"preguntas-frecuentes-para-cfdi-40\">Preguntas frecuentes para CFDI 4.0</h2>\n<h4 id=\"¿cuándo-empieza-la-vigencia-de-la-versión-40-de-la-factura-electrónica\">¿Cuándo empieza la vigencia de la versión 4.0 de la Factura electrónica?</h4>\n<p>A partir del 1 de enero de 2022 entra en vigor la versión 4.0 del CFDI, existiendo un periodo de convivencia entre la versión 3.3 y la versión 4.0 el cual comprende del 1 de enero al 30 de abril de 2022.</p>\n<h4 id=\"¿cuáles-son-los-datos-mínimos-que-debo-conocer-de-mi-cliente-para-emitirle-la-factura\">¿Cuáles son los datos mínimos que debo conocer de mi cliente para emitirle la factura?</h4>\n<p>Los datos mínimos, que deberás conocer de tu cliente para emitir su factura son: RFC, nombre o denominación o razón social, régimen fiscal y código postal de su domicilio fiscal.</p>\n<h4 id=\"¿me-podrán-emitir-facturas-aunque-no-conozca-mi-régimen-fiscal\">¿Me podrán emitir facturas, aunque no conozca mi régimen fiscal?</h4>\n<p>Únicamente se podrá emitir la factura electrónica si el receptor proporciona su régimen fiscal ya que dicha información es obligatoria.</p>\n<h4 id=\"¿si-realizo-facturas-globales-tengo-que-poner-los-datos-de-que-período-corresponde\">¿Si realizo facturas globales, tengo que poner los datos de que período corresponde?</h4>\n<p>Sí, para efectos de emitir la factura global se deberá señalar la información correspondiente a la periodicidad, mes o meses y año.</p>\n<h4 id=\"voy-a-realizar-una-exportación-temporal-¿debo-registrar-el-campo-exportación\">Voy a realizar una exportación temporal, ¿Debo registrar el campo exportación?</h4>\n<p>Sí, se debe señalar \"Si aplica\" en el campo \"Exportación\".</p>\n<h1 id=\"ejemplo-complemento-de-pagos-20\">Ejemplo Complemento de Pagos 2.0</h1>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"4.0\",\n  \"Exportacion\": \"01\",\n  \"Serie\": \"PAYMENT\",\n  \"Folio\": 8019,\n  \"Fecha\": \"AUTO\",\n  \"SubTotal\": \"0\",\n  \"Moneda\": \"XXX\",\n  \"Total\": \"0\",\n  \"TipoDeComprobante\": \"P\",\n  \"LugarExpedicion\": \"67150\",\n  \"LeyendaFolio\": \"COMPROBANTE DE PAGO\",\n  \"Emisor\": {\n    \"RegimenFiscal\": \"612\"\n  },\n  \"Receptor\": {\n    \"Rfc\": \"NDI120326HF5\",\n    \"Nombre\": \"NOVATECH DIGITAL\",\n    \"ResidenciaFiscal\": null,\n    \"NumRegIdTrib\": null,\n    \"UsoCFDI\": \"CP01\",\n    \"DomicilioFiscalReceptor\": \"66265\",\n    \"RegimenFiscalReceptor\": \"601\",\n    \"Calle\": \"Palmas\",\n    \"NoExt\": \"9810\",\n    \"NoInt\": null,\n    \"Colonia\": \"Anahuac\",\n    \"Municipio\": \"Apodaca\",\n    \"Estado\": \"Nuevo Leon\",\n    \"Pais\": \"México\",\n    \"CodigoPostal\": \"67349\"\n  },\n  \"Conceptos\": [\n    {\n      \"ObjetoImp\": \"01\",\n      \"ClaveProdServ\": \"84111506\",\n      \"Cantidad\": \"1\",\n      \"ClaveUnidad\": \"ACT\",\n      \"Descripcion\": \"Pago\",\n      \"ValorUnitario\": \"0\",\n      \"Importe\": \"0\",\n      \"Descuento\": null\n    }\n  ],\n  \"Complemento\": {\n    \"Pagos20\": {\n      \"Totales\": {\n        \"TotalRetencionesIVA\": \"\",\n        \"TotalRetencionesISR\": \"\",\n        \"TotalRetencionesIEPS\": \"\",\n        \"TotalTrasladosBaseIVA16\": \"\",\n        \"TotalTrasladosImpuestoIVA16\": \"\",\n        \"TotalTrasladosBaseIVA8\": \"\",\n        \"TotalTrasladosImpuestoIVA8\": \"\",\n        \"TotalTrasladosBaseIVA0\": \"\",\n        \"TotalTrasladosImpuestoIVA0\": \"\",\n        \"TotalTrasladosBaseIVAExento\": \"\",\n        \"MontoTotalPagos\": \"1000.00\"\n      },\n      \"Pago\": [\n        {\n          \"FechaPago\": \"2022-05-12T12:00:00\",\n          \"FormaDePagoP\": \"02\",\n          \"MonedaP\": \"MXN\",\n          \"TipoCambioP\": \"1\",\n          \"Monto\": \"1000.00\",\n          \"NumOperacion\": \"\",\n          \"RfcEmisorCtaOrd\": \"\",\n          \"NomBancoOrdExt\": \"\",\n          \"CtaOrdenante\": \"\",\n          \"RfcEmisorCtaBen\": \"\",\n          \"CtaBeneficiario\": \"\",\n          \"TipoCadPago\": \"\",\n          \"CertPago\": \"\",\n          \"CadPago\": \"\",\n          \"SelloPago\": \"\",\n          \"DoctoRelacionado\": [\n            {\n              \"IdDocumento\": \"31FBF471-DCFD-46A5-B235-CADD520A9CC0\",\n              \"Serie\": \"A\",\n              \"Folio\": \"23205\",\n              \"MonedaDR\": \"MXN\",\n              \"EquivalenciaDR\": \"1\",\n              \"NumParcialidad\": \"1\",\n              \"ImpSaldoAnt\": \"2499.80\",\n              \"ImpPagado\": \"100.00\",\n              \"ImpSaldoInsoluto\": \"2399.80\",\n              \"ObjetoImpDR\": \"01\",\n              \"ImpuestosDR\": {\n                \"RetencionesDR\": [\n                  {\n                    \"BaseDR\": \"\",\n                    \"ImpuestoDR\": \"\",\n                    \"TipoFactorDR\": \"\",\n                    \"TasaOCuotaDR\": \"\",\n                    \"ImporteDR\": \"\"\n                  }\n                ],\n                \"TrasladosDR\": [\n                  {\n                    \"BaseDR\": \"\",\n                    \"ImpuestoDR\": \"\",\n                    \"TipoFactorDR\": \"\",\n                    \"TasaOCuotaDR\": \"\",\n                    \"ImporteDR\": \"\"\n                  }\n                ]\n              }\n            },\n            {\n              \"IdDocumento\": \"31FBF471-DCFD-46A5-B235-CADD520A9CC0\",\n              \"Serie\": \"A\",\n              \"Folio\": \"23205\",\n              \"MonedaDR\": \"MXN\",\n              \"EquivalenciaDR\": \"1\",\n              \"NumParcialidad\": \"1\",\n              \"ImpSaldoAnt\": \"2499.80\",\n              \"ImpPagado\": \"100.00\",\n              \"ImpSaldoInsoluto\": \"2399.80\",\n              \"ObjetoImpDR\": \"01\"\n            }\n          ],\n          \"ImpuestosP\": {\n            \"RetencionesP\": [\n              {\n                \"ImpuestoP\": \"\",\n                \"ImporteP\": \"\"\n              }\n            ],\n            \"TrasladosP\": [\n              {\n                \"BaseP\": \"\",\n                \"ImpuestoP\": \"\",\n                \"TipoFactorP\": \"\",\n                \"TasaOCuotaP\": \"\",\n                \"ImporteP\": \"\"\n              }\n            ]\n          }\n        }\n      ]\n    }\n  }\n}\n\n</code></pre>\n<h2 id=\"¿requieres-más-ejemplos\">¿Requieres más ejemplos?</h2>\n<p>Solicítanos ejemplos de cualquier CFDI como complementos de pago, notas de crédito, nomina, recibos de retención, etc. Escríbenos a <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n","urlObject":{"path":["invoice","create"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"3fa935be-f410-4302-bd2b-d8f6cf1dd292"},{"name":"Crear CFDI de Retenciones","id":"9f8eea85-e305-4b36-b766-bdde9b62e9e8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n  \"Version\": \"2.0\",\n  \"FolioInt\": \"423\",\n  \"FechaExp\": \"2026-01-01T08:11:55\",\n  \"LugarExpRetenc\": \"45110\",\n  \"CveRetenc\": \"01\",\n  \"Emisor\": {\n    \"RfcE\": \"NDI120326HF5\",\n    \"NomDenRazSocE\": \"NOVATECH DIGITAL\",\n    \"RegimenFiscalE\": \"601\"\n  },\n  \"Receptor\": {\n    \"NacionalidadR\": \"Nacional\",\n    \"Nacional\": {\n      \"RfcR\": \"ICO010412AZ3\",\n      \"NomDenRazSocR\": \"INDISTRIA CHOCOLATES DE EUROPA\",\n      \"DomicilioFiscalR\": \"29960\"\n    }\n  },\n  \"Periodo\": {\n    \"MesIni\": \"02\",\n    \"MesFin\": \"03\",\n    \"Ejercicio\": \"2023\"\n  },\n  \"Totales\": {\n    \"MontoTotOperacion\": \"2000.00\",\n    \"MontoTotGrav\": \"2000.00\",\n    \"MontoTotExent\": \"0\",\n    \"MontoTotRet\": \"580.00\",\n    \"ImpRetenidos\": [\n      {\n        \"BaseRet\": \"2000\",\n        \"ImpuestoRet\": \"002\",\n        \"MontoRet\": \"290.00\",\n        \"TipoPagoRet\": \"01\"\n      },\n      {\n        \"BaseRet\": \"2000\",\n        \"ImpuestoRet\": \"001\",\n        \"MontoRet\": \"290.00\",\n        \"TipoPagoRet\": \"03\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"Dividendos\": {\n      \"Version\": \"1.0\",\n      \"DividOUtil\": {\n        \"CveTipDivOUtil\": \"01\",\n        \"MontISRAcredRetMexico\": \"74000\",\n        \"MontISRAcredRetExtranjero\": \"0\",\n        \"TipoSocDistrDiv\": \"Sociedad Nacional\",\n        \"MontISRAcredNal\": \"31714\",\n        \"MontDivAcumNal\": \"105714\"\n      }\n    }\n  }\n}","description":"<p>Cadena JSON con los datos del CFDI de Retenciones y Pagos que deseas timbrar. Puedes solicitarnos ejemplos de la estructura de este JSON en <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n","type":"text"}]},"url":"{{URI}}/invoice/retention","description":"<h1 id=\"crear-un-cfdi-de-retenciones-y-pagos-20\">Crear un CFDI de Retenciones y Pagos 2.0</h1>\n<p>El CFDI de Retenciones y Pagos 2.0, es un Comprobante que avala las retenciones de los impuestos que se efectúan o por los pagos realizados <br />incluyendo que estos sean residentes en el extranjero.</p>\n<p>Ejemplo de un XML de Retención Nacional:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-xml\">&lt;retenciones:Retenciones xsi:schemaLocation=\"http://www.sat.gob.mx/esquemas/retencionpago/2 http://www.sat.gob.mx/esquemas/retencionpago/2/retencionpagov2.xsd\" Version=\"2.0\" FolioInt=\"9\" Sello=\"PFW5wnqRxImACutnhT2fKDYa8Lmr7KjonndvWsj5mLD92sZW6f9bYKNmIS+kpaHFWve5EDxr5NYD77HJg7wD6HvT0cLzPFhY4gT6VN3PuZ69vdWSftGcUH+Jc7pM2/BsBIrpykDE6EzLjsA9h+Blsa9xod1H5DRnMDO6HK4OK1qA3nXOXv2xX2z5WUwGAPt6c5Xz6ugjdCzTmMoLUPGk1I/aBi2ea1c5bRYeHkiWdnlVWSsvHorCPiBm7nfDqGQyjY4CwSpSLcAkcAO2YLtAhICEGb8gBrbqGCrjKzI5CvWjYT/TC6A42fz2iRbF8q5Y0bW9TN5x4sxBwfHohNh++w==\" NoCertificado=\"30001000000400002434\" Certificado=\"MIIFuzCCA6OgAwIBAgIUMzAwMDEwMDAwMDA0MDAwMDI0MzQwDQYJKoZIhvcNAQELBQAwggErMQ8wDQYDVQQDDAZBQyBVQVQxLjAsBgNVBAoMJVNFUlZJQ0lPIERFIEFETUlOSVNUUkFDSU9OIFRSSUJVVEFSSUExGjAYBgNVBAsMEVNBVC1JRVMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlvc2Nhci5tYXJ0aW5lekBzYXQuZ29iLm14MR0wGwYDVQQJDBQzcmEgY2VycmFkYSBkZSBjYWRpejEOMAwGA1UEEQwFMDYzNzAxCzAJBgNVBAYTAk1YMRkwFwYDVQQIDBBDSVVEQUQgREUgTUVYSUNPMREwDwYDVQQHDAhDT1lPQUNBTjERMA8GA1UELRMIMi41LjQuNDUxJTAjBgkqhkiG9w0BCQITFnJlc3BvbnNhYmxlOiBBQ0RNQS1TQVQwHhcNMTkwNjE3MTk0NDE0WhcNMjMwNjE3MTk0NDE0WjCB4jEnMCUGA1UEAxMeRVNDVUVMQSBLRU1QRVIgVVJHQVRFIFNBIERFIENWMScwJQYDVQQpEx5FU0NVRUxBIEtFTVBFUiBVUkdBVEUgU0EgREUgQ1YxJzAlBgNVBAoTHkVTQ1VFTEEgS0VNUEVSIFVSR0FURSBTQSBERSBDVjElMCMGA1UELRMcRUtVOTAwMzE3M0M5IC8gWElRQjg5MTExNlFFNDEeMBwGA1UEBRMVIC8gWElRQjg5MTExNk1HUk1aUjA1MR4wHAYDVQQLExVFc2N1ZWxhIEtlbXBlciBVcmdhdGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCN0peKpgfOL75iYRv1fqq+oVYsLPVUR/GibYmGKc9InHFy5lYF6OTYjnIIvmkOdRobbGlCUxORX/tLsl8Ya9gm6Yo7hHnODRBIDup3GISFzB/96R9K/MzYQOcscMIoBDARaycnLvy7FlMvO7/rlVnsSARxZRO8Kz8Zkksj2zpeYpjZIya/369+oGqQk1cTRkHo59JvJ4Tfbk/3iIyf4H/Ini9nBe9cYWo0MnKob7DDt/vsdi5tA8mMtA953LapNyCZIDCRQQlUGNgDqY9/8F5mUvVgkcczsIgGdvf9vMQPSf3jjCiKj7j6ucxl1+FwJWmbvgNmiaUR/0q4m2rm78lFAgMBAAGjHTAbMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgbAMA0GCSqGSIb3DQEBCwUAA4ICAQBcpj1TjT4jiinIujIdAlFzE6kRwYJCnDG08zSp4kSnShjxADGEXH2chehKMV0FY7c4njA5eDGdA/G2OCTPvF5rpeCZP5Dw504RZkYDl2suRz+wa1sNBVpbnBJEK0fQcN3IftBwsgNFdFhUtCyw3lus1SSJbPxjLHS6FcZZ51YSeIfcNXOAuTqdimusaXq15GrSrCOkM6n2jfj2sMJYM2HXaXJ6rGTEgYmhYdwxWtil6RfZB+fGQ/H9I9WLnl4KTZUS6C9+NLHh4FPDhSk19fpS2S/56aqgFoGAkXAYt9Fy5ECaPcULIfJ1DEbsXKyRdCv3JY89+0MNkOdaDnsemS2o5Gl08zI4iYtt3L40gAZ60NPh31kVLnYNsmvfNxYyKp+AeJtDHyW9w7ftM0Hoi+BuRmcAQSKFV3pk8j51la+jrRBrAUv8blbRcQ5BiZUwJzHFEKIwTsRGoRyEx96sNnB03n6GTwjIGz92SmLdNl95r9rkvp+2m4S6q1lPuXaFg7DGBrXWC8iyqeWE2iobdwIIuXPTMVqQb12m1dAkJVRO5NdHnP/MpqOvOgLqoZBNHGyBg4Gqm4sCJHCxA1c8Elfa2RQTCk0tAzllL4vOnI1GHkGJn65xokGsaU4B4D36xh7eWrfj4/pgWHmtoDAYa8wzSwo2GVCZOs+mtEgOQB91/g==\" FechaExp=\"2022-07-01T08:05:07\" LugarExpRetenc=\"45110\" CveRetenc=\"01\"\n    xmlns:retenciones=\"http://www.sat.gob.mx/esquemas/retencionpago/2\"\n    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"&gt;\n    &lt;retenciones:Emisor RfcE=\"EKU9003173C9\" NomDenRazSocE=\"ESCUELA KEMPER URGATE\" RegimenFiscalE=\"601\" /&gt;\n    &lt;retenciones:Receptor NacionalidadR=\"Nacional\"&gt;\n        &lt;retenciones:Nacional RfcR=\"URE180429TM6\" NomDenRazSocR=\"UNIVERSIDAD ROBOTICA ESPAÑOLA\" DomicilioFiscalR=\"65000\" /&gt;\n    &lt;/retenciones:Receptor&gt;\n    &lt;retenciones:Periodo MesIni=\"01\" MesFin=\"03\" Ejercicio=\"2021\" /&gt;\n    &lt;retenciones:Totales MontoTotOperacion=\"2000.00\" MontoTotGrav=\"2000.00\" MontoTotExent=\"0\" MontoTotRet=\"580.00\"&gt;\n        &lt;retenciones:ImpRetenidos BaseRet=\"2000\" ImpuestoRet=\"001\" MontoRet=\"580.00\" TipoPagoRet=\"03\" /&gt;\n    &lt;/retenciones:Totales&gt;\n&lt;/retenciones:Retenciones&gt;\n\n</code></pre>\n<h2 id=\"ejemplos-json\">Ejemplos JSON</h2>\n<h4 id=\"retención-receptor-nacional\">Retención Receptor Nacional:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"2.0\",\n  \"FolioInt\": \"9\",\n  \"FechaExp\": \"2022-07-01T08:05:07\",\n  \"LugarExpRetenc\": \"45110\",\n  \"CveRetenc\": \"01\",\n  \"Emisor\": {\n    \"RfcE\": \"EKU9003173C9\",\n    \"NomDenRazSocE\": \"ESCUELA KEMPER URGATE\",\n    \"RegimenFiscalE\": \"601\"\n  },\n  \"Receptor\": {\n    \"NacionalidadR\": \"Nacional\",\n    \"Nacional\": {\n      \"RfcR\": \"URE180429TM6\",\n      \"NomDenRazSocR\": \"UNIVERSIDAD ROBOTICA ESPAÑOLA\",\n      \"DomicilioFiscalR\": \"65000\"\n    }\n  },\n  \"Periodo\": {\n    \"MesIni\": \"01\",\n    \"MesFin\": \"03\",\n    \"Ejercicio\": \"2021\"\n  },\n  \"Totales\": {\n    \"MontoTotOperacion\": \"2000.00\",\n    \"MontoTotGrav\": \"2000.00\",\n    \"MontoTotExent\": \"0\",\n    \"MontoTotRet\": \"580.00\",\n    \"ImpRetenidos\": {\n      \"BaseRet\": \"2000\",\n      \"ImpuestoRet\": \"001\",\n      \"MontoRet\": \"580.00\",\n      \"TipoPagoRet\": \"03\"\n    }\n  }\n}\n\n</code></pre>\n<h4 id=\"retención-receptor-extranjero\">Retención Receptor Extranjero:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"2.0\",\n  \"FolioInt\": \"9\",\n  \"FechaExp\": \"2022-07-27T07:40:38\",\n  \"LugarExpRetenc\": \"45110\",\n  \"CveRetenc\": \"01\",\n  \"Emisor\": {\n    \"RfcE\": \"EKU9003173C9\",\n    \"NomDenRazSocE\": \"ESCUELA KEMPER URGATE\",\n    \"RegimenFiscalE\": \"601\"\n  },\n  \"Receptor\": {\n    \"NacionalidadR\": \"Extranjero\",\n    \"Extranjero\": {\n      \"NomDenRazSocR\": \"NOVATECH USA\"\n    }\n  },\n  \"Periodo\": {\n    \"MesIni\": \"01\",\n    \"MesFin\": \"03\",\n    \"Ejercicio\": \"2021\"\n  },\n  \"Totales\": {\n    \"MontoTotOperacion\": \"2000.00\",\n    \"MontoTotGrav\": \"2000.00\",\n    \"MontoTotExent\": \"0\",\n    \"MontoTotRet\": \"580.00\",\n    \"ImpRetenidos\": {\n      \"BaseRet\": \"2000\",\n      \"ImpuestoRet\": \"001\",\n      \"MontoRet\": \"580.00\",\n      \"TipoPagoRet\": \"03\"\n    }\n  }\n}\n\n</code></pre>\n<h4 id=\"retención-con-complemento-dividendos\">Retención con Complemento Dividendos:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"2.0\",\n  \"FolioInt\": \"9\",\n  \"FechaExp\": \"2022-07-01T08:11:55\",\n  \"LugarExpRetenc\": \"45110\",\n  \"CveRetenc\": \"01\",\n  \"Emisor\": {\n    \"RfcE\": \"EKU9003173C9\",\n    \"NomDenRazSocE\": \"ESCUELA KEMPER URGATE\",\n    \"RegimenFiscalE\": \"601\"\n  },\n  \"Receptor\": {\n    \"NacionalidadR\": \"Nacional\",\n    \"Nacional\": {\n      \"RfcR\": \"IIA040805DZ4\",\n      \"NomDenRazSocR\": \"INDISTRIA ILUMINADORA DE ALMACENES\",\n      \"DomicilioFiscalR\": \"29960\"\n    }\n  },\n  \"Periodo\": {\n    \"MesIni\": \"02\",\n    \"MesFin\": \"03\",\n    \"Ejercicio\": \"2021\"\n  },\n  \"Totales\": {\n    \"MontoTotOperacion\": \"2000.00\",\n    \"MontoTotGrav\": \"2000.00\",\n    \"MontoTotExent\": \"0\",\n    \"MontoTotRet\": \"580.00\",\n    \"ImpRetenidos\": [\n      {\n        \"BaseRet\": \"2000\",\n        \"ImpuestoRet\": \"002\",\n        \"MontoRet\": \"290.00\",\n        \"TipoPagoRet\": \"01\"\n      },\n      {\n        \"BaseRet\": \"2000\",\n        \"ImpuestoRet\": \"001\",\n        \"MontoRet\": \"290.00\",\n        \"TipoPagoRet\": \"03\"\n      }\n    ]\n  },\n  \"Complemento\": {\n    \"Dividendos\": {\n      \"Version\": \"1.0\",\n      \"DividOUtil\": {\n        \"CveTipDivOUtil\": \"01\",\n        \"MontISRAcredRetMexico\": \"74000\",\n        \"MontISRAcredRetExtranjero\": \"0\",\n        \"TipoSocDistrDiv\": \"Sociedad Nacional\",\n        \"MontISRAcredNal\": \"31714\",\n        \"MontDivAcumNal\": \"105714\"\n      }\n    }\n  }\n}\n\n</code></pre>\n<h4 id=\"retención-con-complemento-pagos-a-extranjeros\">Retención con Complemento Pagos a Extranjeros:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Version\": \"2.0\",\n  \"FolioInt\": \"9\",\n  \"FechaExp\": \"2022-06-20T08:05:07\",\n  \"LugarExpRetenc\": \"45110\",\n  \"CveRetenc\": \"01\",\n  \"Emisor\": {\n    \"RfcE\": \"EKU9003173C9\",\n    \"NomDenRazSocE\": \"ESCUELA KEMPER URGATE\",\n    \"RegimenFiscalE\": \"601\"\n  },\n  \"Receptor\": {\n    \"NacionalidadR\": \"Nacional\",\n    \"Nacional\": {\n      \"RfcR\": \"URE180429TM6\",\n      \"NomDenRazSocR\": \"UNIVERSIDAD ROBOTICA ESPAÑOLA\",\n      \"DomicilioFiscalR\": \"65000\"\n    }\n  },\n  \"Periodo\": {\n    \"MesIni\": \"01\",\n    \"MesFin\": \"03\",\n    \"Ejercicio\": \"2021\"\n  },\n  \"Totales\": {\n    \"MontoTotOperacion\": \"2000.00\",\n    \"MontoTotGrav\": \"2000.00\",\n    \"MontoTotExent\": \"0\",\n    \"MontoTotRet\": \"580.00\",\n    \"ImpRetenidos\": {\n      \"BaseRet\": \"2000\",\n      \"ImpuestoRet\": \"001\",\n      \"MontoRet\": \"580.00\",\n      \"TipoPagoRet\": \"03\"\n    }\n  },\n  \"Complemento\": {\n    \"Pagosaextranjeros\": {\n      \"Version\": \"1.0\",\n      \"EsBenefEfectDelCobro\": \"NO\",\n      \"NoBeneficiario\": {\n        \"PaisDeResidParaEfecFisc\": \"US\",\n        \"DescripcionConcepto\": \"Artistas, deportistas y espectáculos públicos\",\n        \"ConceptoPago\": \"1\"\n      }\n    }\n  }\n}\n\n</code></pre>\n","urlObject":{"path":["invoice","retention"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"9f8eea85-e305-4b36-b766-bdde9b62e9e8"},{"name":"Timbrar XML Base64","id":"2a2bf48f-8ddb-4339-986e-8d47ad4b7bbb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"description":"<p>String del XML sellado codificado en Base 64 (base64_encode)</p>\n","key":"xmlbase64","type":"text","value":"abcdeabcdeabcde... (convierte el string de tu xml a base64, y el resultado deberá ir aquí)"}]},"url":"{{URI}}/invoice/stampxml","description":"<p>Lee y valida un XML sellado (CSD), mismo que debe ser codificado en Base64 y devuelve el XML timbrado.</p>\n<p>Pasos para consumir este servicio:</p>\n<ol>\n<li>Genera tu XML basado en el estándar del SAT</li>\n<li>Valida tu XML contra los esquemas XSD oficiales del SAT</li>\n<li>Genera tu cadena original utilizando los XSLT oficiales del SAT</li>\n<li>Sella tu XML y extrae el contenido a formato string</li>\n<li>Convierte el string a base64 y envíalo a este método</li>\n</ol>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>curl --location 'https://sandbox-app.facturadigital.com.mx/api/v5/invoice/stampxml' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--header 'X-Api-Key: xxxxxxxxxxxxxxxxxxxxxxx' \\\n--data-urlencode 'xmlbase64=PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNmZGk6Q29tcHJvYmFudGUgeG1sbnM6Y2ZkaT0iaHR0cDovL3d3dy5zYXQuZ29iLm14L2NmZC8zIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiBWZXJzaW9uPSIzIiBGZWNoYT0iMjAyMS0'\n\n</code></pre>","urlObject":{"path":["invoice","stampxml"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"2a2bf48f-8ddb-4339-986e-8d47ad4b7bbb"},{"name":"Timbrar XML Multipart","id":"9852a7bf-8192-4f80-8b0d-eb92a4021ded","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"formdata","formdata":[{"key":"xml","description":"<p>Archivo XML previamente sellado (CSD). Utilizar Content-Type: multipart/form-data.</p>\n","type":"file","fileNotInWorkingDirectoryWarning":"This file isn't in your working directory. Teammates you share this request with won't be able to use this file. To make collaboration easier you can setup your working directory in Settings.","filesNotInWorkingDirectory":["/Users/novatech/Sites/pruebas_masivas_timbrado/xmls/ejemplo10000.xml"],"value":null}]},"url":"{{URI}}/invoice/stampxmlfile","description":"<p>Lee y valida un XML sellado (CSD), mismo que debe ser adjuntado utilizando el Header Content-Type: multipart/form-data y en el form 'xml=cfdi.xml'</p>\n<p>Pasos para consumir este servicio:</p>\n<ol>\n<li>Genera tu XML basado en el estándar del SAT</li>\n<li>Valida tu XML contra los esquemas XSD oficiales del SAT</li>\n<li>Genera tu cadena original utilizando los XSLT oficiales del SAT</li>\n<li>Sella tu XML y extrae el contenido a formato string</li>\n<li>Realiza la petición post utilizando form-data, la Key es \"xml\" y el valor será el archivo físico.</li>\n</ol>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>curl --location 'https://sandbox-app.facturadigital.com.mx/api/v5/invoice/stampxmlfile' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--header 'X-Api-Key: ••••••' \\\n--form 'xml=@\"/archivos/xmls/cfdi.xml\"'\n\n</code></pre>","urlObject":{"path":["invoice","stampxmlfile"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"9852a7bf-8192-4f80-8b0d-eb92a4021ded"},{"name":"Cancelar CFDI","id":"a927a626-df32-49be-a3d5-1bf7ba92d5e0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"},{"description":"<p>UUID folio fiscal to be cancelled.</p>\n","key":"uuid","name":"Content-Type","type":"text","value":"27B5022F-539C-4CE1-B695-7CA3EB42AF83"},{"key":"motivo","value":"01","description":"<p>Clave del motivo de la cancelación</p>\n","type":"text"},{"key":"foliosustitucion","value":"88A1288F-641C-1AB7-A112-1BA9FE99FF65","description":"<p>Folio Fiscal UUID del cfdi que está sustituyendo a esta cancelación, es decir, el correcto.</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/invoice/cancel","description":"<p>Cancela un CFDI por medio del UUID, Motivo y Folio Sustitución opcional.</p>\n<p>Parámetros en el header:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Header</strong></th>\n<th><strong>Descripción</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>uuid</td>\n<td>Folio Fiscal UUID a cancelar</td>\n</tr>\n<tr>\n<td>motivo</td>\n<td>Clave del motivo de la cancelación.  <br />  <br />Ver tabla inferior Motivos de cancelación</td>\n</tr>\n<tr>\n<td>foliosustitucion</td>\n<td>Folio Fiscal UUID del cfdi que está sustituyendo a esta cancelación, es decir, el correcto.  <br />  <br /><strong>Se debe mandar siempre que el motivo sea \"01\".</strong></td>\n</tr>\n</tbody>\n</table>\n</div><p>Tabla Motivos de Cancelación</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Clave</strong></th>\n<th><strong>Descripción</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>01</td>\n<td>Comprobante emitido con errores con relación</td>\n</tr>\n<tr>\n<td>02</td>\n<td>Comprobante emitido con errores sin relación</td>\n</tr>\n<tr>\n<td>03</td>\n<td>No se llevó a cabo la operación</td>\n</tr>\n<tr>\n<td>04</td>\n<td>Operación nominativa relacionada en una factura global</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["invoice","cancel"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"7bb31cfd-98ff-4850-9b0a-17f29f830faa","name":"Cancelar CFDI","originalRequest":{"method":"POST","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"},{"key":"uuid","value":"27B5022F-539C-4CE1-B695-7CA3EB42AF83","description":"UUID folio fiscal to be cancelled.","type":"text"},{"key":"motivo","value":"01","description":"Clave del motivo de la cancelación","type":"text"},{"key":"foliosustitucion","value":"88A1288F-641C-1AB7-A112-1BA9FE99FF65","description":"Folio Fiscal UUID del cfdi que está sustituyendo a esta cancelación, es decir, el correcto.","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/invoice/cancel"},"status":"Bad Request","code":400,"_postman_previewlanguage":null,"header":[{"key":"Server","value":"nginx/1.25.4"},{"key":"Date","value":"Fri, 06 Feb 2026 00:17:17 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"PHP/8.2.30"},{"key":"Set-Cookie","value":"novasess=08b45155b7e33adca040c38a4cce946f1c0ee337; expires=Fri, 06 Feb 2026 04:17:17 GMT; Max-Age=14400; path=/; HttpOnly; SameSite=Lax"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Invalid X-API-Key. Please make sure you're passing the X-API-Key in the Header. You can get your API Key through the account/authorize method.\",\n    \"code\": 501\n}"}],"_postman_id":"a927a626-df32-49be-a3d5-1bf7ba92d5e0"},{"name":"Cancelar CFDI Retenciones","id":"01e7632b-5abc-4424-b011-5934b02d3b7f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Api-Key","value":"TkRJMTIwMzI2SEY1LTk5N2MwOWU4LWIyODAtMTFlYi1iNmQxLTUyNTQwMGY4ZmM1ZA==","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"},{"key":"uuid","value":"88B1123F-539C-4CE1-B695-7CA3EB42AF83","description":"<p>UUID folio fiscal del CFDI de Retencionesto be cancelled.</p>\n","type":"text"},{"key":"motivo","value":"01","description":"<p>Clave del motivo de la cancelación</p>\n","type":"text"},{"key":"foliosustitucion","value":"99A9876F-641C-1AB7-A112-1BA9FE99FF65","description":"<p>Folio Fiscal UUID del cfdi de retención que está sustituyendo a esta cancelación, es decir, el correcto.</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/invoice/cancelretention","description":"<p>Servicio que permite cancelar facturas de retenciones e información de pagos por medio del UUID, Motivo y Folio Sustitución opcional.</p>\n<p>Parámetros en el header:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Header</strong></th>\n<th><strong>Descripción</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>uuid</td>\n<td>Folio Fiscal UUID a cancelar</td>\n</tr>\n<tr>\n<td>motivo</td>\n<td>Clave del motivo de la cancelación.  <br />  <br />Ver tabla inferior Motivos de cancelación</td>\n</tr>\n<tr>\n<td>foliosustitucion</td>\n<td>Folio Fiscal UUID del cfdi que está sustituyendo a esta cancelación, es decir, el correcto.  <br />  <br /><strong>Se debe mandar siempre que el motivo sea \"01\".</strong></td>\n</tr>\n</tbody>\n</table>\n</div><p>Tabla Motivos de Cancelación</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Clave</strong></th>\n<th><strong>Descripción</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>01</td>\n<td>Comprobante emitido con errores con relación</td>\n</tr>\n<tr>\n<td>02</td>\n<td>Comprobante emitido con errores sin relación</td>\n</tr>\n<tr>\n<td>03</td>\n<td>No se llevó a cabo la operación</td>\n</tr>\n<tr>\n<td>04</td>\n<td>Operación nominativa relacionada en una factura global</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["invoice","cancelretention"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"e547aca3-bfb9-41c3-af81-260c2c966d93","name":"Cancelar CFDI Retenciones","originalRequest":{"method":"POST","header":[{"key":"X-Api-Key","value":"TkRJMTIwMzI2SEY1LTk5N2MwOWU4LWIyODAtMTFlYi1iNmQxLTUyNTQwMGY4ZmM1ZA==","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"},{"key":"uuid","value":"88B1123F-539C-4CE1-B695-7CA3EB42AF83","description":"UUID folio fiscal del CFDI de Retencionesto be cancelled.","type":"text"},{"key":"motivo","value":"01","description":"Clave del motivo de la cancelación","type":"text"},{"key":"foliosustitucion","value":"99A9876F-641C-1AB7-A112-1BA9FE99FF65","description":"Folio Fiscal UUID del cfdi de retención que está sustituyendo a esta cancelación, es decir, el correcto.","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/invoice/cancelretention"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"Server","value":"nginx/1.25.4"},{"key":"Date","value":"Fri, 06 Feb 2026 00:19:09 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Vary","value":"Accept-Encoding"},{"key":"X-Powered-By","value":"PHP/8.2.30"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Content-Encoding","value":"gzip"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"CACFDI33 - Problemas con el xml. * CR1308 - Certificado revocado o caduco\",\n    \"code\": 33,\n    \"acuse\": \"\",\n    \"date\": \"2026-02-05 18:19:09\",\n    \"uuid\": \"88B1123F-539C-4CE1-B695-7CA3EB42AF83\",\n    \"uuid_estatus\": 33,\n    \"env_mode\": \"Sandbox\",\n    \"estatus_uuid\": null,\n    \"msg_error\": \"CACFDI33 - Problemas con el xml.\",\n    \"msg_error_detail\": \"CR1308 - Certificado revocado o caduco\"\n}"}],"_postman_id":"01e7632b-5abc-4424-b011-5934b02d3b7f"},{"name":"Envia CFDI por correo electrónico","id":"5af9f4e4-abaa-4f9c-a265-f60ed6e816de","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"},{"description":"<p>UUID folio fiscal que será enviado.</p>\n","key":"uuid","name":"Content-Type","type":"text","value":"27B5022F-539C-4CE1-B695-7CA3EB42AF83"},{"description":"<p>E-mails de los destinatarios. Puedes separar con comas.</p>\n","key":"recipient","type":"text","value":"soporte@facturadigital.com.mx"},{"description":"<p>E-mails para copias ocultas. Puedes separar con comas.</p>\n","key":"bcc","type":"text","value":"soporte@facturadigital.com.mx"},{"description":"<p>Mensaje a enviar. Puede contener HTML.</p>\n","key":"message","type":"text","value":"Hello, here's your invoice"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/invoice/send","description":"<p>Envía un CFDI por e-mail por UUID. Puedes enviar cualquier tipo de documento que contenga un UUID, por ejemplo facturas (ingreso), notas de crédito (egreso), complemento de pagos (pagos), nómina y traslado.</p>\n","urlObject":{"path":["invoice","send"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"5af9f4e4-abaa-4f9c-a265-f60ed6e816de"},{"name":"Obtener lista de CFDI","id":"9a350a8e-a944-465a-b326-9b3ec92fc194","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"},{"description":"<p>(Required) Tipo de documento (or Tipo de Comprobante). Posibles valores: I = Ingreso, E = Egreso, P = Pago, N = Nomina, T = Traslado.</p>\n","key":"Type","type":"text","value":"I"},{"description":"<p>(Required)</p>\n","key":"Month","type":"text","value":"06"},{"description":"<p>(Required)</p>\n","key":"Year","type":"text","value":"2020"}],"url":"{{URI}}/invoice/list","description":"<p>Obtiene la lista de todos los CFDIs generados por mes y año.</p>\n","urlObject":{"path":["invoice","list"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"9a350a8e-a944-465a-b326-9b3ec92fc194"},{"name":"Obtener lista de CFDI con todos los encabezados","id":"6be012b8-1b36-4f96-9b10-cc367fa27bac","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"},{"description":"<p>(Required) Tipo de documento (or Tipo de Comprobante). Posibles valores: I = Ingreso, E = Egreso, P = Pago, N = Nomina, T = Traslado.</p>\n","key":"Type","type":"text","value":"I"},{"description":"<p>(Required)</p>\n","key":"Month","type":"text","value":"09"},{"description":"<p>(Required)</p>\n","key":"Year","type":"text","value":"2020"}],"url":"{{URI}}/invoice/listextended","description":"<p>Obtiene la lista de todos los CFDIs generados por mes y año.</p>\n","urlObject":{"path":["invoice","listextended"],"host":["{{URI}}"],"query":[{"disabled":true,"key":"","value":null}],"variable":[]}},"response":[],"_postman_id":"6be012b8-1b36-4f96-9b10-cc367fa27bac"},{"name":"Obtener lista de pagos","id":"7ba7413b-a3be-464f-ac75-5b8a0cd1008f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"},{"key":"Customerrfc","value":"","description":"<p>(Optional) Filtrar pagos solo de este RFC (RFC Receptor)</p>\n","type":"text"},{"key":"Cfdiuuid","value":"","description":"<p>(Optional) Filtrar pagos por Factura UUID</p>\n","type":"text"},{"key":"Paymentuuid","value":"","description":"<p>(Optional) Filtrar pagos por Complemento Pago UUID</p>\n","type":"text"},{"key":"Invmonth","value":"","description":"<p>(Optional) Filtrar pagos por mes de factura</p>\n","type":"text"},{"key":"Invyear","value":"","description":"<p>(Optional) Filtrar pagos por año de factura</p>\n","type":"text"},{"key":"Paymonth","value":"","description":"<p>(Optional) Filtrar pagos por mes de pago</p>\n","type":"text"},{"key":"Payyear","value":"","description":"<p>(Optional) Filtrar pagos por año de pago</p>\n","type":"text"}],"url":"{{URI}}/invoice/listpayments","description":"<p>Obtiene la lista de los pagos aplicados (con y sin complemento de pagos), de un mes completo o bien, de una factura especifica.</p>\n","urlObject":{"path":["invoice","listpayments"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"7ba7413b-a3be-464f-ac75-5b8a0cd1008f"},{"name":"Obtener lista de CFDI con filtros","id":"506c2a87-3bcd-44b1-be6c-1fce188e40bb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"},{"description":"<p>(Required) Array filter.</p>\n","key":"Filters","type":"text","value":"{\"extra1\": \"123\"}"}],"url":"{{URI}}/invoice/listwithfilters","description":"<p>Obtiene la lista de todos los CFDIs generados con filtro por campo.\nEjemplo:</p>\n<p>== Headers ==\nEn los headers se debe asignar el JSON con el Key Name Filters {\n    \"extra1\" : \"123\",\n    \"extra2\" : \"456\"\n}</p>\n","urlObject":{"path":["invoice","listwithfilters"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"506c2a87-3bcd-44b1-be6c-1fce188e40bb"},{"name":"Obtener relaciones de un CFDI","id":"97bc325f-3fb4-43fb-8871-c67b7273d7fb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"},{"key":"Uuid","value":"6578df3e-6b3a-400f-8441-25164c494675","description":"<p>UUID del CFDI que se desea conocer sus relaciones padres-hijos.</p>\n","type":"text"}],"url":"{{URI}}/invoice/relations","description":"<p>Obtiene los CFDIs relacionados de un UUID dado.</p>\n","urlObject":{"path":["invoice","relations"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"76075882-bfac-4188-93b1-3fa46b8321a3","name":"Obtener relaciones de un CFDI","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"},{"key":"Uuid","value":"a7de99f9-c924-4247-b712-b3844b2c824d","description":"UUID del CFDI que se desea conocer sus relaciones padres-hijos.","type":"text"}],"url":"{{URI}}/invoice/relations"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 10 Jul 2024 23:21:54 GMT"},{"key":"Server","value":"Apache/2.4.54 (Unix) mod_fastcgi/mod_fastcgi-SNAP-0910052141 OpenSSL/1.0.2u mod_wsgi/3.5 Python/2.7.18"},{"key":"X-Powered-By","value":"PHP/8.2.0"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Set-Cookie","value":"fdsess=vd2cs16dj4gm14rs2jvuu9gefdo2rmnj; expires=Thu, 11 Jul 2024 03:21:54 GMT; Max-Age=14400; path=/; HttpOnly; SameSite=Lax"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"Connection","value":"Keep-Alive"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"parent\": [\n        {\n            \"uuid\": \"6578df3e-6b3a-400f-8441-25164c494675\",\n            \"folio\": \"5365\",\n            \"serie\": \"FA\",\n            \"version\": \"4.0\",\n            \"formapago\": \"99\",\n            \"fecha\": \"2024-07-10 13:11:43\",\n            \"tipodecomprobante\": \"I\",\n            \"estado_cfdi\": \"1\",\n            \"modo_timbrado\": \"0\",\n            \"moneda\": \"MXN\",\n            \"metodopago\": \"PUE\",\n            \"via_generacion\": \"1\",\n            \"monto_subtotal\": \"1500000.000000\",\n            \"monto_descuento\": null,\n            \"monto_iva\": \"240000.000000\",\n            \"monto_ieps\": \"0.000000\",\n            \"monto_total\": \"1740000.000000\",\n            \"receptor_nombre\": \"MARICARMEN RUIZ GARZA\",\n            \"receptor_rfc\": \"MAGA890320M87\",\n            \"receptor_usocfdi\": \"G03\"\n        }\n    ],\n    \"children\": []\n}"}],"_postman_id":"97bc325f-3fb4-43fb-8871-c67b7273d7fb"}],"id":"8e9a924d-dc3d-4cf5-abbe-ab9e7633a0c1","description":"<p>Métodos para crear, consultar y enviar documentos electrónicos (CFDI).</p>\n","event":[{"listen":"prerequest","script":{"id":"2d3eeded-e134-44ec-a951-fbec9ae718d5","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"1f0d7f70-b6c4-4fb0-8348-e360639af025","type":"text/javascript","exec":[""]}}],"_postman_id":"8e9a924d-dc3d-4cf5-abbe-ab9e7633a0c1"},{"name":"Validador","item":[{"name":"Validar CFDI","id":"496e8abd-7709-41dc-b787-63f41088093b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"url":"{{URI}}/validator/cfdi?uuid={{UUID}}&rfcemisor={{RFC EMISOR}}&rfcreceptor={{RFC RECEPTOR}}&total={{MONTO TOTAL DEL CFDI}}","description":"<p>Verifica en el SAT el estatus de un CFDI previamente timbrado.</p>\n","urlObject":{"path":["validator","cfdi"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>UUID del CFDI que deseas validar en el SAT</p>\n","type":"text/plain"},"key":"uuid","value":"{{UUID}}"},{"description":{"content":"<p>RFC del emisor del CFDI </p>\n","type":"text/plain"},"key":"rfcemisor","value":"{{RFC EMISOR}}"},{"description":{"content":"<p>RFC del receptor del CFDI </p>\n","type":"text/plain"},"key":"rfcreceptor","value":"{{RFC RECEPTOR}}"},{"description":{"content":"<p>Monto Total del CFDI </p>\n","type":"text/plain"},"key":"total","value":"{{MONTO TOTAL DEL CFDI}}"}],"variable":[]}},"response":[{"id":"1717ff62-41ee-4c69-87ef-e483fe1a1762","name":"Ejemplo de respuesta CFDI encontrado en el SAT","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"url":{"raw":"{{URI}}/validator/cfdi?uuid=c98c2bdc-595c-40e3-81dd-40b169f4eb7e&rfcemisor=CAMR920612GW5&rfcreceptor=ETR080410N60&total=23892.00","host":["{{URI}}"],"path":["validator","cfdi"],"query":[{"key":"uuid","value":"c98c2bdc-595c-40e3-81dd-40b169f4eb7e","description":"UUID del CFDI que deseas validar en el SAT"},{"key":"rfcemisor","value":"CAMR920612GW5","description":"RFC del emisor del CFDI "},{"key":"rfcreceptor","value":"ETR080410N60","description":"RFC del receptor del CFDI "},{"key":"total","value":"23892.00","description":"Monto Total del CFDI "}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 03 Mar 2021 19:28:10 GMT"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"},{"key":"Set-Cookie","value":"xnovatech_session=1ne8ago1regkuj93m913kvdo9dpqf2aa; expires=Thu, 04-Mar-2021 03:28:11 GMT; Max-Age=28800; path=/; secure; HttpOnly"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Content-Length","value":"302"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"Connection","value":"Keep-Alive"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"La consulta se realizó exitosamente en el SAT\",\n    \"code\": \"200\",\n    \"sat_response\": {\n        \"codigoestatus\": \"S - Comprobante obtenido satisfactoriamente.\",\n        \"escancelable\": \"Cancelable sin aceptación\",\n        \"estado\": \"Vigente\",\n        \"estatuscancelacion\": \"\",\n        \"validacionefos\": \"200\",\n        \"fecha_consulta\": \"2021-03-03 13:28:11\"\n    }\n}"},{"id":"d9362d39-f73c-44b9-9066-a144f6a3ab1f","name":"Ejemplo de respuesta: CFDI no encontrado","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"url":{"raw":"{{URI}}/validator/cfdi?uuid=c98c2bdc-672c-20e3-81dd-60b129f4eb7e&rfcemisor=CAMR680522GW0&rfcreceptor=ETR080522N60&total=100","host":["{{URI}}"],"path":["validator","cfdi"],"query":[{"key":"uuid","value":"c98c2bdc-672c-20e3-81dd-60b129f4eb7e","description":"UUID del CFDI que deseas validar en el SAT"},{"key":"rfcemisor","value":"CAMR680522GW0","description":"RFC del emisor del CFDI "},{"key":"rfcreceptor","value":"ETR080522N60","description":"RFC del receptor del CFDI "},{"key":"total","value":"100","description":"Monto Total del CFDI "}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 03 Mar 2021 19:25:14 GMT"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"},{"key":"Set-Cookie","value":"xnovatech_session=p45ga2ehqgq7k9dmfkh3v96hh87b90g6; expires=Thu, 04-Mar-2021 03:25:14 GMT; Max-Age=28800; path=/; secure; HttpOnly"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Content-Length","value":"323"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"Connection","value":"Keep-Alive"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"La consulta se realizó exitosamente en el SAT\",\n    \"code\": \"200\",\n    \"sat_response\": {\n        \"codigoestatus\": \"N - 601: La expresión impresa proporcionada no es válida.\",\n        \"escancelable\": \"Cancelable sin aceptación\",\n        \"estado\": \"No Encontrado\",\n        \"estatuscancelacion\": \"\",\n        \"validacionefos\": \"200\",\n        \"fecha_consulta\": \"2021-03-03 13:25:15\"\n    }\n}"}],"_postman_id":"496e8abd-7709-41dc-b787-63f41088093b"},{"name":"Validar Datos Fiscales 4.0","id":"fc99514a-73da-4b78-9486-0e0968d21019","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"},{"key":"Rfc","value":"SAOL780101MN1","description":"<p>RFC del contribuyente a ser validado</p>\n","type":"text"},{"key":"Nombre","value":"RIGOBERTO ONTIVEROS LOPEZ","description":"<p>Nombre o Razón Social a ser validado. Personas morales: ELIMINAR EL RÉGIMEN DE CAPITAL (SA DE CV, S DE RL, SC, SAPI, etc)</p>\n","type":"text"},{"key":"Codigopostal","value":"67100","description":"<p>Código Postal (DomicilioFiscalReceptor) registrado ante el SAT. Debe ser actualizado y correcto. Debes obtenerlo de la Constancia o Cédula de Identificación Fiscal.</p>\n","type":"text"},{"key":"Regimen","value":"612","description":"<p>Régimen Fiscal (RegimenFiscalReceptor) de acuerdo a la Constancia ó Cédula de Identificación Fiscal.</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/validator/fiscalinfo","description":"<p>Verifica los datos fiscales de un contribuyente, antes de ser utilizados para timbrar en CFDI 4.0 ó posterior.</p>\n<p>Este método lo puedes utilizar por ejemplo, para validar los datos fiscales de tus clientes y proveedores, antes de ser registrados en tus catálogos.</p>\n","urlObject":{"path":["validator","fiscalinfo"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"72bb3d82-4f44-4b8b-af7e-5b17e131f76c","name":"Validación Exitosa","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"},{"key":"Rfc","value":"SAOL780101MN1","description":"RFC del contribuyente a ser validado","type":"text"},{"key":"Nombre","value":"RIGOBERTO ONTIVEROS LOPEZ","description":"Nombre o Razón Social a ser validado. Personas morales: ELIMINAR EL RÉGIMEN DE CAPITAL (SA DE CV, S DE RL, SC, SAPI, etc)","type":"text"},{"key":"Codigopostal","value":"67100","description":"Código Postal (DomicilioFiscalReceptor) registrado ante el SAT. Debe ser actualizado y correcto. Debes obtenerlo de la Constancia o Cédula de Identificación Fiscal.","type":"text"},{"key":"Regimen","value":"612","description":"Régimen Fiscal (RegimenFiscalReceptor) de acuerdo a la Constancia ó Cédula de Identificación Fiscal.","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/validator/fiscalinfo"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 28 Oct 2022 22:31:21 GMT"},{"key":"Server","value":"Apache"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Vary","value":"Accept-Encoding,User-Agent"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Length","value":"145"},{"key":"Keep-Alive","value":"timeout=5, max=198"},{"key":"Connection","value":"Keep-Alive"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"old_balance\": 46,\n    \"new_balance\": 45,\n    \"code\": 200,\n    \"short\": \"OK\",\n    \"message\": \"The fiscal information provided is correct.\",\n    \"query_date\": \"2022-10-28 17:31:23\"\n}"},{"id":"69cbbe90-b6bf-4b1a-8fa5-b48dd76f71ef","name":"Validación Erronea","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"},{"key":"Rfc","value":"SAOL780101MN1","description":"RFC del contribuyente a ser validado","type":"text"},{"key":"Nombre","value":"RIGOBERTO ONTIVEROS LOPEZ","description":"Nombre o Razón Social a ser validado. Personas morales: ELIMINAR EL RÉGIMEN DE CAPITAL (SA DE CV, S DE RL, SC, SAPI, etc)","type":"text"},{"key":"Codigopostal","value":"67100","description":"Código Postal (DomicilioFiscalReceptor) registrado ante el SAT. Debe ser actualizado y correcto. Debes obtenerlo de la Constancia o Cédula de Identificación Fiscal.","type":"text"},{"key":"Regimen","value":"612","description":"Régimen Fiscal (RegimenFiscalReceptor) de acuerdo a la Constancia ó Cédula de Identificación Fiscal.","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/validator/fiscalinfo"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 28 Oct 2022 22:39:42 GMT"},{"key":"Server","value":"Apache"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Set-Cookie","value":"xnovatech22=7e04a33fe53b7b5fdf0f5d21f061aa1aa0ee3fef; expires=Sat, 29-Oct-2022 06:39:42 GMT; Max-Age=28800; path=/; secure; HttpOnly; SameSite=Lax"},{"key":"Vary","value":"Accept-Encoding,User-Agent"},{"key":"Content-Encoding","value":"gzip"},{"key":"Content-Length","value":"184"},{"key":"Connection","value":"close"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"old_balance\": 45,\n    \"new_balance\": 45,\n    \"type\": \"RequestException\",\n    \"short\": \"Wrong Data\",\n    \"sat_code\": \"CFDI40143\",\n    \"message\": \"CFDI40143 - Este RFC del receptor no existe en la lista de RFC inscritos no cancelados del SAT.  *SW* \",\n    \"code\": 400\n}"}],"_postman_id":"fc99514a-73da-4b78-9486-0e0968d21019"},{"name":"Validar RFC","id":"84d5f7f3-a1da-43dd-82bf-e910ff8b5505","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"url":"{{URI}}/validator/lrfc?rfc=SAOA890320M87","description":"<p>Validador de RFC (Registro Federal de Contribuyentes) directamente en la base de datos del SAT. Solo para México.</p>\n","urlObject":{"path":["validator","lrfc"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>RFC sin espacios ni guiones.</p>\n","type":"text/plain"},"key":"rfc","value":"SAOA890320M87"}],"variable":[]}},"response":[{"id":"7c613579-1c0b-402d-bc40-e5855973bd52","name":"Ejemplo: Validar RFC","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"url":{"raw":"{{URI}}/validator/lrfc?rfc=NDI120326HF5","host":["{{URI}}"],"path":["validator","lrfc"],"query":[{"key":"rfc","value":"NDI120326HF5","description":"RFC sin espacios ni guiones."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"127"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 18 Sep 2020 07:56:17 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"Set-Cookie","value":"xnovatech_session=tup79c2s3lp3523n8qscnfc138i8n7am; expires=Fri, 18-Sep-2020 15:56:17 GMT; Max-Age=28800; path=/; secure; HttpOnly"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"data\": {\n        \"contribuyenteRFC\": \"NDI120326HF5\",\n        \"sncf\": false,\n        \"subcontratacion\": false\n    },\n    \"query_date\": \"2020-09-18 02:56:18\"\n}"}],"_postman_id":"84d5f7f3-a1da-43dd-82bf-e910ff8b5505"},{"name":"Validar Certificado en LCO","id":"68c238be-76e5-4828-b682-67297c2de9f2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"url":"{{URI}}/validator/lco?nocertificado=00001000000407553228","description":"<p>Verifica que un certificado de sello digital se encuentre debidamente registrado y activado en la Lista de Contribuyentes con obligación del SAT. Solo disponible para México.</p>\n","urlObject":{"path":["validator","lco"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>Número de serie del certificado Ej. 30001000000400002335</p>\n","type":"text/plain"},"key":"nocertificado","value":"00001000000407553228"}],"variable":[]}},"response":[{"id":"dab67761-62b3-4360-8a00-5165126d68a3","name":"Ejemplo: Validar Certificado en LCO","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"url":{"raw":"{{URI}}/validator/lco?nocertificado=00001000000407553228","host":["{{URI}}"],"path":["validator","lco"],"query":[{"key":"nocertificado","value":"00001000000407553228","description":"Número de serie del certificado Ej. 30001000000400002335"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"238"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 18 Sep 2020 07:56:58 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"data\": {\n        \"noCertificado\": \"00001000000407553228\",\n        \"rfc\": \"NDI120326HF5\",\n        \"validezObligaciones\": \"1\",\n        \"estatusCertificado\": \"A\",\n        \"fechaInicio\": \"2017-09-15T22:12:37\",\n        \"fechaFinal\": \"2021-09-15T22:12:37\"\n    },\n    \"query_date\": \"2020-09-18 02:56:58\"\n}"}],"_postman_id":"68c238be-76e5-4828-b682-67297c2de9f2"},{"name":"Validar Lista Negra","id":"728960c3-a1b1-4801-8c65-52683532c2b4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"url":"{{URI}}/validator/blacklist?rfc=SAOA890320M87","description":"<p>Verifica que un contribuyente no se encuentre en la lista negra del SAT (articulo 69-B) - Evita hacer operaciones con contribuyentes que simulan operaciones.</p>\n","urlObject":{"path":["validator","blacklist"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>RFC del contribuyente</p>\n","type":"text/plain"},"key":"rfc","value":"SAOA890320M87"}],"variable":[]}},"response":[{"id":"a0fcf053-9e9d-4e78-9cf7-cab725fbbe72","name":"Ejemplo: Buscar y validar RFC en la Lista Negra del SAT","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"url":{"raw":"{{URI}}/validator/blacklist?rfc=SAOA890320M87","host":["{{URI}}"],"path":["validator","blacklist"],"query":[{"key":"rfc","value":"SAOA890320M87","description":"RFC del contribuyente"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"116"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 18 Sep 2020 07:58:09 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": \"200\",\n    \"codestr\": \"whitelisted\",\n    \"message\": \"This RFC is clean.\",\n    \"data\": null,\n    \"query_date\": \"2020-09-18 02:58:09\"\n}"}],"_postman_id":"728960c3-a1b1-4801-8c65-52683532c2b4"},{"name":"Obtener el saldo de créditos (validador)","id":"92f9ac38-5f96-4fc4-85e9-035afa6fb854","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"url":"{{URI}}/validator/balance","description":"<p>Consulta la cantidad de créditos disponibles para los métodos de validación.</p>\n","urlObject":{"path":["validator","balance"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"103a3a66-12a9-43ba-8494-722af21bcafb","name":"Ejemplo: Obtener el saldo de créditos (validador)","originalRequest":{"method":"GET","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"url":"{{URI}}/validator/balance"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"61"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 18 Sep 2020 07:59:17 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": 200,\n    \"balance\": 354,\n    \"query_date\": \"2020-09-18 02:59:17\"\n}"}],"_postman_id":"92f9ac38-5f96-4fc4-85e9-035afa6fb854"}],"id":"391d038a-8078-4ef1-b1b5-29354a9fcabb","description":"<p>Métodos para consulta de RFCs en la lista de RFCs, lista de contribuyentes con obligación (LCO) y Lista Negra del SAT.</p>\n","event":[{"listen":"prerequest","script":{"id":"44fdd250-93a4-47ee-9da2-4eeb9b33a8e1","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"dfe38b28-189d-4e7e-b54c-76e82a501001","type":"text/javascript","exec":[""]}}],"_postman_id":"391d038a-8078-4ef1-b1b5-29354a9fcabb"},{"name":"Kiosko Auto Facturación","item":[{"name":"Crear Ticket para Auto Facturación","id":"97bde2ad-8822-437e-8530-687be46303a5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n\"Referencia\":\"0000123456789\",\n\"Fecha\":\"2020-09-16\",\n\"FechaLimite\":\"2020-09-20\",\n\"Sucursal\":\"0\",\n\"Plataforma\":\"TPV\",\n\"Correo\":\"\",\n\"Moneda\":\"MXN\",\n\"TipoCambio\":\"1\",\n\"Subtotal\": \"100.00\",\n\"Iva\": \"16.00\",\n\"Total\":\"116.00\",\n\"Descuento\": \"0.00\",\n\"Conceptos\":[\n    {\n        \"ClaveProdServ\":\"81112106\",\n        \"NoIdentificacion\":\"MZ-1001\",\n        \"Cantidad\":\"1\",\n        \"ClaveUnidad\":\"H87\",\n        \"Unidad\":\"Pieza\",\n        \"Descripcion\":\"Mezcal Oaxaca Artesanal 100ml\",\n        \"ValorUnitario\":\"50.00\",\n        \"Importe\":\"50.00\",\n        \"Impuestos\":{\n            \"Traslados\":[\n            {\n                \"Base\":\"50.00\",\n                \"Impuesto\":\"002\",\n                \"TipoFactor\":\"Tasa\",\n                \"TasaOCuota\":\"0.160000\",\n                \"Importe\":\"8.00\"\n            }\n            ]\n        }\n    },\n    {\n        \"ClaveProdServ\":\"81112106\",\n        \"NoIdentificacion\":\"MZ-1001\",\n        \"Cantidad\":\"1\",\n        \"ClaveUnidad\":\"H87\",\n        \"Unidad\":\"Pieza\",\n        \"Descripcion\":\"Caja de Chocolates Oaxaca 20 pzas.\",\n        \"ValorUnitario\":\"50.00\",\n        \"Importe\":\"50.00\",\n        \"Impuestos\":{\n            \"Traslados\":[\n            {\n                \"Base\":\"50.00\",\n                \"Impuesto\":\"002\",\n                \"TipoFactor\":\"Tasa\",\n                \"TasaOCuota\":\"0.160000\",\n                \"Importe\":\"8.00\"\n            }\n            ]\n        }\n    }\n]\n}","description":"<p>Cadena JSON con los datos del ticket</p>\n","type":"text"}]},"url":"{{URI}}/selfservice/ticket","description":"<p>Crear un nuevo ticket para quedar en espera de ser facturado por un cliente.</p>\n<p>Debes enviar el string \"json\" en el body de la petición, siguiendo el siguiente formato:</p>\n<h2 id=\"ejemplo-de-estructura-json\">Ejemplo de estructura JSON</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n   \"Referencia\":\"123123123\",\n   \"Fecha\":\"2020-09-16\",\n   \"FechaLimite\":\"2020-09-20\",\n   \"Sucursal\":\"0\",\n   \"Plataforma\":\"TPV\",\n   \"Correo\":\"\",\n   \"Moneda\":\"MXN\",\n   \"TipoCambio\":\"1\",\n   \"Subtotal\": \"100.00\",\n   \"Iva\": \"16.00\",\n   \"Total\":\"116.00\",\n   \"Descuento\": \"0.00\",\n   \"Conceptos\":[\n      {\n         \"ClaveProdServ\":\"81112106\",\n         \"NoIdentificacion\":\"MZ-1001\",\n         \"Cantidad\":\"1\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"Pieza\",\n         \"Descripcion\":\"Mezcal Oaxaca Artesanal 100ml\",\n         \"ValorUnitario\":\"50.00\",\n         \"Importe\":\"50.00\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"50.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"8.00\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"81112106\",\n         \"NoIdentificacion\":\"MZ-1001\",\n         \"Cantidad\":\"1\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"Pieza\",\n         \"Descripcion\":\"Caja de Chocolates Oaxaca 20 pzas.\",\n         \"ValorUnitario\":\"50.00\",\n         \"Importe\":\"50.00\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"50.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"8.00\"\n               }\n            ]\n         }\n      }\n   ]\n}\n</code></pre>\n<h2 id=\"¿requieres-mas-ejemplos\">¿Requieres mas ejemplos?</h2>\n<p>Escríbenos a <a href=\"mailto:soporte@facturadigital.com.mx\">soporte@facturadigital.com.mx</a></p>\n","urlObject":{"path":["selfservice","ticket"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"ece10202-d19b-4db1-9607-5025e2c13811","name":"Ejemplo: Crear Ticket para Auto Facturación","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"json","value":"{\n   \"Referencia\":\"123123123\",\n   \"Fecha\":\"2020-09-16T13:00:00\",\n   \"FechaLimite\":\"2020-09-20T13:00:00\",\n   \"Sucursal\":\"0\",\n   \"Plataforma\":\"TPV\",\n   \"Correo\":\"\",\n   \"Moneda\":\"MXN\",\n   \"TipoCambio\":\"1\",\n   \"Subtotal\": \"100.00\",\n   \"Iva\": \"16.00\",\n   \"Total\":\"116.00\",\n   \"Descuento\": \"0.00\",\n   \"Conceptos\":[\n      {\n         \"ClaveProdServ\":\"81112106\",\n         \"NoIdentificacion\":\"MZ-1001\",\n         \"Cantidad\":\"1\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"Pieza\",\n         \"Descripcion\":\"Mezcal Oaxaca Artesanal 100ml\",\n         \"ValorUnitario\":\"50.00\",\n         \"Importe\":\"50.00\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"50.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"8.00\"\n               }\n            ]\n         }\n      },\n      {\n         \"ClaveProdServ\":\"81112106\",\n         \"NoIdentificacion\":\"MZ-1001\",\n         \"Cantidad\":\"1\",\n         \"ClaveUnidad\":\"H87\",\n         \"Unidad\":\"Pieza\",\n         \"Descripcion\":\"Caja de Chocolates Oaxaca 20 pzas.\",\n         \"ValorUnitario\":\"50.00\",\n         \"Importe\":\"50.00\",\n         \"Impuestos\":{\n            \"Traslados\":[\n               {\n                  \"Base\":\"50.00\",\n                  \"Impuesto\":\"002\",\n                  \"TipoFactor\":\"Tasa\",\n                  \"TasaOCuota\":\"0.160000\",\n                  \"Importe\":\"8.00\"\n               }\n            ]\n         }\n      }\n   ]\n}","description":"Cadena JSON con los datos del ticket","type":"text"}]},"url":"{{URI}}/selfservice/ticket"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"52"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 18 Sep 2020 15:15:30 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Ticket created successfully\",\n    \"code\": 200\n}"}],"_postman_id":"97bde2ad-8822-437e-8530-687be46303a5"},{"name":"Consultar ticket en Auto Facturación","id":"6a2ba270-90b0-4d0f-a454-7f3646fff163","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/selfservice/ticket?referencia=701-1447033-8745852&fecha=2020-10-10&monto=1440.00","description":"<p>Busca un ticket posteado en el módulo de Auto Facturación para validar datos del mismo.</p>\n<h3 id=\"posibles-valores-de-estatus\">Posibles valores de \"estatus\"</h3>\n<blockquote>\n<ol>\n<li>Vigente</li>\n<li>Facturado Cliente</li>\n<li>Facturado Global</li>\n<li>Cancelado/Devuelto</li>\n</ol>\n</blockquote>\n","urlObject":{"path":["selfservice","ticket"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>Referencia única del ticket</p>\n","type":"text/plain"},"key":"referencia","value":"701-1447033-8745852"},{"description":{"content":"<p>Fecha en formato YYYY-MM-DD</p>\n","type":"text/plain"},"key":"fecha","value":"2020-10-10"},{"description":{"content":"<p>Monto total del ticket a dos decimales</p>\n","type":"text/plain"},"key":"monto","value":"1440.00"}],"variable":[]}},"response":[{"id":"683e603b-ef26-46a8-bd62-38cdef91b0ad","name":"Ejemplo consultar ticket en Auto Facturación","originalRequest":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":{"raw":"{{URI}}/selfservice/ticket?referencia=701-1447033-8745852&fecha=2020-10-10&monto=1440.00","host":["{{URI}}"],"path":["selfservice","ticket"],"query":[{"key":"referencia","value":"701-1447033-8745852","description":"Referencia única del ticket"},{"key":"fecha","value":"2020-10-10","description":"Fecha en formato YYYY-MM-DD"},{"key":"monto","value":"1440.00","description":"Monto total del ticket a dos decimales"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"426"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 23 Oct 2020 21:30:29 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": \"200\",\n    \"message\": \"Ticket encontrado\",\n    \"data\": {\n        \"referencia\": \"701-1447033-8745852\",\n        \"fecha\": \"2020-10-10\",\n        \"fecha_limite\": \"2020-10-31 00:00:00\",\n        \"sucursal_id\": null,\n        \"plataforma\": \"amazon\",\n        \"monto_total\": \"1440.000000\",\n        \"estatus\": \"1\",\n        \"bit_timbrado\": \"0\",\n        \"modo_timbrado\": null,\n        \"uuid\": null,\n        \"folio\": null,\n        \"serie\": null,\n        \"receptor_nombre\": null,\n        \"receptor_rfc\": null,\n        \"receptor_usocfdi\": null,\n        \"formapago\": null,\n        \"metodopago\": null,\n        \"timestamp\": null\n    }\n}"}],"_postman_id":"6a2ba270-90b0-4d0f-a454-7f3646fff163"},{"name":"Consultar lista de tickets en Auto Facturación","id":"b6709a39-ffb3-43e5-a626-a97ad6bf1d04","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/selfservice/ticketlist?fechaini=2020-10-10&fechafin=2020-10-22&estatus=1","description":"<p>Consulta la lista de tickets posteados en el módulo de Auto Facturación por fecha inicial, fecha final y estatus.</p>\n<h3 id=\"posibles-valores-de-estatus\">Posibles valores de \"estatus\"</h3>\n<blockquote>\n<ol>\n<li>Vigente</li>\n<li>Facturado Cliente</li>\n<li>Facturado Global</li>\n<li>Cancelado/Devuelto</li>\n</ol>\n</blockquote>\n","urlObject":{"path":["selfservice","ticketlist"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>Fecha inicial en formato YYYY-MM-DD</p>\n","type":"text/plain"},"key":"fechaini","value":"2020-10-10"},{"description":{"content":"<p>Fecha final en formato YYYY-MM-DD</p>\n","type":"text/plain"},"key":"fechafin","value":"2020-10-22"},{"description":{"content":"<p>Estatus del ticket. (1: Vigente, 2: Facturado Cliente, 3: Facturado Global, 4: Cancelado/Devuelto)</p>\n","type":"text/plain"},"key":"estatus","value":"1"}],"variable":[]}},"response":[{"id":"9975cf72-780e-40dc-b4b3-f69e097ed438","name":"Ejemplo Consultar lista de tickets en Auto Facturación","originalRequest":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":{"raw":"{{URI}}/selfservice/ticketlist?fechaini=2020-10-10&fechafin=2020-10-22&estatus=1","host":["{{URI}}"],"path":["selfservice","ticketlist"],"query":[{"key":"fechaini","value":"2020-10-10","description":"Fecha inicial en formato YYYY-MM-DD"},{"key":"fechafin","value":"2020-10-22","description":"Fecha final en formato YYYY-MM-DD"},{"key":"estatus","value":"1","description":"Estatus del ticket. (1: Vigente, 2: Facturado Cliente, 3: Facturado Global, 4: Cancelado/Devuelto)"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"7537"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Fri, 23 Oct 2020 22:06:39 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": \"200\",\n    \"message\": \"Tickets encontrados\",\n    \"data\": [\n        {\n            \"referencia\": \"701-3216547-8745852\",\n            \"fecha\": \"2020-10-10\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"1440.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-4569874-2234656\",\n            \"fecha\": \"2020-10-10\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"990.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-7537533-7585830\",\n            \"fecha\": \"2020-10-10\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"370.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-3573574-3499405\",\n            \"fecha\": \"2020-10-10\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"720.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-1231235-9739433\",\n            \"fecha\": \"2020-10-10\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"990.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-6546549-0031454\",\n            \"fecha\": \"2020-10-10\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-1237894-2032241\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"990.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-3216548-8609837\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-4567894-6031402\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-3322125-7972214\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-4567894-9849038\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-9878887-9102640\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-6545554-8550656\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-9878487-8002610\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-4554548-5428260\",\n            \"fecha\": \"2020-10-11\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"740.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-3215478-0025840\",\n            \"fecha\": \"2020-10-12\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-64554878-3101039\",\n            \"fecha\": \"2020-10-12\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"1250.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"702-784848-9081067\",\n            \"fecha\": \"2020-10-12\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-321124-8621051\",\n            \"fecha\": \"2020-10-12\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"360.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        },\n        {\n            \"referencia\": \"701-645545-6693052\",\n            \"fecha\": \"2020-10-12\",\n            \"fecha_limite\": \"2020-10-31 00:00:00\",\n            \"sucursal_id\": null,\n            \"plataforma\": \"amazon\",\n            \"monto_total\": \"370.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"uuid\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": null\n        }\n    ]\n}"}],"_postman_id":"b6709a39-ffb3-43e5-a626-a97ad6bf1d04"},{"name":"Actualizar estatus de Ticket","id":"5f341a21-ea5f-4115-832d-1b6e266e24b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"estatus","value":"1","description":"<p>Nuevo estatus del ticket</p>\n","type":"text"},{"key":"referencia","value":"0100040100035433941","type":"text"}]},"url":"{{URI}}/selfservice/ticketstatus","description":"<p>Asigna un nuevo estatus a un ticket por medio de la referencia.</p>\n<h3 id=\"posibles-valores-de-estatus\">Posibles valores de \"estatus\"</h3>\n<blockquote>\n<ol>\n<li>Vigente</li>\n<li>Facturado Cliente</li>\n<li>Facturado Global</li>\n<li>Cancelado/Devuelto</li>\n</ol>\n</blockquote>\n","urlObject":{"path":["selfservice","ticketstatus"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"a421cb7e-6084-4e52-8595-873c5b410d8f","name":"Ejemplo Actualizar estatus de Ticket","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"estatus","value":"1","description":"Nuevo estatus del ticket","type":"text"},{"key":"referencia","value":"701-3607584-9013841","type":"text"}]},"url":"{{URI}}/selfservice/ticketstatus"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Content-Length","value":"71"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Date","value":"Wed, 28 Oct 2020 15:37:22 GMT"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Pragma","value":"no-cache"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Ticket updated successfully. New Estatus is: 1\",\n    \"code\": 200\n}"}],"_postman_id":"5f341a21-ea5f-4115-832d-1b6e266e24b8"},{"name":"Eliminar Ticket","id":"580efbe9-7acc-428c-a185-2dacef11bcc5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/x-www-form-urlencoded","type":"text"},{"key":"X-Api-Key","value":"{{api_key_demo}}","description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","type":"text"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"referencia","value":"0100040100035433941","type":"text","description":"<p>Referencia del ticket que se desea eliminar</p>\n"},{"key":"monto_total","value":"150.00","description":"<p>Monto total del ticket</p>\n","type":"text","uuid":"97aa6567-5037-4bd4-8c22-17ed18be2c0f"}]},"url":"{{URI}}/selfservice/ticketdelete","description":"<p>Elimina un ticket que tenga estatus 1</p>\n","urlObject":{"path":["selfservice","ticketdelete"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"580efbe9-7acc-428c-a185-2dacef11bcc5"},{"name":"Consultar lista detallada de tickets en Auto Facturación","id":"818802cf-2c66-4b9a-9159-39b5bbf2aa93","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":"{{URI}}/selfservice/ticketlistdetailed?fechaini=2021-01-01&fechafin=2021-06-01&estatus=1","description":"<p>Consulta la lista de tickets posteados en el módulo de Auto Facturación por fecha inicial, fecha final y estatus.</p>\n<h3 id=\"posibles-valores-de-estatus\">Posibles valores de \"estatus\"</h3>\n<blockquote>\n<ol>\n<li>Vigente</li>\n<li>Facturado Cliente</li>\n<li>Facturado Global</li>\n<li>Cancelado/Devuelto</li>\n</ol>\n</blockquote>\n","urlObject":{"path":["selfservice","ticketlistdetailed"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>Fecha inicial en formato YYYY-MM-DD</p>\n","type":"text/plain"},"key":"fechaini","value":"2021-01-01"},{"description":{"content":"<p>Fecha final en formato YYYY-MM-DD</p>\n","type":"text/plain"},"key":"fechafin","value":"2021-06-01"},{"description":{"content":"<p>Estatus del ticket. (1: Vigente, 2: Facturado Cliente, 3: Facturado Global, 4: Cancelado/Devuelto)</p>\n","type":"text/plain"},"key":"estatus","value":"1"}],"variable":[]}},"response":[{"id":"029287fe-3ddb-41ba-afaf-45c3b0dd9145","name":"Ejemplo de respuesta Consultar lista detallada de tickets en Auto Facturación","originalRequest":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[]},"url":{"raw":"{{URI}}/selfservice/ticketlistdetailed?fechaini=2021-01-01&fechafin=2021-06-01&estatus=1","host":["{{URI}}"],"path":["selfservice","ticketlistdetailed"],"query":[{"key":"fechaini","value":"2021-01-01","description":"Fecha inicial en formato YYYY-MM-DD"},{"key":"fechafin","value":"2021-06-01","description":"Fecha final en formato YYYY-MM-DD"},{"key":"estatus","value":"1","description":"Estatus del ticket. (1: Vigente, 2: Facturado Cliente, 3: Facturado Global, 4: Cancelado/Devuelto)"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 26 May 2021 21:37:36 GMT"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Content-Length","value":"3297"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"Connection","value":"Keep-Alive"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": \"200\",\n    \"message\": \"Tickets encontrados\",\n    \"data\": [\n        {\n            \"id\": \"155\",\n            \"referencia\": \"0000123456789\",\n            \"fecha\": \"2021-05-01\",\n            \"fecha_limite\": \"2021-06-01 00:00:00\",\n            \"sucursal_id\": \"0\",\n            \"plataforma\": \"TPV\",\n            \"monto_total\": \"116.000000\",\n            \"estatus\": \"3\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"fecha_timbrado\": null,\n            \"uuid\": null,\n            \"fecha_cancela\": null,\n            \"acuse\": null,\n            \"folio\": null,\n            \"serie\": null,\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": null,\n            \"metodopago\": null,\n            \"timestamp\": \"2021-05-26 16:34:15\",\n            \"detalle\": [\n                {\n                    \"id\": \"168\",\n                    \"kiosko_ticket_id\": \"155\",\n                    \"claveprodserv\": \"81112106\",\n                    \"noidentificacion\": \"MZ-1001\",\n                    \"cantidad\": \"1\",\n                    \"claveunidad\": \"H87\",\n                    \"unidad\": \"Pieza\",\n                    \"descripcion\": \"Mezcal Oaxaca Artesanal 100ml\",\n                    \"valorunitario\": \"50.000000\",\n                    \"importe\": \"50.000000\",\n                    \"descuento\": null,\n                    \"extra1\": null,\n                    \"extra2\": null,\n                    \"extra3\": null,\n                    \"extra4\": null,\n                    \"extra5\": null,\n                    \"extra6\": null,\n                    \"extra7\": null,\n                    \"extra8\": null,\n                    \"extra9\": null,\n                    \"extra10\": null,\n                    \"impuesto\": [\n                        {\n                            \"id\": \"168\",\n                            \"kiosko_ticket_detalle_id\": \"168\",\n                            \"tipoimpto\": \"TR\",\n                            \"base\": \"50.000000\",\n                            \"impuesto\": \"002\",\n                            \"tipofactor\": \"Tasa\",\n                            \"tasaocuota\": \"0.160000\",\n                            \"importe\": \"8.000000\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"169\",\n                    \"kiosko_ticket_id\": \"155\",\n                    \"claveprodserv\": \"81112106\",\n                    \"noidentificacion\": \"MZ-1001\",\n                    \"cantidad\": \"1\",\n                    \"claveunidad\": \"H87\",\n                    \"unidad\": \"Pieza\",\n                    \"descripcion\": \"Caja de Chocolates Oaxaca 20 pzas.\",\n                    \"valorunitario\": \"50.000000\",\n                    \"importe\": \"50.000000\",\n                    \"descuento\": null,\n                    \"extra1\": null,\n                    \"extra2\": null,\n                    \"extra3\": null,\n                    \"extra4\": null,\n                    \"extra5\": null,\n                    \"extra6\": null,\n                    \"extra7\": null,\n                    \"extra8\": null,\n                    \"extra9\": null,\n                    \"extra10\": null,\n                    \"impuesto\": [\n                        {\n                            \"id\": \"169\",\n                            \"kiosko_ticket_detalle_id\": \"169\",\n                            \"tipoimpto\": \"TR\",\n                            \"base\": \"50.000000\",\n                            \"impuesto\": \"002\",\n                            \"tipofactor\": \"Tasa\",\n                            \"tasaocuota\": \"0.160000\",\n                            \"importe\": \"8.000000\"\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"id\": \"3771517\",\n            \"referencia\": \"0000123321654\",\n            \"fecha\": \"2021-05-04\",\n            \"fecha_limite\": \"2021-06-01 00:00:00\",\n            \"sucursal_id\": \"0\",\n            \"plataforma\": \"TPV\",\n            \"monto_total\": \"116.000000\",\n            \"estatus\": \"1\",\n            \"bit_timbrado\": \"0\",\n            \"modo_timbrado\": null,\n            \"fecha_timbrado\": null,\n            \"uuid\": null,\n            \"fecha_cancela\": null,\n            \"acuse\": null,\n            \"folio\": null,\n            \"serie\": \"\",\n            \"receptor_nombre\": null,\n            \"receptor_rfc\": null,\n            \"receptor_usocfdi\": null,\n            \"formapago\": \"\",\n            \"metodopago\": null,\n            \"timestamp\": \"2021-05-26 16:35:13\",\n            \"detalle\": [\n                {\n                    \"id\": \"6434008\",\n                    \"kiosko_ticket_id\": \"3771517\",\n                    \"claveprodserv\": \"81112106\",\n                    \"noidentificacion\": \"MZ-1001\",\n                    \"cantidad\": \"1\",\n                    \"claveunidad\": \"H87\",\n                    \"unidad\": \"Pieza\",\n                    \"descripcion\": \"Mezcal Oaxaca Artesanal 100ml\",\n                    \"valorunitario\": \"50.000000\",\n                    \"importe\": \"50.000000\",\n                    \"descuento\": \"0.000000\",\n                    \"extra1\": \"\",\n                    \"extra2\": \"\",\n                    \"extra3\": \"\",\n                    \"extra4\": \"\",\n                    \"extra5\": \"\",\n                    \"extra6\": \"\",\n                    \"extra7\": \"\",\n                    \"extra8\": \"\",\n                    \"extra9\": \"\",\n                    \"extra10\": \"\",\n                    \"impuesto\": [\n                        {\n                            \"id\": \"4393265\",\n                            \"kiosko_ticket_detalle_id\": \"6434008\",\n                            \"tipoimpto\": \"TR\",\n                            \"base\": \"50.000000\",\n                            \"impuesto\": \"002\",\n                            \"tipofactor\": \"Tasa\",\n                            \"tasaocuota\": \"0.160000\",\n                            \"importe\": \"8.000000\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"6434009\",\n                    \"kiosko_ticket_id\": \"3771517\",\n                    \"claveprodserv\": \"81112106\",\n                    \"noidentificacion\": \"MZ-1001\",\n                    \"cantidad\": \"1\",\n                    \"claveunidad\": \"H87\",\n                    \"unidad\": \"Pieza\",\n                    \"descripcion\": \"Caja de Chocolates Oaxaca 20 pzas.\",\n                    \"valorunitario\": \"50.000000\",\n                    \"importe\": \"50.000000\",\n                    \"descuento\": \"0.000000\",\n                    \"extra1\": \"\",\n                    \"extra2\": \"\",\n                    \"extra3\": \"\",\n                    \"extra4\": \"\",\n                    \"extra5\": \"\",\n                    \"extra6\": \"\",\n                    \"extra7\": \"\",\n                    \"extra8\": \"\",\n                    \"extra9\": \"\",\n                    \"extra10\": \"\",\n                    \"impuesto\": [\n                        {\n                            \"id\": \"4393266\",\n                            \"kiosko_ticket_detalle_id\": \"6434009\",\n                            \"tipoimpto\": \"TR\",\n                            \"base\": \"50.000000\",\n                            \"impuesto\": \"002\",\n                            \"tipofactor\": \"Tasa\",\n                            \"tasaocuota\": \"0.160000\",\n                            \"importe\": \"8.000000\"\n                        }\n                    ]\n                }\n            ]\n        }\n    ]\n}"}],"_postman_id":"818802cf-2c66-4b9a-9159-39b5bbf2aa93"}],"id":"21cba391-3e73-4b50-9a70-eac0a8bb805a","description":"<p>Métodos para administrar los tickets para el Kiosko Self Service (Portal de Auto Facturación)</p>\n","event":[{"listen":"prerequest","script":{"id":"ba8898f6-7c51-4959-a6b2-98bbfcb65b84","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"f59bf609-9b40-40e9-bcf7-ceed99224718","type":"text/javascript","exec":[""]}}],"_postman_id":"21cba391-3e73-4b50-9a70-eac0a8bb805a"},{"name":"Catálogos","item":[{"name":"Cliente","id":"cc9e3c4e-85d5-4d46-ad42-1205051aa130","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"nombre","value":"John Doe (Pureba API)","description":"<p>Nombre del cliente (*Required)</p>\n","type":"text"},{"key":"rfc","value":"XAXX010101000","description":"<p>RFC (*Required)</p>\n","type":"text"},{"key":"dom_calle","value":"Av del Estado","description":"<p>Domicilio fiscal (Calle)</p>\n","type":"text"},{"key":"dom_noexterior","value":"123","type":"text"},{"key":"dom_nointerior","value":"","type":"text"},{"key":"dom_colonia","value":"Girasol","type":"text"},{"key":"dom_localidad","value":"","type":"text"},{"key":"dom_referencia","value":"","type":"text"},{"key":"dom_municipio","value":"","type":"text"},{"key":"dom_estado","value":"","type":"text"},{"key":"dom_pais","value":"","type":"text"},{"key":"dom_codigopostal","value":"","type":"text"},{"key":"telefono","value":"","type":"text"},{"key":"correo","value":"","type":"text"},{"key":"correo2","value":"","type":"text"},{"key":"formapago","value":"","type":"text"},{"key":"condicionespago","value":"","type":"text"},{"key":"moneda","value":"","type":"text"},{"key":"metodopago","value":"","type":"text"},{"key":"usocfdi","value":"","type":"text"},{"key":"plantilla_id","value":"","type":"text"},{"key":"diascredito","value":"","type":"text"},{"key":"decimalescabecera","value":"","type":"text"},{"key":"decimalesconcepto","value":"","type":"text"}]},"url":"{{URI}}/catalog/customer","description":"<p>Permite la inserción o edición de un cliente en el catálogo de clientes (receptores).</p>\n<p>Para editar un cliente, debes incluir el parámetro \"guid\" en el post, indicando el cliente que se estará actualizando.</p>\n","urlObject":{"path":["catalog","customer"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"cc9e3c4e-85d5-4d46-ad42-1205051aa130"},{"name":"Cliente","id":"d5ab95af-0b47-479a-9123-06f27a3d1688","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"url":"{{URI}}/catalog/customer?guid=2bd0036d-32c7-4c49-88eb-4408be3a1bb3","description":"<p>Obtiene los datos de un cliente especifico por medio del \"guid\".</p>\n","urlObject":{"path":["catalog","customer"],"host":["{{URI}}"],"query":[{"description":{"content":"<p>GUID del cliente que deseamos consultar</p>\n","type":"text/plain"},"key":"guid","value":"2bd0036d-32c7-4c49-88eb-4408be3a1bb3"}],"variable":[]}},"response":[],"_postman_id":"d5ab95af-0b47-479a-9123-06f27a3d1688"},{"name":"Usuario para portal de Clientes","id":"0a8aa31d-f772-4bd3-a2d4-9f6fa1557731","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[{"description":"<p>RFC del cliente (*Required)</p>\n","key":"rfc","type":"text","value":"XAXX010101001"},{"description":"<p>Correo del cliente</p>\n","key":"correo","type":"text","value":"john@doe.com"},{"description":"<p>Password</p>\n","key":"contrasena","type":"text","value":"123123"}]},"url":"{{URI}}/catalog/customeruser","description":"<p>Administración de Usuarios para el portal de Clientes.</p>\n","urlObject":{"path":["catalog","customeruser"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"0a8aa31d-f772-4bd3-a2d4-9f6fa1557731"},{"name":"Productos y Servicios","id":"555852d7-e852-4dd8-aee3-c1186d36f27c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[{"description":"<p>Clave Producto Servicio (Catálogo SAT)</p>\n","key":"claveprodserv","type":"text","value":"01010101"},{"key":"noidentificacion","type":"text","value":"123456"},{"description":"<p>Clave Unidad (Catálogo SAT)</p>\n","key":"claveunidad","type":"text","value":"H87"},{"key":"unidad","value":"Pieza","description":"<p>Descripción de unidad de medida</p>\n","type":"text"},{"key":"descripcion","value":"Mezcal Oaxaca 250ml","description":"<p>Descripción del producto</p>\n","type":"text"},{"key":"valorunitario","value":"888","type":"text"},{"key":"tr_iva_exento","value":"false","description":"<p>BIT Traslada IVA. Booleano. Si es exento, mandas FALSE.</p>\n","type":"text"},{"key":"porc_tr_iva","value":"","description":"<p>Porcentaje de traslado IVA (No hace calculos)</p>\n","type":"text"},{"key":"porc_tr_ieps","value":"","description":"<p>Porcentaje de traslado IEPS (No hace calculos)</p>\n","type":"text"},{"key":"porc_re_iva","value":"","description":"<p>Porcentaje de retencion IVA (No hace calculos)</p>\n","type":"text"},{"key":"porc_re_isr","value":"","description":"<p>Porcentaje de retencion ISR (No hace calculos)</p>\n","type":"text"},{"key":"porc_re_ieps","value":"","description":"<p>Porcentaje de retencion IEPS (No hace calculos)</p>\n","type":"text"},{"key":"origen","value":"ERP","description":"<p>String texto libre para definir el orígen de la mercancia.</p>\n<ul>\n<li>Opcional</li>\n</ul>\n","type":"text"},{"key":"guid","value":"2221e3b3-91d7-48e5-9613-a92af3efd119","description":"<p>Si se desea editar, hay que enviar el valor del GUID</p>\n","type":"text"}]},"url":"{{URI}}/catalog/product","description":"<p>Administración de catálogo de productos.</p>\n","urlObject":{"path":["catalog","product"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"555852d7-e852-4dd8-aee3-c1186d36f27c"},{"name":"Proveedores","id":"c69ddb5b-bd25-4060-9b95-ce180e13465a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[{"key":"nombre","value":"Technical Supplier SA de CV","description":"<p>Nombre del proveedor (*Required)</p>\n","type":"text"},{"key":"rfc","value":"XAXX010101000","description":"<p>RFC (*Required)</p>\n","type":"text"},{"key":"dom_calle","value":"Av del Estado","description":"<p>Domicilio fiscal (Calle)</p>\n","type":"text"},{"key":"dom_noexterior","value":"123","type":"text"},{"key":"dom_nointerior","value":"","type":"text"},{"key":"dom_colonia","value":"Independencia","type":"text"},{"key":"dom_localidad","value":"","type":"text"},{"key":"dom_referencia","value":"","type":"text"},{"key":"dom_municipio","value":"Monterrey","type":"text"},{"key":"dom_estado","value":"Nuevo Leon","type":"text"},{"key":"dom_pais","value":"Mexico","type":"text"},{"key":"dom_codigopostal","value":"","type":"text"},{"key":"telefono","value":"","type":"text"},{"key":"correo","value":"","type":"text"},{"key":"correo2","value":"","type":"text"},{"key":"formapago","value":"","type":"text"},{"key":"condicionespago","value":"","type":"text"},{"key":"moneda","value":"","type":"text"},{"key":"metodopago","value":"","type":"text"},{"key":"usocfdi","value":"","type":"text"},{"key":"plantilla_id","value":"","type":"text"},{"key":"diascredito","value":"","type":"text"}]},"url":"{{URI}}/catalog/supplier","description":"<p>Administrar el catálogo de proveedores</p>\n","urlObject":{"path":["catalog","supplier"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"c69ddb5b-bd25-4060-9b95-ce180e13465a"},{"name":"Usuario para portal de Proveedores","id":"d278197a-75ea-4a46-a693-640371d96a32","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/x-www-form-urlencoded"},{"description":"<p>El X-Api-Key lo puedes obtener con el metodo Obtener Api Key o desde tu panel en app.facturadigital.com.mx</p>\n","key":"X-Api-Key","type":"text","value":"{{api_key_demo}}"}],"body":{"mode":"urlencoded","urlencoded":[{"description":"<p>RFC del proveedor (*Required)</p>\n","key":"rfc","type":"text","value":"XAXX010101001"},{"description":"<p>Correo del proveedor</p>\n","key":"correo","type":"text","value":"john@proveedor.com"},{"description":"<p>Password que se asignará al proveedor</p>\n","key":"contrasena","type":"text","value":"123123"},{"key":"nombre","value":"Proveedores del Noreste, SA de CV","description":"<p>Nombre o razón social del proveedor</p>\n","type":"text"},{"key":"activo","value":"1","description":"<p>1 si está activo, y 0 si está inactivo (no se podrá loggear)</p>\n","type":"text"}]},"url":"{{URI}}/catalog/supplieruser","description":"<p>Administración de Usuarios para el portal de Proveedores.</p>\n","urlObject":{"path":["catalog","supplieruser"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"d278197a-75ea-4a46-a693-640371d96a32"}],"id":"9abe4f85-40fe-44e5-851f-47ce6fd36e43","description":"<p>Funciones para:</p>\n<ul>\n<li>Administrar el catálogo de Clientes</li>\n<li>Administrar usuarios para portal de clientes</li>\n<li>Administrar el catálogo de Productos</li>\n</ul>\n","_postman_id":"9abe4f85-40fe-44e5-851f-47ce6fd36e43"},{"name":"Buró de Servicio","item":[{"name":"Supermercados HEB México","item":[{"name":"Entrega CFDI","id":"3dd1e40c-23bf-4371-b9ea-74c3b36f50d3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","type":"text"},{"key":"uuid","value":"4B98B0B4-F261-4D69-8294-C6B29C48CEBE","description":"<p>UUID del CFDI timbrado con complemento detallista o AMECE</p>\n","type":"text"},{"key":"username","value":"MyHEBusername","description":"<p>Usuario de proveedor HEB</p>\n","type":"text"},{"key":"password","value":"MyHEBSuperSecretPassword","description":"<p>Password de proveedor HEB</p>\n","type":"text"},{"key":"isbureau","value":"1","description":"<p>Determina si el usuario es un buró de servicio. Enviar 0 ó 1.</p>\n","type":"text"}],"url":"{{URI}}/bureau/hebsetinvoice","description":"<p>Servicio exclusivo para proveedores de HEB México.</p>\n<p>Realiza la entrega de un CFDI a los servicios de recepción de HEB México.</p>\n<p>El CFDI debe estar previamente timbrado utilizando el complemento Detallista o contener la addenda AMECE.</p>\n","urlObject":{"path":["bureau","hebsetinvoice"],"host":["{{URI}}"],"query":[],"variable":[]}},"response":[{"id":"26887ff7-1f26-4047-8413-4f7870e57f17","name":"HEB México Set Invoice","originalRequest":{"method":"POST","header":[{"key":"X-Api-Key","value":"{{api_key_demo}}","type":"text"},{"key":"uuid","value":"4B98B0B4-F261-4D69-8294-C6B29C48CEBE","description":"UUID del CFDI timbrado con complemento detallista o AMECE","type":"text"},{"key":"username","value":"XXXXXX","description":"Usuario de proveedor HEB","type":"text"},{"key":"password","value":"XXXXXX","description":"Password de proveedor HEB","type":"text"},{"key":"isbureau","value":"1","description":"Determina si el usuario es un buró de servicio. Enviar 0 ó 1.","type":"text"}],"url":"{{URI}}/bureau/hebsetinvoice"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 08:21:51 GMT"},{"key":"Server","value":"Apache"},{"key":"X-Powered-By","value":"PHP/7.3.8"},{"key":"Set-Cookie","value":"xnovatech_session=567pjqu95fpng6p5t4dacenb5t90mlto; expires=Sun, 28-Feb-2021 16:21:51 GMT; Max-Age=28800; path=/; secure; HttpOnly"},{"key":"Expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, api-usuario, api-password, jsoncfdi, uuid, destinatario, cco, mensaje, X-Api-Key"},{"key":"Access-Control-Allow-Methods","value":"GET, POST, OPTIONS, PUT, PATCH, DELETE"},{"key":"Content-Length","value":"622"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"Connection","value":"Keep-Alive"},{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success\",\n    \"code\": 200,\n    \"aperak\": {\n        \"AckErrorApplication\": {\n            \"ackErrorApplicationIdentification\": {\n                \"entityType\": \"305\",\n                \"uniqueCreatorIdentification\": \"124432\"\n            },\n            \"ApplicationInformation\": {\n                \"deliveryDatePresent\": \"2021-02-21\"\n            },\n            \"ReferenceNumber\": {\n                \"referenceIdentification\": \"3131\",\n                \"referenceDate\": \"20210228\",\n                \"type\": \"IV\"\n            },\n            \"Buyer\": {\n                \"gln\": \"SIH9511279T7\",\n                \"nameAndAddress\": {\n                    \"name\": \"SUPERMERCADOS INTERNACIONALES HEB S\"\n                }\n            },\n            \"Seller\": {\n                \"gln\": \"BPA010206MSA\",\n                \"nameAndAddress\": {\n                    \"name\": \"07987 - PINTURAS COMEX\"\n                }\n            },\n            \"messageError\": {\n                \"errorCode\": \"INF0000\",\n                \"errorDescription\": {\n                    \"text\": \"DOCUMENTO VALIDO\"\n                }\n            },\n            \"documentStatus\": \"ACCEPTED\"\n        }\n    }\n}"}],"_postman_id":"3dd1e40c-23bf-4371-b9ea-74c3b36f50d3"}],"id":"2d0ea7ca-b1a0-4dd5-a460-e9da9adbea7b","_postman_id":"2d0ea7ca-b1a0-4dd5-a460-e9da9adbea7b","description":""}],"id":"d12a8223-5e04-4ada-9364-e874d9acebf9","_postman_id":"d12a8223-5e04-4ada-9364-e874d9acebf9","description":""}],"event":[{"listen":"prerequest","script":{"id":"997e60b9-2930-4dd6-8d37-89eea3f29fcc","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"ed11d2e2-3ace-49d0-9ba9-9ae3f8e4f7f7","type":"text/javascript","exec":[""]}}]}