Documentación Técnica Portal de Autofacturación, es una herramienta diseñada para facilitar la generación de facturas electrónicas (CFDIs) a partir de los datos de un ticket o recibo de compra en diversos establecimientos. En esta documentación podrás conocer el API para realizar el guardado de tickets, consulta de resultados y su expiración. Guardar ticket Método para guardar la información de un ticket para la emisión de CFDIs. Endpoint Método Ruta PUT https://[IP]:[Puerto]/{Token}/tickets Autenticación y Headers Header Value authorization Basic {Token} content-type application/json Parámetros Atributos Uso Descripción data Requerido Fecha del ticket en formato AAAA-MM-DDTHH:MM:SS insumo Requerido El insumo del ticket monto Requerido El monto total del ticket numeroTicket Requerido El numero del ticket sucursal Requerido {idSucursal} de la sucursal donde se genero el ticket Ejemplos Request: curl --request PUT \--url http://localhost:8572/b391655ac2242d85ddd36d37b482259b1b7dfc1c/tickets --header 'authorization: Basic dGVwb3g6dGVwb3g=' \--header 'content-type: application/json' \--data '{\n "fecha": "2019-01-25T11:09:46",\n "insumo": "00|CFD33BASE|QA|4.0|\n01|..",\n "monto": 12.36,\n "numeroTicket": "12A31",\n "sucursal": "dsfhjkajsldf45646412"\n}' Response 200: se guardo correctamente Response 400: El no. de ticket no contiene el formato correcto. Consulta de ticket Endpoint Método Ruta GET https://[IP]:[Puerto]/{keyEmpresa}/cfdis Autenticación y Headers Header Value authorization Basic {Token} content-type application/json Parámetros Atributos Uso Descripción ticket Opcional El numero del ticket sucursal Opcional {idSucursal} de la sucursal donde se genero el ticket En caso de no poner parámetros va a retornar la información de todos los tickets Ejemplo Request: curl --request GET \--url http://localhost:8572/b391655ac2242d85ddd36d37b482259b1b7dfc1c/cfdis?ticket=10301&sucursal=0dd6aebbea85662fd2fe2f76ce4258b3 \--header 'authorization: Basic dGVwb3g6dGVwb3g=' \ Response 200: Content-Type: text/plain; charset=UTF-8 { "cfdis":[ {"idSucursal":"62bad600d3acc04aaec64d0712ea02c4", "rfc":"SIMD6406302E8", "razonSocial":"Empresa Pruebas", "fecha":"2019-01-31 12:31:40.0", "folio":"", "status":"ALMACENADO", "uuid":"AFB80450-2813-4046-9B1F-9B6647DD545F", "monto":"453.000000", "idCfd":"589132f6c75db59044ec7a3b49e426bf", "serie":"","subtotal":"453.000000", "descuento":"0.000000", "tipoMoneda":"MXN", "tipoCambio":"1.0000", "iva":"72.480000", "fechaCancelacion":"", "tienePDF":"true", "pedimento":"", "fechaPedimento":"", "aduana":"", "pdfAndXmlDownload":"http://localhost:9050/b391655ac2242d85ddd36d37b482259b1b7dfc1c/descargasCfdi?idCfdi=589132f6c75db59044ec7a3b49e426bf&produccion=true&representacion=XML_PDF", "pdfDownload":"http://localhost:9050/b391655ac2242d85ddd36d37b482259b1b7dfc1c/descargasCfdi?idCfdi=589132f6c75db59044ec7a3b49e426bf&produccion=true&representacion=PDF", "xmlDownload":"http://localhost:9050/b391655ac2242d85ddd36d37b482259b1b7dfc1c/descargasCfdi?idCfdi=589132f6c75db59044ec7a3b49e426bf&produccion=true&representacion=XML", "cancellCfdi":"http://localhost:9050/b391655ac2242d85ddd36d37b482259b1b7dfc1c/cfdis/cancelar/AFB80450-2813-4046-9B1F-9B6647DD545F", "produccion":"true", "noTicket":"12k29" } ] Response 204: Content-Type: text/plain; charset=UTF-8No hay cfdis generados Response 400: Content-Type: text/plain; charset=UTF-8Ticket numero:100 , sucursal: 0dd6aebbea85662fd2fe2f76ce4258b3, aun no genera cfdi Expirar ticket Método para expirar la información de un ticket para la emisión de CFDIs. Endpoint Método Ruta PUT https://[IP]:[Puerto]/{keyEmpresa}/expired Autenticación y Headers Header Value authorization Basic {Token} content-type application/json Parámetros Atributos Uso Descripción noTicket Requerido El numero del ticket sucursal Requerido {idSucursal} de la sucursal donde se genero el ticket Ejemplo Resquest: curl --request POST \--url http://localhost:8572/b391655ac2242d85ddd36d37b482259b1b7dfc1c/expired \--header 'authorization: Basic dGVwb3g6dGVwb3g=' \--header 'content-type: application/json' \--data '{\n"noTicket":"12A30",\n"sucursal":"dsfhjkajsldf45646412"\n}' Response 200: Se expiro no_ticket: 12A30 sucursal : dsfhjkajsldf45646412 Response 400: Ticket numero: 12As30, sucursal: dsfhjkajsldf45646412, no existe