Manual de Usuario - API CFDIs y Retenciones CFDI Puerto asignado para los servicios: 9050 Consulta de tipos de CFDs URL //tiposCfds Parámetros requeridos El parámetro obligatorio es el keyEmpresa Parámetros/filtros opcionales N/A Método http GET Descripción detallada Regresa el Id (encriptado), nombre, serie, idSucursal (encriptado), nómina (boleano) de todos los tipos de CFDs con los que cuenta la empresa en formato json. Notas N/A Códigos respuesta/errores 200 - Ok 204 - No Content - No hay tipos de CFDs 401 - Not Found -  No existe la keyEmpresa Ejemplo https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/tiposCfds Ejemplo respuesta (código 200) [{"id":"d18bb0158356449c31e72cb69e642b31","nombre":"generacion","serie":null,"idSucursal":"6ac9a2c315480d5cc5534c7e58caee5a","nomina":false},{"id":"8e327ff08a2eec8c760a91fbf08f636e","nombre":"nomina","serie":"B","idSucursal":"6ac9a2c315480d5cc5534c7e58caee5a","nomina":false}] Consulta de sucursales URL //sucursales Parámetros requeridos El parámetro obligatorio es el keyEmpresa Parámetros/filtros opcionales N/A Método http GET Descripción detallada Regresa el idSucursal, Nombre y TipoSucursal en formato json de todas las sucursales de la empresa. Notas El parámetro Id es el Id de la sucursal. Códigos respuesta/errores 200 - Ok204 - No Content - No hay sucursales400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa | No existe el Id de la sucursal Ejemplo https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/sucursales Ejemplo respuesta (código 200) [{"idSUCURSAL":"6ac9a2c315480d5cc5534c7e58caee5a","NOMBRE":"Actver Pruebas","TIPOSUCURSAL":"MATRIZ"}] Consulta de CFDI URL //cfdis Parámetros requeridos Al menos uno de los filtros debe ser aplicado Parámetros/filtros opcionales idSucursal (Encriptado)rfc (del receptor)razonSocial (del receptor)fecha (formato yyyy-MM-dd)fechaInicial (formato yyyy-MM-dd)fechaFinal (formato yyyy-MM-dd) seriefolioEspecificofolioInicialfolioFinalstatusuuid (Si es una lista separado por coma cada UUID, ver ejemplo)nombreArchivomonto (BigDecimal)montoInicial (BigDecimal)montoFinal (BigDecimal)pageSizepageNumber Método http GET Descripción detallada Regresa: idSucursal (Encriptado), rfc (del receptor), razonSocial (del receptor), fecha (YYYY-MM-DD hh:mm:ss.s) , folio, status, UUID, monto (BigDecimal), idCfd (Encriptado), serie, subtotal (BigDecimal), descuento (BigDecimal), tipoMoneda, tipoCambio (BigDecimal), iva (BigDecimal), fechaCancelacion (YYYY-MM-DD hh:mm:ss.s), tienePDF (Boleano), pedimento, fechaPedimento (pueden venir varias fechas ), aduana, pdfAndXmlDownload (link para descargar XML y pdf), pdfDownload (link para descargar el pdf), xmlDownload (link para descargar el xml), cancellCfdi (link para cancelar el cfdi) en formato json de todas los CFDIs de la empresa (de no existir el filtros) excepto nóminas Notas El formato para escribir la fecha no acepta horas.El pageSize por defecto es 50 y como máximo puede ser 100.En los headers están los links de paginación de la siguiente serie de documentos si estos sobrepasan los 50 máximos.Es posible jugar con los parámetros para hacer filtrados más detallados. Códigos respuesta/errores 200 - Ok204 - No Content - No existen CFDI401 - Not Found - No existe la keyEmpresa Ejemplo Ejemplo con UUID #1https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdis?uuid=9d8b7b0f-2aa6-47d7-8b45-d3abf26f57d1,c23a6470-9be2-4241-8cfa-fef55525c80fEjemplo con FECHA #2https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdis?fecha=2014-06-30 Ejemplo respuesta (código 200) [{"66a673fbc55109153b7d684ed56b3b63","serie":"","subtotal":"99.090000","descuento":"9999.009000","tipoMoneda":"USD","tipoCambio":"12.5014","iva":"1000008.180000","fechaCancelacion":"","tienePDF":"true","pedimento":"","fechaPedimento":"","aduana":"","pdfAndXmlDownload":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi=66a673fbc55109153b7d684ed56b3b63&representacion=XML_PDF","pdfDownload":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi= 66a673fbc55109153b7d684ed56b3b63&representacion=PDF","xmlDownload":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi= 66a673fbc55109153b7d684ed56b3b63&representacion=XML"}] Consulta de CFDIs de nómina URL //cfdisNomina Parámetros requeridos Al menos debe estar aplicado uno de los parámetros disponibles Parámetros/filtros opcionales idSucursal (Encriptado)rfc (del receptor)razonSocial (del receptor)fecha (formato yyyy-MM-dd)fechaInicial (formato yyyy-MM-dd)fechaFinal (formato yyyy-MM-dd)folioEspecificofolioInicialfolioFinalstatusnombreArchivouuid (Si es una lista separado por coma cada UUID, ver ejemplo)monto (BigDecimal)montoInicial (BigDecimal)montoFinal (BigDecimal)pageSizepageNumber Método http GET Descripción detallada Regresa: idSucursal (Encriptado), rfc (del receptor), razonSocial (del receptor), fecha (YYYY-MM-DD hh:mm:ss.s) , folio, status, UUID, monto (BigDecimal), idCfd (Encriptado), serie, subtotal (BigDecimal), descuento (BigDecimal), tipoMoneda, tipoCambio (BigDecimal), iva (BigDecimal), fechaCancelacion (YYYY-MM-DD hh:mm:ss.s), tienePDF (Boleano), pedimento, fechaPedimento (pueden venir vairias fechas ), aduana, pdfAndXmlDownload (link para descargar XML y pdf), pdfDownload (link para descargar el pdf), xmlDownload (link para descargar el xml), cancellCfdi (link para cancelar el cfdi) en formato json de todas las nóminas de la empresa (de no existir el filtros) Notas El formato para escribir la fecha no acepta horas.El pageSize por defecto es 50 y como máximo puede ser 100.En los headers están los link de paginación de la siguiente serie de documentos si estos sobrepasan los 50 máximos.Es posible jugar con los parámetros para hacer filtrados más detallados. Códigos respuesta/errores 200 - Ok204 - No Content - No existen CFDI de nómina401 - Not Found - No existe la keyEmpresa Ejemplo Ejemplo con UUID #1https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdisNomina?uuid=97c05608-58aa-4087-886d-82a69a86bc98Ejemplo con FECHA #2https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdisNomina?fecha=2014-06-18 Ejemplo respuesta (código 200) [{"66a673fbc55109153b7d684ed56b3b63","serie":"","subtotal":"99.090000","descuento":"9999.009000","tipoMoneda":"USD","tipoCambio":"12.5014","iva":"1000008.180000","fechaCancelacion":"","tienePDF":"true","pedimento":"","fechaPedimento":"","aduana":"","pdfAndXmlDownload":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi=66a673fbc55109153b7d684ed56b3b63&representacion=XML_PDF","pdfDownload":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi= 66a673fbc55109153b7d684ed56b3b63&representacion=PDF","xmlDownload":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi= 66a673fbc55109153b7d684ed56b3b63&representacion=XML"}] Generación de CFDI URL //cfdis Parámetros requeridos idTipoCfd (Encriptado)idSucursal (Encriptado)nombre (nombre del archivo fuente opcional)archivoFuente (El parámetro es el texto contenido del archivo fuente) de acuerdo al conector/adaptador configurado Parámetros/filtros opcionales N/A Método http PUT Descripción detallada Regresa: idSucursal (Encriptado), rfc (del receptor), razonSocial (del receptor), fecha (YYYY-MM-DD hh:mm:ss.s) , folio, status, UUID, monto (BigDecimal), idCfd (Encriptado), serie, subtotal (BigDecimal), descuento (BigDecimal), tipoMoneda, tipoCambio (BigDecimal), iva (BigDecimal), fechaCancelacion (YYYY-MM-DD hh:mm:ss.s), tienePDF (Boleano), pedimento, fechaPedimento (pueden venir vairias fechas ), aduana, pdfAndXmlDownload (link para descargar XML y pdf), pdfDownload (link para descargar el pdf), xmlDownload (link para descargar el xml), cancellCfdi (link para cancelar el cfdi) en formato json del CFDI generado. Notas De existir un problema en el proceso del CFDI se regresan los errores de generación que se tuvieron.ES IMPORTANTE MENCIONAR que el contenido del documento a emitir se colocar en el Request Payload en estructura JSONEn los headers se debe poner: "Content-Type: application/json"Se debe incluir el salto de línea entre registros utilizando “\n” Ejemplo: |00|idcfd|FAC|\n Códigos respuesta/errores 200 - Ok400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa Ejemplo https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdis{"idTipoCfd":"d18bb0158356449c31e72cb69e642b31","idSucursal":"6ac9a2c315480d5cc5534c7e58caee5a","nombre":"prueba.txt","archivoFuente":"|00|idcfd|FAC|\n01|1|||20140630T00:00:00|99.09|9999.09|||9999.009||Noventa y nueve billones novecientos noventa y nueve mil novecientos noventa y nueve millones novecientos noventa y nueve mil novecientos noventa y nueve 90\/10000000|USD|12.5014|REFERENCIA XXXAAAXXX|Primera Observación|Segunda Observación|Tercera Observación|\n02|PAGO EN UNA SOLA EXHIBICIÓN|10% DE INTERÉS SI NO SE PAGA ANTES DEL 05-AGOSTO-2010|CHEQUE|2010-08-05|EFECTOS FISCALES AL PAGO|\n03|01|AAA010101AAA|PATITO, S.A. DE C.V.|MÉXICO|AVENIDA CALLE |S\/N|INT. 1|COL. COLONIA|MÉXICO|REFERENCIA FRENTE AL OXXO|CUAJIMALPA|ESTADO DE MÉXICO|06860|4424876399|\n05|405010|802011|3|BOMBA MOLOTOV|150.00|450.00|PZA|Categoría 5e|205010|\n05|405011|802012|1|DISFRAZ DE CORRECAMINOS|2368231872779.000009|884346835174.000009|PZA|Categoría 5e|205011|\n05|405012|802013|10|COMIDA DE CORRECAMINOS|39.00|390.00|KG|Categoría 5e|205010|\n05|405013|802014|1|LIGA DE HULE GIGANTE|378.00|378.00|PZA|Categoría 5e|205011|\n06|IVA|16.00|9.09|\n07|IVA|58.58|\n06|IVA|16.00|999999.09|\n07|IVA|58.58|\n08|405010|APTO INTL DE CIUDAD DE MEXICO|2010-06-29|548984124578124||\n08|405011|APTO INTL DE CIUDAD DE MEXICO|2010-06-29|654651456987452||\n99|15||"} Ejemplo respuesta (código 200) "uuid": "3D5DAEF4-FE52-44A5-9C82-84B6B293EC7E","fecha": "2020-05-23 17:09:00.0","serie": "D01","folio": "1000","rfc": "OIAD8404189S3","iva": "134.390000","monto": "974.390000","descuento": "0.000000","subtotal": "840.000000","tipoCambio": "1.0000","tipoMoneda": "MXN","idCfd": "60014b09e2d75d1ac1260b7c4e780c00","idSucursal": "0dd6aebbea85662fd2fe2f76ce4258b3","status": "ALMACENADO","produccion": true,"fechaCancelacion": "","tienePDF": "true","pedimento": "","fechaPedimento": "","aduana": "","pdfAndXmlDownload": "/03317bd7-c60d-434f-958d-65344238e75f/descargasCfdi?idCfdi=60014b09e2d75d1ac1260b7c4e780c00&produccion=true&representacion=XML_PDF","pdfDownload": "/03317bd7-c60d-434f-958d-65344238e75f/descargasCfdi?idCfdi=60014b09e2d75d1ac1260b7c4e780c00&produccion=true&representacion=PDF","xmlDownload": "/03317bd7-c60d-434f-958d-65344238e75f/descargasCfdi?idCfdi=60014b09e2d75d1ac1260b7c4e780c00&produccion=true&representacion=XML"} Descarga del CFDI URL //descargasCfdi Parámetros requeridos Al menos debe estar aplicado uno de los parámetros disponibles Parámetros/filtros opcionales rfc (del receptor)razonSocial (del receptor)fecha (formato yyyy-MM-dd)fechaInicial (formato yyyy-MM-dd)fechaFinal (formato yyyy-MM-dd)seriefolioEspecificofolioInicialfolioFinalidSucursal (Encriptado)nombreArchivouuid (Si es una lista separado por comas cada UUID, ver ejemplo)statuspageSizepageNumberrepresentacion: este puede ser XML o PDF o XML_PDF o ACUSE o ACUSE_PDF. Método http GET Descripción detallada 1.- Si se solicita XML y PDF o varios documentos se devolverá un archivo tipo ZIP.2.- Si se solicita solo un CFDI, dependiendo del parámetro de representación se devolverá UN archivo XML o PDF dentro de un ZIP.3.- Si no se incluye el parámetro se devolverá XML y PDF dentro de un zip. Notas El pageSize por defecto es 50 y como máximo puede ser 100.Contemplar el tiempo de construcción del PDF (600 PDF x minuto).En los headers están los link de paginación de la siguiente serie de documentos si estos sobrepasan los 50 máximos.Es posible jugar con los parámetros para hacer filtrados más detallados. Códigos respuesta/errores 200 - Ok 204 - No Content - No existen CFDI400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa | No hay CFDIs para descargar Ejemplo Ejemplo #1https://10.0.0.183:9050/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?representacion=XML&pageSize=1Ejemplo #2https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?uuid=9d8b7b0f-2aa6-47d7-8b45-d3abf26f57d1,dabcea47-2e61-4cdb-b71e-e43c0d108ae3 Ejemplo respuesta (código 200) Ejemplo #1(Se descarga el archivo de tipo XML (Este no puede ser de tipo Nómina))Ejemplo #2(Se descarga un documento de tipo ZIP, el cual contiene los archivos XML y PDF del CFDI correspondiente al UUID indicando en la URL) Descarga de nómina URL //descargasCfdiNominas Parámetros requeridos Al menos uno de los filtros, no puede ir vacío Parámetros/filtros opcionales rfc (del receptor)razonSocial (del receptor)fecha (formato yyyy-MM-dd)fechaInicial (formato yyyy-MM-dd)fechaFinal (formato yyyy-MM-dd)seriefolioEspecificofolioInicialfolioFinalidSucursal (Encriptado)nombreArchivouuid (Si es una lista separado por comas cada UUID, ver ejemplo)statuspageSizepageNumberrepresentacion: este puede ser XML o PDF o XML_PDF. Método http GET Descripción detallada 1.- Si se solicita XML y PDF o varios documentos se devolverá un archivo tipo ZIP.2.- Si se solicita solo un CFDI, dependiendo del parámetro de representación se devolverá UN archivo XML o PDF.3.- Si no se incluye el parámetro se devolverá XML y PDF. Notas El pageSize por defecto es 50 y como máximo puede ser 100.Contemplar el tiempo de construcción del PDF (600 PDF x minuto).Si se desea solo descargar el PDF poner "xml=false" en los parámetros.Si se desea solo descargar el XML poner "pdf=false" en los parámetros.En los headers están los link de paginación de la siguiente serie de documentos si estos sobrepasan los 50 máximos.Es posible jugar con los parámetros para hacer filtrados más detallados. Códigos respuesta/errores 200 - Ok 204 - No Content - No existen CFDI Nómina400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa | No hay CFDIs para descargar Ejemplo Ejemplo #1https://10.0.0.183:9050/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdiNominas?representacion=XML &pageSize=1Ejemplo #2https://localhost:9050/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdiNominas?uuid=97c05608-58aa-4087-886d-82a69a86bc98 Ejemplo respuesta (Código 200) Ejemplo #1Se descarga un documento de tipo XML (Este solo puede ser de tipo Nómina))Ejemplo #2(Se descarga un documento de tipo ZIP, el cual contiene los archivos de tipo XML y PDF del CFDI correspondiente al UUID indicado en la URL). Consulta del número de CFDIs generados URL //cfdis/consumo/generacion Parámetros requeridos {fecha (yyyy-MM-dd)}{fechaInicial (yyyy-MM-dd), fechaFinal (yyyy-MM-dd)} Parámetros/filtros opcionales N/A Método http GET Descripción detallada Regresa la cantidad de CFDIs generados en la fecha/s indicada/s Notas Forzosamente debe de haber una fecha específica (fecha) o un rango de fechas (fechaInicial, fechaFinal). Códigos respuesta/errores 200 - Ok400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa Ejemplo https://10.0.0.183:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdis/consumo/generacion?fecha=2014-07-02 Ejemplo respuesta (código 200) 3525 (la respuesta es numérica) Consulta del número de CFDIs cancelados URL //cfdis/consumo/cancelacion Parámetros requeridos {fecha (yyyy-MM-dd)}{fechaInicial (yyyy-MM-dd), fechaFinal (yyyy-MM-dd)} Parámetros/filtros opcionales N/A Método http GET Descripción detallada Regresa la cantidad de CFDIs cancelados en la fecha/s indicada/s Notas Forzosamente debe de haber una fecha específica (fecha) o un rango de fechas (fechaInicial, fechaFinal). Códigos respuesta/errores 200 - Ok400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa Ejemplo https://10.0.0.183:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdis/consumo/cancelacion?fechaInicial=2013-04-01&fechaFinal=2014-01-01 Ejemplo respuesta (código 200) 0 (la respuesta es numérica) Cancelación de CFDI múltiple URL //cfdis/cancelar Parámetros requeridos UUID (Lista de UUIDs en json, ver ejemplo) Solo aplica para cuando es motivo diferente a 01 Parámetros/filtros opcionales N/A Método http POST Descripción detallada Regresa los UUIDs, status (Numero) y descripciones de cada cfdi cancelado en formato json. Notas En los headers se debe poner: "Content-Type: application/json" Códigos respuesta/errores 200 - Ok400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa 500 - No se puede cancancelar los comprobantes con los siguientes UUID, verifique que sean válidos y que pertenezcan a la empresa. Ejemplo https://10.0.0.183:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdis/cancelar?data para el motivo 01: {"motivo": "01","folioSustitucion": "B5E6897B-40A7-4DEA-ADD2-F417B32EE908","uuid": ["B5E6897B-40A7-4DEA-ADD2-F417B32EE909"]} data para el motivo 02,03 y 04: {"motivo": "02","uuid": ["B5E6897B-40A7-4DEA-ADD2-F417B32EE909", "B5E6897B-40A7-4DEA-ADD2-F417B32EE909"]} Ejemplo respuesta (código 200) [{"uuid":"A07F61BD-4E1D-E504-9F3F-902DA4D622B3","status":"201","descripcion":"UUID Cancelado"}, {"uuid":"d5cdbe22-b117-4ca7-bfbb-ddef8e22b0f4","status":"201","descripcion":"UUID Cancelado"}] Cancelación de CFDI múltiple URL URL //cfdis/cancelarUrl Parámetros requeridos UUID (Lista de UUIDs en json, ver ejemplo) Solo aplica para cuando es motivo diferente a 01 Parámetros/filtros opcionales N/A Método http POST Descripción detallada Regresa los UUIDs, status (Numero) y descripciones de cada cfdi cancelado en formato json. Notas En los headers se debe poner: "Content-Type: application/json" Códigos respuesta/errores 200 - Ok400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa 500 - No se puede cancancelar los comprobantes con los siguientes UUID, verifique que sean válidos y que pertenezcan a la empresa. Ejemplo https://10.0.0.183:9050/985408d8-64ae-48e0-b46c-473b47176205/cfdis/cancelar?data para el motivo 01: {"motivo": "01","folioSustitucion": "B5E6897B-40A7-4DEA-ADD2-F417B32EE908","uuid": ["B5E6897B-40A7-4DEA-ADD2-F417B32EE909"]} data para el motivo 02,03 y 04: {"motivo": "02","uuid": ["B5E6897B-40A7-4DEA-ADD2-F417B32EE909", "B5E6897B-40A7-4DEA-ADD2-F417B32EE909"]} Ejemplo respuesta (código 200) [{"uuid":"A07F61BD-4E1D-E504-9F3F-902DA4D622B3","status":"201","descripcion":"UUID Cancelado","URLAcuse_XML":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi=66a673fbc55109153b7d684ed56b3b63&representacion=ACUSE","URLAcuse_PDF":"/985408d8-64ae-48e0-b46c-473b47176205/descargasCfdi?idCfdi=66a673fbc55109153b7d684ed56b3b63&representacion=ACUSE_PDF"}] Motivo de Cancelación Clave Descripción 01 Comprobante emitido con errores con relación 02 Comprobante emitido con errores sin relación 03 No se llevó a cabo la operación 04 Operación nominativa relacionada en una factura global Códigos de Cancelación Código Descripción 201 Petición aceptada. 202 Folio Fiscal Previamente Cancela 203 Folio Fiscal No Correspondiente al Emisor 204 Folio Fiscal No Aplicable a Cancelación 205 Folio Fiscal No Existente 206 UUID no corresponde a un CFDI del Sector Primario 207 No se especificó el motivo de cancelación o el motivo no es válido 208 Folio Sustitución inválido 209 Folio Sustitución no requerido 210 La fecha de solicitud de cancelación es mayor a la fecha de declaración 211 La fecha de solicitud de cancelación límite para factura global 212 Relación no válida o inexistente 300 Usuario No Válido 301 XML mal formado. 302 Sello mal formado o inválido. 303 Sello no corresponde a emisor o caduco. 304 Certificado revocado o caduco. 305 Certificado Inválido 306 El certificado no es de tipo CSD. 307 El CFDI contiene un timbre previo. 308 Certificado no expedido por el SAT. 309 Certificado Inválido 310 CSD Inválido 402 RFC del emisor no se encuentra en el régimen de contribuyentes. 407 Error en el servicio de cancelación del SAT. 800 NO_ENCONTRADO 801 NO_CANCELA BLE 802 EN_PROCESO 901 El cliente con el CustomerKey proporcionado no es válido. 902 El RFC no está registrado como cliente. 903 El RFC se encuentra inactivo por el momento. 904 No cuenta con licencia para realizar peticiones. 905 El RFC no pertenece al cliente con el CustomerKey que proporcionó. 906 Ha expirado su periodo de pruebas. 910 No se puede determinar el cliente a partir del RFC. 998 Error en el cliente. 999 Error en el servidor. Consulta de cancelación URL //cfdis/consultaCancelacion Parámetros requeridos El parámetro obligatorio es el UUID en este caso, en formato json. Parámetros/filtros opcionales N/A Método http POST Descripción detallada Regresa el UUID, status del CFDI. Notas N/A Códigos respuesta/errores 200 - Ok400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/cfdis/consultaCancelacion{"uuid":["3BC513EC-FD2A-4B66-AAB2-4C46BC976C7A"]} Ejemplo respuesta (código 200) [{"uuid":"3BC513EC-FD2A-4B66-AAB2-4C46BC976C7A ","status":"CANCELABLE_SIN_ACEPTACION"}] Status que regresa el API VIGENTECANCELABLE_CON_ACEPTACIONCANCELABLE_SIN_ACEPTACIONNO_CANCELABLENO_ENCONTRADOEN_PROCESOCANCELADO_PLAZO_VENCIDOCANCELADO_CON_ACEPTACIÓNCANCELADO_SIN_ACEPTACIÓNSOLICITUD_RECHAZADA Retenciones Consulta tipos de retenciones URL //tiposCfdsRetenciones Parámetros requeridos El parámetro obligatorio es el keyEmpresa Parámetros/filtros opcionales pageSize (min = 1, max = 100, default = 50)pageNumber (min = 0, default = 0) Método http GET Descripción detallada Regresa el id del tipo de retención, el nombre de la retención y el id de la sucursal a la cual pertenece la retención. Notas N/A Códigos respuesta/errores 200 - Ok204 - No Content - No hay tipos de CFDI de retención401 - Not Found - No existe la keyEmpresa Ejemplo https://10.0.0.183:9050/985408d8-64ae-48e0-b46c-473b47176205/tiposCfdsRetenciones Ejemplo respuesta (código 200) [{"idTipoCfdRetencion":"51bcbd36d5f0cbf971e3cbb0bea7567a","nombre":"Retencion","idSucursal":"2575797c4c7933f6f067e054240fc48b","produccion":true}] Consulta CFDI de retenciones URL //cfdisretencion Parámetros requeridos Al menos uno de los filtros, no puede ir vacío Parámetros/filtros opcionales pageSize (min = 1, max = 100, default = 50)pageNumber (min = 0, default = 0)idSucursal (id de la sucursal, encriptado)rfcReceptorrazonSocial (del receptor)fecha (yyyy-mm-dd ó yyyy-MM-dd h:mm:ss)fechaInicial (yyyy-mm-dd ó yyyy-MM-dd h:mm:ss)fechaFinal (yyyy-mm-dd ó yyyy-MM-dd h:mm:ss)status ('ACTIVO','CANCELADO')uuid
nombreArchivo (nombre archivo fuente)montomontoInicialmontoFinal Método http GET Descripción detallada Regresa el id del cfdi de retención, el id de la sucursal de a retención, el RFC del receptor, la razón social del receptor, la fecha de emisión del documento, el status del documento, el uuid del documento, el monto, la fecha de cancelacion del documentos (si está cancelado), la liga de descarga del documento en sus versiones XML y PDF, liga de descarga del documento en formato XML, liga de descarga del documento en PDF, la liga con la que se podría cancelar el documento. Notas Regresa el id del tipo de retención, el nombre de la retención y el id de la sucursal a la cual pertenece la retención Códigos respuesta/errores 200 - Ok204 - No Content - No existen CFDI de retención401 - Not found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/ cfdisretencion?pageSize=50&pageNumber=1&rfcReceptor=MURR750516812 Ejemplo respuesta (código 200) ["idCfdiRetencion": "1dccc6e57b1d443c3e1a1ffd5095f382","idSucursal": "6ac9a2c315480d5cc5534c7e58caee5a","rfcReceptor": "MURR750516812","razonSocial": "Razón Social Nacional","fecha": "2015-01-24T01:18:22","status": "CANCELADO","uuid": "2310EABB-5F39-4694-8FBD-1EA0842C8113","monto": "3252.500000","fechaCancelacion": "","pdfAndXmlDownload": "/985408d8-64ae-48e0-b46c-473b47176205/cfdisretencion/descarga?uuid=2310EABB-5F39-4694-8FBD-1EA0842C8113&representacion=XML_PDF","pdfDownload": "/985408d8-64ae-48e0-b46c-473b47176205/cfdisretencion/descarga/pdf?uuid=3bf7942709f6eb925d26dae62c63f8c287b8868661bc4a69ce1e3c2e10ff98bd6486140ef80ba7ac7867620b4fc94fed", "xmlDownload": "/985408d8-64ae-48e0-b46c-473b47176205/cfdisretencion/descarga/xml?uuid=3bf7942709f6eb925d26dae62c63f8c287b8868661bc4a69ce1e3c2e10ff98bd6486140ef80ba7ac7867620b4fc94fed"}] Descarga CFDI de retención URL //cfdisretencion/descarga? descargasCfdi descargasCfdi descargasCfdipageSize=x&pageNumber=x Parámetros requeridos Al menos uno de los filtros, no puede ir vacío Parámetros/filtros opcionales pageSize (min = 1, max = 100, default = 50)pageNumber (min = 0, default = 0)idSucursal (id de la sucursal, encriptado)rfcReceptorrazonSocial (razón social del receptor)fecha (yyyy-mm-dd ó yyyy-MM-dd h:mm:ss)fechaInicial (yyyy-mm-dd ó yyyy-MM-dd h:mm:ss)fechaFinal (yyyy-mm-dd ó yyyy-MM-dd h:mm:ss)status ('ACTIVO','CANCELADO')uuid
nombreArchivo (nombre archivo fuente)montomontoInicialmontoFinalrepresentación (XML o PDF, XML_PDF); si no se especifica se toma XML como default Método http GET Descripción detallada Regresa el archivo zip teniendo como contenido, los documentos resultantes de la consulta realizada. Notas N/A Códigos respuesta/errores 200 - Ok204 - No Content - No hay CFDI de retención400 - Bad Request - Parámetros incorrectos 401 - Not found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/ cfdisretencion/descarga?pageSize=50&pageNumber=1&rfcReceptor=AAA010101AAA Ejemplo respuesta (código 200) El ZIPContent-Type=application/zip
Content-Disposition=attachment;lename="1441221373984.zip" Descarga CFDI retenciones XML URL //cfdisretencion/descarga/xml Parámetros requeridos El parámetro obligatorio es el keyEmpresa y el uuid (encriptado) Parámetros/filtros opcionales N/A Método http GET Descripción detallada Regresa el archivo XML del cfdi solicitado Notas N/A Códigos respuesta/errores 200 - Ok204 - No Content - No existen CFDI de retención400 - Bad Request - Parámetros incorrectos401 - Not found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/ cfdisretencion/descarga/xml?uuid=7e00413dcf1b605e189b9a91972 Ejemplo respuesta (código 200) El XML
Content-Type=application/xml
Content-Disposition=attachment;lename="D095EF45-0465-4BBD-8F74-DE9576B909CA.xml" Descarga CFDI retenciones PDF URL //cfdisretencion/descarga/pdf Parámetros requeridos El parámetro obligatorio es el keyEmpresa y el uuid (encriptado) Parámetros/filtros opcionales N/A Método http GET Descripción detallada Regresa el archivo PDF del cfdi solicitado Notas N/A Códigos respuesta/errores 200 - Ok204 - No Content - No existen CFDI de retención400 - Bad Request - Parámetros incorrectos401 - Not found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/ cfdisretencion/descarga/pdf?uuid=7e00413dcf1b605e189b9a91972 Ejemplo respuesta (código 200) El PDF
Content-Type=application/pdf
Content-Disposition=attachment;lename="D095EF45-0465-4BBD-8F74-DE9576B909CA.pdf" Generación de retenciones URL //cfdisretencion Parámetros requeridos El parámetro obligatorio es el keyEmpresa, el id del tipo de retención, id de la sucursal a la que pertenece el tipo de retención y finalmente el contenido del archivo fuente de acuerdo al layout configurado. Parámetros/filtros opcionales N/A Método http POST Descripción detallada Generación exitosaDevuelve el id del cfdi de retención que se ha emitido, el id de la sucursal en la que se emitió, el RFC del receptor, la razón social del receptor, la fecha de emisión, el estatus del documento, el uuid, el monto, la fecha de cancelacion(aunque en este caso de emisión, siempre se encontrará vacío este campo), la ligas de descarga para el XML y PDF juntos, para el XML (individual), PDF (individual) y finalmente la liga de cancelacion (con la que se podría cancelar el documento posteriormente) ErrorEste error tiene que ver con la generación del CFDI de retención y no con el error que podría ocurrir al consumir este servicio.En este caso se devolverá el error que el motor de generación de la solución arroja. Notas Para separar las líneas del contenido del archivo fuente se deberá utilizar /n Códigos respuesta/errores 200 - Ok400 - Bad Request - Parámetros incorrectos401 - Not found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/cfdisretencion?data: {"idTipoCfdRetencion":"332c2994597401415717c9de2e21d207",
"idSucursal":"6ac9a2c315480d5cc5534c7e58caee5a",
"archivoFuente":"RET00|1.0|12345|2015-09-02T00:00:00-06:00|03|DescRetenc|\nRET01|BADD110313HCMLNS09|\nRET02|Nacional|\nRET020|MURR750516812|Razón Social Nacional|BADD110313HCMLNS09|\nRET03|1|1|2015|\nRET04|3252.5|0.00|0.00|0.00|\nRET040|0.00|01|0.00|Pago definitivo|\nRET99|" } Ejemplo respuesta (código 200) ["idCfdiRetencion": "1dccc6e57b1d443c3e1a1ffd5095f382","idSucursal": "6ac9a2c315480d5cc5534c7e58caee5a","rfcReceptor": "MURR750516812","razonSocial": "Razón Social Nacional","fecha": "2015-01-24T01:18:22","status": "CANCELADO","uuid": "2310EABB-5F39-4694-8FBD-1EA0842C8113","monto": "3252.500000","fechaCancelacion": "","pdfAndXmlDownload": "/985408d8-64ae-48e0-b46c-473b47176205/cfdisretencion/descarga?uuid=2310EABB-5F39-4694-8FBD-1EA0842C8113&representacion=XML_PDF","pdfDownload": "/985408d8-64ae-48e0-b46c-473b47176205/cfdisretencion/descarga/pdf?uuid=3bf7942709f6eb925d26dae62c63f8c287b8868661bc4a69ce1e3c2e10ff98bd6486140ef80ba7ac7867620b4fc94fed", "xmlDownload": "/985408d8-64ae-48e0-b46c-473b47176205/cfdisretencion/descarga/xml?uuid=3bf7942709f6eb925d26dae62c63f8c287b8868661bc4a69ce1e3c2e10ff98bd6486140ef80ba7ac7867620b4fc94fed"}] Cancelación de retenciones URL //cfdisretencion/cancelar Parámetros requeridos keyEmpresa y los UUIDs de los documentos a cancelar Parámetros/filtros opcionales N/A Método http POST Descripción detallada Por cada CFDI de retención cancelado, se devuelve el uuid, el status (código de estatus), el http code y en la descripción el XML del acuse de cancelación Notas Hasta 500 documentos a cancelar Códigos respuesta/errores 200 - Ok401 - Not found - No existe la keyEmpresa403 - Alguno de los UUIDs proporcionados no se encontró o no pertenece a la empresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/cfdisretencion/cancelar?data para el motivo 01: {"motivo": "01","folioSustitucion": "B5E6897B-40A7-4DEA-ADD2-F417B32EE908","uuid": ["B5E6897B-40A7-4DEA-ADD2-F417B32EE909", "B5E6897B-40A7-4DEA-ADD2-F417B32EE909"]} data para el motivo 02,03 y 04: {"motivo": "02","uuid": ["B5E6897B-40A7-4DEA-ADD2-F417B32EE909", "B5E6897B-40A7-4DEA-ADD2-F417B32EE909"]} Ejemplo respuesta (código 200) [{"uuid": "DAC5C869-3DC3-41A1-85F3-FE113E7046AF",
"status": 1201,
"httpCode": 200,
"description": " 0AA0A514-6997-4C1B-8A36-89BB0CB1B26512010101E53227-38EC-458D-B1D4-08F2B533F98Bnot(ancestor-or-self::*[local-name()='Signature'])fMuB/Ee3grx4cDFX+GRpnX3ME0l9dLTLdbiYXundyMPS+GOZ1AR2XMtepTSZiD08NzAwF2nFFHWkZOIEU3a4Dw==D4rC8c5ZK2eXtbJWQ2C6xOTeW3dkPIf6u2+i6DbX1FTXqPkVW1dcm4i+I9GEetpJOfS6pSxGBa152QBPimJBNg==30001000000400001215nbtVtkPquCMLdpgeClMrTmxzCjyjn8P9YrBlW9jXC/FcXozIYHvzctK1pRxRxLTKlChc9fjluht9ffDfGOWim/4AlTrCiG6om7ItkHbLGMQrABp8qGY+SPmq1xtZ7qbbgoTFCtzP3pN9Z4uSDhdnrF2655sdmDzHJYE9MirNLM4SIdSFsabA31CCAMaWpB4TO6ZmExLp+wUiUyeIFWswc5G5KvmS/lU5tbXLK7zBDDUVjN0K1r/0iaZIZzPMxQcgfgYBrfLGZ3916MkmF28iBk5l1sfNTKS9S445QHKc+6oTP4UDDnjN/K14YWX449BAMxKcelEpjZlBQs1a1eNVcQ==AQAB"}] Motivo de Cancelación Clave Descripción 01 Comprobante emitido con errores con relación 02 Comprobante emitido con errores sin relación 03 No se llevó a cabo la operación 04 Operación nominativa relacionada en una factura global Consultar los CFDIs cancelados por rango de fechas La consulta por fecha y rango de fecha solo aplica para los comprobantes cancelados posteriores a la versión 3.64, todo lo que se canceló con una versión anterior no podrá ser consultada. URL //cfdis/consultaCancelacion Parámetros requeridos Al menos un  parámetro, en formato json. Parámetros/filtros opcionales uuid fecha (yyyy-MM-dd)fechaInicial (yyyy-MM-dd)fechaFinal (yyyy-MM-dd) estados pageSize (min = 1, max = 500, default = 100)pageNumber (min = 0, default = 0) Método http POST Descripción detallada Regresa el UUID, Estatus del CFDI. Notas N/A Códigos respuesta/errores 200 - Ok 204 - No content400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/cfdis/consultaCancelacion{"uuid":["3BC513EC-FD2A-4B66-AAB2-4C46BC976C7A"]} Ejemplo respuesta (código 200) [{"uuid":"3BC513EC-FD2A-4B66-AAB2-4C46BC976C7A ","status":"CANCELABLE_SIN_ACEPTACION"}] Ejemplo respuesta (error) [{"uuid":"52CE170D-20DB-45B7-84EF-F886537163B1","status":"NO_TRALIX"}] Parámetros para la consulta de estados VIGENTECANCELABLE_CON_ACEPTACIONCANCELABLE_SIN_ACEPTACIONNO_CANCELABLENO_ENCONTRADOEN_PROCESOCANCELADO_PLAZO_VENCIDOCANCELADO_CON_ACEPTACIÓNCANCELADO_SIN_ACEPTACIÓNSOLICITUD_RECHAZADA Nota* para poder utilizar los estados estos deben de ir acompañados de fecha o o fechaInicial y fechaFinal Consultar los CFDIs cancelados indicando las fechas URL //cfdis/consultaCancelacionFecha Parámetros requeridos Al menos un  parámetro, en formato json. Parámetros/filtros opcionales uuid fecha (yyyy-MM-dd)fechaInicial (yyyy-MM-dd)fechaFinal (yyyy-MM-dd) estados pageSize (min = 1, max = 500, default = 100)pageNumber (min = 0, default = 0) Método http POST Descripción detallada Regresa el UUID, Estatus del CFDI. Fecha de cancelación. Notas N/A Códigos respuesta/errores 200 - Ok 204 - No content400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa Ejemplo https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/cfdis/consultaCancelacion{"uuid":["3BC513EC-FD2A-4B66-AAB2-4C46BC976C7A"]} https://localhost:9050/6df9515e-6c7d-46fc-a2a8-86080ce9ba2f/cfdis/consultaCancelacionFecha{"fecha":"2019-10-01","estados":["CANCELADO_SIN_ACEPTACION"]} Ejemplo respuesta (código 200) [{"uuid":"3BC513EC-FD2A-4B66-AAB2-4C46BC976C7A ","status":"CANCELABLE_SIN_ACEPTACION","fecha":"2020-01-20"}] Ejemplo respuesta (error) [{"uuid":"52CE170D-20DB-45B7-84EF-F886537163B1","status":"NO_TRALIX", "fecha": "la fecha de hoy"}] Parámetros para la consulta de estados VIGENTE CANCELABLE_CON_ACEPTACION CANCELABLE_SIN_ACEPTACION NO_CANCELABLE NO_ENCONTRADO EN_PROCESO CANCELADO_PLAZO_VENCIDO CANCELADO_CON_ACEPTACIÓN CANCELADO_SIN_ACEPTACIÓN SOLICITUD_RECHAZADA Nota* para poder utilizar los estados estos deben de ir acompañados de fecha o o fechaInicial y fechaFinal. Consultar los CFDI enviados La consulta solo aplica para el servicio de Email Rastreable URL //emailRastreable/report Parámetros requeridos Al menos un  parámetro, en formato json. Parámetros/filtros opcionales fechaInicial (yyyy-MM-dd)fechaFinal (yyyy-MM-dd) tiposCfdi tipoReporte (OPEN, SEND) page Método http POST Descripción detallada Regresa el UUID, Estatus del CFDI. Notas N/A Códigos respuesta/errores 200 - Ok 204 - No content400 - Bad Request - Parámetros incorrectos401 - Not Found - No existe la keyEmpresa Ejemplo {"fechaInicial" : "2020-01-01","fechaFinal" : "2020-11-19","tiposCfdi" : ["cfdi33", "nomina"],"tipoReporte" : "OPEN","page": 1} Ejemplo respuesta {"page": 1,"lastPage": true,"reports": [{"uuid": "BCB0B52D-9A13-52AC-B432-DDDD29FF15EE","serie": "","folio": "","rfcReceptor": "","razonSocial": "","monto": "","fechaEmision": "","tipoCfdi": "baseJhoanProd","email": "jose.martinez@tralix.com","fecha": "2020-10-23 22:15:52","estatus": "OPEN"}} Parámetros para la consulta de estados fechaInicial: campo tipo fecha con formato es yyyy-MM-ddfechaFinal: campo tipo fecha con formato es yyyy-MM-ddtiposCfdi: campo tipo ArraytipoReporte: Campo tipo String, valores posibles "OPEN y "SEND"page: Campo numérico Nota: page: indica el número de páginalastPage: indica si es la última página