{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"83065773-c69e-49f1-861b-ac0b4ee965c6","name":"Factura Digital API v5","description":"Bienvenido a la documentación oficial para integrar tu aplicación a nuestra API de **Factura Digital México** 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.\n\nNuestra API te permitirá generar y timbrar **Comprobantes Fiscales Digitales** 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.\n\nEntre las funciones más destacadas tenemos:\n\n- Generación y timbrado de facturas de **(ingreso)**\n    \n- Generación y timbrado de notas de crédito **(egreso)**\n    \n- Generación y timbrado de recibos de nómina **(nomina)**\n    \n- Traslado **(traslado)**\n    \n- Pagos 2.x (versión más reciente)\n    \n- CFDIs con complementos como:\n    \n    - Donatarias\n        \n    - IEDU\n        \n    - INE (Partidos Políticos)\n        \n    - Aerolíneas\n        \n    - Nómina\n        \n    - Detallista (AMECE)\n        \n    - Impuestos Locales\n        \n    - Comercio Exterior 2.x (versión mas reciente)\n        \n    - Hidrocarburos\n        \n    - Carta Porte versión 3.x **(ingreso y traslado)**\n        \n    - Y muchos más...\n        \n\n# Endpoints\n\n> **Productivo:** \n  \n\n```\nhttps://app.facturadigital.com.mx\n\n ```\n\n> **Sandbox:** \n  \n\n```\nhttps://sandbox-app.facturadigital.com.mx\n\n ```\n\n## Primer paso: Crear tu cuenta\n\nPara comenzar a interactuar con nuestro ambiente de sandbox, debes crear una cuenta directamente en nuestro portal de sandbox, ingresando a la siguiente dirección:  \n[Registro de Cuenta Sandbox](https://sandbox-app.facturadigital.com.mx/registro)\n\nDebes registrarte con los datos reales con los que estarás facturando, ya que el sistema te solicitará que subas tus Certificados de Sello Digital **(archivos .key y .cer del CSD)**. Es importante que cuentes con ellos al momento de realizar el registro.\n\n## Subir tus certificados CSD\n\nUna vez que ya te registraste en nuestro portal, deberás iniciar sesión en [<b>https://sandbox-app.facturadigital.com.mx</b>](https://sandbox-app.facturadigital.com.mx) con tus datos de acceso y dar click en el menú: **Configuración -> Certificados SAT**.\n\n> **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.** \n  \n\nEn caso de que requieras activar funciones de sincronización con el SAT, entonces si deberás subir los archivos de la e.Firma (FIEL).\n\n## Obtén tu API Key\n\nPara obtener tu API KEY, que te permitirá realizar las peticiones a nuestro servicio, deberás ingresar al menú: **Configuración -> Datos fiscales**, y en la parte inferior encontrarás tu _**API Key Desarrolladores**_. Cópialo en un lugar seguro.\n\n## Tu primera petición a la API\n\nPara 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 **Terminal**, en Windows puedes bajar **PowerShell** ó utilizar **Windows Terminal**).\n\n**Copia y pega** 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.\n\n``` javascript\ncurl --location --request GET 'https://sandbox-app.facturadigital.com.mx/api/v5/account/balance' \\\n--header 'X-Api-Key: {{api_key_demo}}'\n\n ```\n\n> Antes de ejecutar el comando en la terminal, deberás **reemplazar** _{{api_key_demo}}_ por tu **API Key** que copiaste anteriormente. \n  \n\n**Deberá quedar algo así:**\n\n``` javascript\ncurl --location --request GET 'https://sandbox-app.facturadigital.com.mx/api/v5/account/balance' \\\n--header 'X-Api-Key: QVFVSSBGDDDWQSBNSSBBUEkgS0VREUgQ09ORklHVVJBQ0nDk04='\n\n ```\n\n## Entendiendo la respuesta\n\nNuestra API REST se comunica utilizando el lenguaje **JSON**, el cual es un simple string con estructura que te permitirá enviar y recibir cualquier tipo de dato de forma muy bien estructurada.\n\n> Si eres principiante en el lenguaje JSON, te recomiendo leer el siguiente artículo de Mozilla:  \n[¿Que es JSON y como se utiliza?](https://developer.mozilla.org/es/docs/Learn/JavaScript/Objects/JSON) \n  \n\nUna vez que entendamos JSON, podemos leer la respuesta que obtuvimos a de la petición anterior:\n\n``` javascript\n{\n  \"message\": \"13540 credits available.\",\n  \"balance\": 13540,\n  \"code\": 200\n}\n\n ```\n\nPodemos ver que el servicio nos retorna un mensaje (message) entendible por el usuario, un balance (tus créditos disponibles) y un código **200** que significa **éxito**.\n\n## Crea tu primer CFDI\n\nComencemos creando nuestro primer CFDI, en donde básicamente debemos armar nuestro string JSON (en el lenguaje de nuestra preferencia).","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":true,"owner":"8359405","team":461484,"collectionId":"83065773-c69e-49f1-861b-ac0b4ee965c6","publishedId":"SVYrrdM9","public":true,"publicUrl":"https://docs.facturadigital.com.mx","privateUrl":"https://go.postman.co/documentation/8359405-83065773-c69e-49f1-861b-ac0b4ee965c6","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"1277D7"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.1","publishDate":"2020-09-18T06:45:09.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[{"name":"Produccion","id":"71b3a56f-a036-4c93-b5ff-f6c4821112c5","owner":"8359405","values":[{"key":"URI","value":"https://app.facturadigital.com.mx/api/v5","enabled":true},{"key":"api_key_demo","value":"","enabled":true}],"published":true}],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/c27d2a8c2f43f20dcaa955e138978b05e9e8a6e3a702f51b388c95bf35b70152","favicon":"https://res.cloudinary.com/postman/image/upload/v1566365503/team/jg7hwflutzdves4towoz.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"},{"label":"Produccion","value":"8359405-71b3a56f-a036-4c93-b5ff-f6c4821112c5"}],"canonicalUrl":"https://docs.facturadigital.com.mx/view/metadata/SVYrrdM9"}