PAC - Documentación Cancelación Legales . Queda estrictamente prohibida la reproducción total o parcial de este documento, por cualquier medio y para cualquier fin, sin la autorización previa y por escrito de Tralix México, S. de R.L. de C.V. Este documento y su contenido pueden incluir, entre otros, marcas registradas, nombres comerciales, logotipos, avisos comerciales, diseños industriales y demás elementos protegidos por las leyes de propiedad industrial e intelectual. Todos estos signos distintivos son propiedad exclusiva de Tralix México, S. de R.L. de C.V., y están legalmente protegidos. El acceso, posesión o consulta de este documento no otorga, en ningún caso, licencia ni derecho alguno para usar, reproducir, distribuir, modificar o explotar, total o parcialmente, los elementos distintivos de Tralix México. Cualquier uso no autorizado constituirá una infracción a la normativa aplicable y podrá dar lugar al ejercicio de acciones legales. Tralix México se reserva el derecho de modificar, sin previo aviso, las especificaciones, características o alcances de sus productos y servicios. Copyright © 2025 Tralix México, S. de R.L. de C.V. Todos los derechos reservados.Contenido Cancelación Consulta de Estados Consulta de CFDIs Relacionados Pendientes de Cancelación Aceptación y Rechazo Al servicio del Timbrador se le adicionaron 4 endpoints nuevos, los cuales corresponden a los Web Services de la nueva cancelación del SAT. Se mencionan cada uno de ellos con un ejemplo de como se realizan las peticiones y sus respuestas. Al ser WS Espejos de los del SAT, la documentación de cada uno de ellos es casi la misma que la del SAT, solo adicionando el header de Autenticación a nuestro servicio.Cancelación CFDI Producto: PAC Tralix 1 Introducción El Web Service de Cancelación proporcionado por Tralix tiene la misma definición que el servicio del SAT expuesto hacia los PAC’s, esto tiene como consecuencia que el cliente al hacer la petición de cancelación hacia el servicio de Tralix debe emplear obligatoriamente XMLSignature para firmar la petición. Una vez teniendo la petición formada puede ser enviada a Tralix en donde, Tralix como PAC se encarga de añadir un Token de Autenticación proporcionado por el SAT para hacer 100% valida la petición de cancelación. De esta manera se lleva a cabo el proceso de cancelación de CFDI mediante la llamada directa al Web Service de Tralix. Nota: Cada solicitud de cancelación consumirá un timbre de su paquete. 2 Estructura del Servicio 2.1 Firma XML (XML Signature) Antes de enviar la solicitud, esta debe estar firmada digitalmente. Aunque la generación de la firma no se detalla en este documento, se explican los elementos relevantes: Elemento Descripción DigestValue Contiene el resultado de aplicar el algoritmo hash a el (o los) recurso(s) transformado(s). SignatureValue Contiene el resultado de una firma codificada en Base64 (la firma generada con los parámetros especificados en el elemento SignatureMethod del elemento SignedInfo después de aplicar el algoritmo especificado por el CanonicalizationMethod. X509IssuerName Contiene el Qualified Name del certificado con el que se firma la petición. X509SerialNumber Número de serie del certificado con el que se firma la petición. X509Certificate Es el certificado en base64 con el que firma la petición. Fragmento de ejemplo del nodo de firma: x4XBfF1LtX9WSj8pBp3mG96OWaE= cP+JbE40A8apElFcXgmv0W2FwPve3hDphTCOkpWc9JW3w2YX0V6P4E4/7y4a8SM0H2fkF3a2lZv3hyCp7R2XXsaHraurmAv0KaHs7so8/dN7d4OTVqa17584ays027zkYcUZeda3o4dcTGROnrlaEEtAEW/IDkTnKSDZwWsvpg= Nota: este manual no explica la manera de llevar a cabo la firma mediante XML Signature ya que esta fuera del alcance, sin embargo, se definen algunos elementos que generalmente causan confusión al momento de firmar la petición. 2.2 Parámetros requeridos Endpoint POST http://IP_DOMAIN:8081/ HTTP/1.1 Método Ambiente Ruta POST Pruebas 🔗 https://pruebastfd.tralix.com:8081 POST Productivo 🔗 https://timbrador.tralix.com:8081 Autenticación y Headers Header Value Accept-Encoding gzip,deflate User-Agent Jakarta Commons-HttpClient/3.1 Content-Length 4145 Parámetros Parámetro Tipo Uso Descripción Content-Type Header Requerido text/xml; charset=UTF-8 SOAPAction Header Requerido "http://cancelacfd.sat.gob.mx/ICancelaCFDBinding/CancelaCFD" CustomerKey Header Requerido customer_key_id. Clave única del cliente asignada por Tralix Body Cuerpo Requerido XML firmado del CFDI a cancelar 2.3 Ejemplo de petición NOTA: El REQUEST de la petición debe estar sellada con el CSD con el que emiten. Encabezado HTTP: POST / HTTP/1.1 Content-Type: text/xml; charset=UTF-8 SOAPAction: "http://cancelacfd.sat.gob.mx/ICancelaCFDBinding/CancelaCFD" CustomerKey: customer_key_id Cuerpo (Body): XML Original Datos que se sellan Request POBrgi6EjPKzezz790pnVkYJfXA= XYvWTI87pX/3Sgk5gXIbceMPpisykxuNudjVeQGJZYyVp3kRRZTLm5qLwr/YulfXQpjSpGkeUXPh w0lHd9dqgDlY5rqgZkMZJWYgDacw/zl+qdK0NTTGuBbU+2hS4Kg7tWip5rKKAvy4VKryzNLmpUx7 EaeOlz6p1+Q1ksX08Xb3CBumzkpkEMX4UXESkulkYA928hOsmINK8bQAjPSCJUwRlqrq3McV4ukb JAjfL6aaca9Rez5aOoMbg5o6ZOhvr0J0wLrp/MpDlC9QV6RzwPlCMp3b6AoQlUzs9z4UDrQkIIkc R5j6/HCk1teAZiM0ZQhl0seABPNkPvcabQkCYA== OID.1.2.840.113549.1.9.2=Responsable: ACDMA, OID.2.5.4.45=SAT970701NN3, L=Coyoac?n, ST=Distrit o Federal, C=MX, OID.2.5.4.17=06300, STREET="Av. Hidalgo 77, Col. Guerrero", EMAILADDRESS=asisnet@pruebas.sat.gob.mx, OU=Administraci?n de Seguridad de la Informaci?n, O=Servicio de Administraci?n Tributa ria, CN=A.C. 2 de pruebas(4096) 286524172099382162235533054548081509963388106291 MIIFzDCCA7SgAwIBAgIUMjAwMDEwMDAwMDA zMDAwMjI3NjMwDQYJKoZIhvcNAQELBQAwggFmMSAw HgYDVQQDDBdBLkMuIDIgZGUgcHJ1ZWJhcyg0MDk2KTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRt aW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1 cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSkwJwYJKoZIhvcNAQkBFhphc2lzbmV0QHBydWViYXMu c2F0LmdvYi5teDEmMCQGA1UECQwdQXYuIEhpZGFsZ28gNzcsIENvbC4gR3VlcnJlcm8xDjAMBgNV BBEMBTA2MzAwMQswCQYDVQQGEwJNWDEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDESMBAGA1UE BwwJQ295b2Fjw6FuMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxITAfBgkqhkiG9w0BCQIMElJlc3Bv bnNhYmxlOiBBQ0RNQTAeFw0xNjEwMjEyMDU0MDFaFw0yMDEwMjEyMDU0MDFaMIG4MRwwGgYDVQQD ExNJTk1PQiBFRE1BIFNBIERFIENWMRwwGgYDVQQpExNJTk1PQiBFRE1BIFNBIERFIENWMRwwGgYD VQQKExNJTk1PQiBFRE1BIFNBIERFIENWMSUwIwYDVQQtExxUTUU5NjA3MDlMUjIgLyBIRUdUNzYx MDAzNFMyMR4wHAYDVQQFExUgLyBIRUdUNzYxMDAzTURGUk5OMDkxFTATBgNVBAsUDFBydWViYXNf Q0ZESTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJgqZ+ezJyeJXACMK8ehFp64ecAl 8jfYKB4xMJy0RRb+qXKRewxtLojiTFECWdCx283tEkdHUj8bLzsCfFAMnsP2G4CS2aE2/1LLCHoZ pdImaasLX1YJL2bUzxKQKi+RlL63M49yyfvGBjEgG7f6TMwVSUSbgDFpYAFHqx4LK+p2GVHuUUzo iIm8xRYaW1YPMa457be5W8wsjw0nGRLfo8hRIjPHedkwtcqYPj57xsPXMfxWP45vOlW7GuLkMq/E CccHxJiPitiThcDFKlf/mAR0kaux9LTffvWilA2uQAlyVyNVjqfdpvDdq4ycTaoIMYKrv/9R31dQ 0AmdXT8cfbcCAwEAAaMdMBswDAYDVR0TAQH/BAIwADALBgNVHQ8EBAMCBsAwDQYJKoZIhvcNAQEL BQADggIBAF5kwvyBUp7Ad99DktzEhrJwnMQyhA79sVc4Ns2SpLON/cV244ZnG5hgXk2awKbHEiSj /ke7EhgEpGS818ERsj7eW/wRgugBZraVn48GOn6qX0uV9EjwWEGK5uT6IDN25igeXxVJHP3hn40f X2BPqsaqRP49YMxcOWD7mhWRh2E6BnoKYjgHVJbavUN6pjCBLmy4hKwfitbjqtUiiWOmBDvvmLFp EGXG8OXn2xladBUkfC4sfgMBpVZVuEV7RqAgCSCZ2xo6UEyd4KKpTjbdp0Tj5gw+NmiovAZHwU/N PRojN95f/ibj7268LBr2DcO5rlmr7szwJ3dtwu86N7HkUxW3vo3qGHTVK2HRBArda9VN4pEyIL0Q t46ci5rFYXB2cCWU8XAh8gaZnxJoNTSY4A4yMJG9UfM/2rHC+YvOouIZ2kJZ2h+SwKOYGJOX749P /QeF4Z/L/ODs3E08bV7IQna1ZHmd6ydYhZVpheMgNoNnIG6jdzfyuo8NZAIIW/JGmPTANPCwTSHq BY1lmnp/oZNrkxGWtGhbltRfBoFQfTqCZALm6fsVeQqHQ6a7W45FJ2RD1nltPSdniMo3Iz/t4eHC jFvM3aORvA9oJEPr5ZzzBV2fQOXkyS8QdsSVb5ZmJG+FqZKKlsiaX6xhqK6gqTLyJN+7/yr9T/ZZ 4M7VrRoL 2.4 Ejemplo de respuesta Respuesta exitosa 682ACECE-54CF-4A07-84B9-0916DA34A18F 201 E6F9F159-B0DE-400B-8834-4B0AB4C1D4B8 209 not(ancestor-or-self::*[local-name()='Signature']) 4bvFycaQnpXVZ1R78WYEyO7tteJ5qYJD2hFEiSu/kKIt6dN6MSuS9YxS9MLyEnLtxn/vtxSaalZOZqKiPYRxiA== NXhxBDAJ1OekLzhtuWeKIkpLEDobiBr6eFuErkqLZZ04Gq2r/TiC9R8ANZl5/cMnyIr6u1iKjV8DChljrQoijw== BF66E582888CC845 n5YsGT0w5Z70ONPbqszhExfJU+KY3Bscftc2jxUn4wxpSjEUhnCuTd88OK5QbDW3Mupoc61jr83lRhUCjchFAmCigpC10rEntTfEU+7qtX8ud/jJJDB1a9lTIB6bhBN//X8IQDjhmHrfKvfen3p7RxLrFoxzWgpwKriuGI5wUlU= AQAB 3 Motivos de Cancelación Código 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 4 Códigos de Respuesta Los códigos de error y la descripción de los mismos contenidos en la excepción CancellationClientException en caso de que se lance son los siguientes: 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 valido 208 Folio Sustitución invalido 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 valida 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 314 CFDI no cancelable con el motivo 04 (Se intenta cancelar un CFDI que no es una factura global). 402 RFC del emisor no se encuentra en el régimen de contribuyentes. 407 Error en el servicio de cancelación del SAT. 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. 5 Estados del CFDI Estos son los estados posibles al consultar un CFDI: 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 6 Consideraciones Técnicas La firma XML debe realizarse con el CSD vigente del emisor. Toda petición debe estar completamente firmada y codificada en UTF-8. Se requiere un CustomerKey válido proporcionado por Tralix. El proceso consume un timbre del paquete del cliente. 7 Contacto y Soporte Para soporte técnico, dudas sobre el uso del servicio o solicitud de su CustomerKey, puede comunicarse con su ejecutivo o con el área de soporte técnico de Tralix vía ticket. Cancelación Retenciones 1 Introducción El Web Service de Cancelación proporcionado por Tralix tiene la misma definición que el servicio del SAT expuesto hacia los PAC’s, esto tiene como consecuencia que el cliente al hacer la petición de cancelación hacia el servicio de Tralix debe emplear obligatoriamente XMLSignature para firmar la petición. Una vez teniendo la petición formada puede ser enviada a Tralix en donde, Tralix como PAC se encarga de añadir un Token de Autenticación proporcionado por el SAT para hacer 100% valida la petición de cancelación. De esta manera se lleva a cabo el proceso de cancelación de CFDI mediante la llamada directa al Web Service de Tralix. Nota: 1) Toda petición de cancelación debe estar firmada usando XMLSignature, cumpliendo con los lineamientos definidos por el SAT. 2) Cada cancelación consume un timbre del paquete contratado por el cliente. 2 Estructura del Servicio 2.1 Firma XML (XML Signature) Antes de enviar la solicitud, esta debe estar firmada digitalmente. Aunque la generación de la firma no se detalla en este documento, se explican los elementos relevantes: Elemento Descripción DigestValue Contiene el resultado de aplicar el algoritmo hash a el (o los) recurso(s) transformado(s). SignatureValue Contiene el resultado de una firma codificada en Base64 (la firma generada con los parámetros especificados en el elemento SignatureMethod del elemento SignedInfo después de aplicar el algoritmo especificado por el CanonicalizationMethod. X509IssuerName Contiene el Qualified Name del certificado con el que se firma la petición. X509SerialNumber Número de serie del certificado con el que se firma la petición. X509Certificate Es el certificado en base64 con el que firma la petición. Fragmento de ejemplo del nodo de firma: x4XBfF1LtX9WSj8pBp3mG96OWaE= cP+JbE40A8apElFcXgmv0W2FwPve3hDphTCOkpWc9JW3w2YX0V6P4E4/7y4a8SM0H2fkF3a2lZv3hyCp7R2XXsaHraurmAv0KaHs7so8/dN7d4OTVqa17584ays027zkYcUZeda3o4dcTGROnrlaEEtAEW/IDkTnKSDZwWsvpg= Nota: este manual no explica la manera de llevar a cabo la firma mediante XML Signature ya que esta fuera del alcance, sin embargo, se definen algunos elementos que generalmente causan confusión al momento de firmar la petición. 2.2 Parámetros requeridos Endpoint POST http://IP_DOMAIN:8081/ HTTP/1.1 Método Ambiente Ruta POST Pruebas 🔗 https://pruebastfd.tralix.com:7070/retenciones/cancelaUno/ POST Productivo 🔗 https://timbrador.tralix.com:7070/retenciones/cancelaUno/ Autenticación y Headers Header Value Accept-Encoding gzip,deflate User-Agent Jakarta Commons-HttpClient/3.1 Parámetros Parámetro Tipo Uso Descripción Content-Type Header Requerido text/xml; charset=UTF-8 idCustomer Header Requerido customer_key_id. Clave única del cliente asignada por Tralix idCustomer: customer_key_idHost: IP_DOMAIN:8081ipAddress: IP_DOMAIN 2.3 Ejemplo de petición NOTA: El REQUEST de la petición debe estar sellada con el CSD con el que emiten. Encabezado HTTP: Toda petición al servicio de cancelación debe incluir las siguientes cabeceras HTTP: POST https://timbrador.tralix.com:7070/retenciones/cancelaUno/ HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: text/xml;charset=UTF-8 idCustomer: User-Agent: Jakarta Commons-HttpClient/3.1 Host: timbrador.tralix.com ipAddress: Datos que se sellan Request AAIGTZrpSeAiR2gG3C5HB+zYTGc= cCRO+aoBgYoelmLCxX5836fKKaa/pUPc0bQppVu5kW6KOcx/xpiQpuCv6LnhkSwVwtsdlz6qdr3XbY72jCs4+/GH4qfs+WzhTMxa/6aUUl0RJJae1o34G0WCdDs/WfKRooDcIe2oks5s2vWrSd0pmTtC5lPJVTQEgMb9h7zJnV6gNs2Ss3n1XQnJ+psf+cQIyKjjSKv7bYtX3kwjFW04GHlEHZrsQH+DrL9stGRXoZNICMTqTqHHjjnJhxQEB1okY16mS08Vj5q4psZBb5vvTA+gtrrIUYqI9//ahDZ1cGrV/RxzTxJH2Rl/nxkLaZEmi6zHDoipapp20KVXfI8ZTg== OID.1.2.840.113549.1.9.2=responsable: ACDMA-SAT, OID.2.5.4.45=2.5.4.45, L=COYOACAN, S=CIUDAD DE MEXICO, C=MX, PostalCode=06370, STREET=3ra cerrada de cadiz, E=oscar.martinez@sat.gob.mx, OU=SAT-IES Authority, O=SERVICIO DE ADMINISTRACION TRIBUTARIA, CN=AC UAT 292233162870206001759766198444326234574021605684 MIIFszCCA5ugAwIBAgIUMzAwMDEwMDAwMDA0MDAwMDEyOTQwDQYJKoZIhvcNAQELBQAwggErMQ8wDQYDVQQDDAZBQyBVQVQxLjAsBgNVBAoMJVNFUlZJQ0lPIERFIEFETUlOSVNUUkFDSU9OIFRSSUJVVEFSSUExGjAYBgNVBAsMEVNBVC1JRVMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlvc2Nhci5tYXJ0aW5lekBzYXQuZ29iLm14MR0wGwYDVQQJDBQzcmEgY2VycmFkYSBkZSBjYWRpejEOMAwGA1UEEQwFMDYzNzAxCzAJBgNVBAYTAk1YMRkwFwYDVQQIDBBDSVVEQUQgREUgTUVYSUNPMREwDwYDVQQHDAhDT1lPQUNBTjERMA8GA1UELRMIMi41LjQuNDUxJTAjBgkqhkiG9w0BCQITFnJlc3BvbnNhYmxlOiBBQ0RNQS1TQVQwHhcNMTkwMTA1MDAwMTEwWhcNMjMwMTA1MDAwMTEwWjCB2jElMCMGA1UEAxMcTUFOREFSSU5BIE1BUktFVElORyBTQSBERSBDVjElMCMGA1UEKRMcTUFOREFSSU5BIE1BUktFVElORyBTQSBERSBDVjElMCMGA1UEChMcTUFOREFSSU5BIE1BUktFVElORyBTQSBERSBDVjElMCMGA1UELRQcQiZNMDExMTI3QlEwIC8gRE8mRDYwMTAwOUxSQTEeMBwGA1UEBRMVIC8gQkFVTTkzMDIwMU1NQ0RHUjA1MRwwGgYDVQQLExNNQU5EQVJJTkEgTUFSS0VUSU5HMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAono09SHjdHQwOumVLCvvPPNwVabv5qxwKqO7RiuLODXopBwuGvTS7LERoCpx+KrKdP8C1tPXIFWzJ701kGPSLhUgKrft4Gj031hFLt6vRne/N8fnmYnjiIP11DN2gj6/dbLbwzNSzmpW+4quITKin+zpYegCBNXGJunNrr1y7qREfiD1TssHWfuPnKC7UFzBTXCR425dq5wjxvYQSuIPq4FieyVWFNppcRFhfzSole16wQRfLZoWcR+7DsUfxqZNbNVQpkFVMVQZ1H95MJyjf/MY7+07aXXzt+Ovc+/FVsHjQ8YtaDNMcG8lNXxSQhsvAvX9is0VCfXe4P8Nu62tYwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAkcEVnJGpXpKxeGAP/U/vH/q8866MwQlW/OUs1yAdEMJZilWu8I5uvfDmPIde7hKwXdpQYFexFWMa6RDODmprY/W6tZRuqeaXpNEXdt/hWnkbN72Bbu6u01WW+rHqVjRCmu1hjhpTkj+S/g9KSeB6gkrwtaCXjykLEIGtIITTOC/vDISEFM/bVkg0Y5Ck0eRBPVURhnUh2GyKkLPDKiQC2UD8fE0Ebe0OHiYMX5jj8v1mbn5F8sAlovlEvFMUDYZgvD/ISF43IK0lK/B6P5ocIitX/lHLMDgrvn/fY57B9y0F58CR1cjBR+JYSDmw/pRA6l/EIpJzJzjLn9TLDfSUBRvpkmrr0CBNhDbMbksXOTjyNDEkOBEgX9qg0rf5T3bAcOs99kVVTvzuEZqSxWoTPZ9NQaEFWUeVjKCJt2qcAfIcpmDfykXyhh0awQVi1ewhLMQ5I4SOcex0yejX7vlIjxFsN5MYx7vH0/NXV0kwPAuUM2vLVzrWkJD4f7+fC0pNFM50viaIBYJLpVBj3uPtmPOIPHvB1xjEbmdZ8m3oQdvkok0FMKmLMXs1C3pgLPIzysTscrPCF8pCJw5Tm+cAUu34BgS2J9r3PdOPLt0gXDxAg3yvkadi4ao5r9JqJhJVpHsUt0GnV2bQR8uZmwPnd1eX8Ojklgym6MGihm+sQ/8= 2.4 Ejemplo de respuesta (Acuse) Respuesta exitosa 0AA0A514-6997-4C1B-8A36-89BB0CB1B265 1201 01 01E53227-38EC-458D-B1D4-08F2B533F98B not(ancestor-or-self::*[local-name()='Signature']) fMuB/Ee3grx4cDFX+GRpnX3ME0l9dLTLdbiYXundyMPS+GOZ1AR2XMtepTSZiD08NzAwF2nFFHWkZOIEU3a4Dw== D4rC8c5ZK2eXtbJWQ2C6xOTeW3dkPIf6u2+i6DbX1FTXqPkVW1dcm4i+I9GEetpJOfS6pSxGBa152QBPimJBNg== 30001000000400001215 nbtVtkPquCMLdpgeClMrTmxzCjyjn8P9YrBlW9jXC/FcXozIYHvzctK1pRxRxLTKlChc9fjluht9ffDfGOWim/4AlTrCiG6om7ItkHbLGMQrABp8qGY+SPmq1xtZ7qbbgoTFCtzP3pN9Z4uSDhdnrF2655sdmDzHJYE9MirNLM4SIdSFsabA31CCAMaWpB4TO6ZmExLp+wUiUyeIFWswc5G5KvmS/lU5tbXLK7zBDDUVjN0K1r/0iaZIZzPMxQcgfgYBrfLGZ3916MkmF28iBk5l1sfNTKS9S445QHKc+6oTP4UDDnjN/K14YWX449BAMxKcelEpjZlBQs1a1eNVcQ== AQAB 3 Motivos de Cancelación Código 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 4 Códigos de Respuesta Los códigos de error y la descripción de los mismos contenidos en la excepción CancellationClientException en caso de que se lance son los siguientes: Código Descripción 1201 Petición aceptada 1202 UUID previamente cancelado 1203 UUID no corresponde con el emisor 1205 UUID no existe 1300 Autenticación no válida 1301 XML mal formado 1302 Estructura de folios no válida 1303 Estructura de RFC no válida 1304 Estructura de fecha no válida 1305 Certificado no corresponde al emisor 1306 Certificado no vigente 1307 Uso de FIEL no permitido 1308 Certificado revocado o caduco 1309 Firma mal formada o inválida 1310 Motivo no válido 1311 Folio Sustitución no válido 1312 Folio Sustitución no requerido 1313 Solicitud fuera de la declaración anual 1314 Relación no válida 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. 5 Consideraciones Técnicas La solicitud debe estar firmada digitalmente mediante XMLSignature, usando un Certificado de Sello Digital (CSD) vigente y autorizado del emisor. Toda petición debe estar completamente firmada y codificada en UTF-8. Se requiere un CustomerKey válido proporcionado por Tralix. El proceso consume un timbre del paquete del cliente. 6 Contacto y Soporte Para soporte técnico, dudas sobre el uso del servicio o solicitud de su CustomerKey, puede comunicarse con su ejecutivo o con el área de soporte técnico de Tralix vía ticket. Consulta de Estados de CFDI 1 Introducción El servicio de Consulta de Estados de CFDI permite conocer el estado actual de un Comprobante Fiscal Digital por Internet (CFDI), ya sea Vigente o Cancelado, así como información adicional sobre su cancelabilidad. Este servicio utiliza método SOAP (POST) y es de tipo 1:1, es decir, por cada consulta realizada, se recibe información sobre un único CFDI. Nota: Cada cancelación consume un timbre del paquete contratado por el cliente. 2 Estructura del Servicio 2.1 Estructura general de la petición Este servicio expone una interfaz web SOAP para consultar, con base en los siguientes datos: RFC del emisor RFC del receptor Total del comprobante UUID del CFDI Con estos datos se construye la expresión impresa que se envía como parámetro en la solicitud. Endpoint Método Ambiente Ruta POST Pruebas 🔗 https://pruebastfd.tralix.com:8081/cancela/consultaSoap/ POST Productivo 🔗 https://timbrador.tralix.com:8081/cancela/consultaSoap/ Autenticación y Headers Header Value SOAPAction "http://tempuri.org/IConsultaCFDIService/Consulta" Content-Type text/xml; charset=utf-8 CustomerKey Clave única del cliente asignada por Tralix Parámetros de Consulta Para realizar la consulta se utiliza la expresión impresa, con la siguiente estructura: ?re=[RFC Emisor]&rr=[RFC Receptor]&tt=[Total del CFDI]&id=[UUID del CFDI] Desglose de parámetros: Parámetro Descripción Obligatorio re RFC del Emisor Sí rr RFC del Receptor Sí tt Total del CFDI (en número decimal) Sí id UUID del CFDI Sí 2.2 Ejemplo de petición Las siguientes cabeceras son obligatorias para la correcta invocación del servicio: SOAPAction: "http://tempuri.org/IConsultaCFDIService/Consulta" Content-Type: text/xml; charset=utf-8 CustomerKey: [CUSTOMER_KEY] SOAPAction: Define la acción SOAP correspondiente. Content-Type: Debe indicarse como text/xml con codificación UTF-8. CustomerKey: Valor único proporcionado por Tralix al contratar el servicio. Request 2.3 Ejemplo de respuesta Respuesta exitosa S - Comprobante obtenido satisfactoriamente. Cancelable con aceptación Cancelado Plazo vencido 3 Consideraciones Técnicas El CustomerKey debe estar vigente y autorizado. Se debe usar la codificación UTF-8. La URL cambia dependiendo del ambiente (pruebas o producción). La precisión del total (tt) debe coincidir exactamente con el CFDI original, incluyendo decimales. Asegúrate de que el UUID, RFCs y monto estén correctamente formateados. 4 Ejemplo Práctico Supongamos que quieres consultar el estado del siguiente CFDI: RFC Emisor: TME960709LR2 RFC Receptor: CALJ581101M37 Total: 10403.20 UUID: 33F694C6-3E44-41B5-A67E-B3767EB1EC50 Tu expresión impresa sería (Inclúyela dentro del XML): ?re=TME960709LR2&rr=CALJ581101M37&tt=10403.20&id=33F694C6-3E44-41B5-A67E-B3767EB1EC50 5 Contacto y Soporte Para soporte técnico, dudas sobre el uso del servicio o solicitud de su CustomerKey, puede comunicarse con su ejecutivo o con el área de soporte técnico de Tralix vía ticket. Consulta de CFDIs Relacionados 1 Introducción El servicio de Consulta de CFDIs Relacionados está dirigido a los receptores que necesitan conocer qué comprobantes están vinculados a una factura específica (por ejemplo, pagos, sustituciones, notas, etc.). La petición debe enviarse mediante SOAP y el XML de la solicitud debe estar firmado con el Certificado de Sello Digital (CSD) del contribuyente que solicita la información. Nota: Cada consulta consume un timbre del paquete contratado. 2 Estructura del Servicio 2.1 Estructura general de la petición La petición se realiza mediante método POST y debe contener un sobre SOAP con el nodo ProcesarRespuesta incluyendo los atributos necesarios (RFC del PAC que envía la solicitud, RFC receptor, UUID del comprobante) y la firma digital (XML Signature) debidamente construida. 2.2 Parámetros requeridos Endpoint Método Ambiente Ruta POST Pruebas https://pruebastfd.tralix.com:8081/cancela/relacionadosSoap/ POST Productivo https://timbrador.tralix.com:8081/cancela/relacionadosSoap/ Autenticación y Headers Header Valor esperado SOAPAction "http://cancelacfd.sat.gob.mx/ICfdiConsultaRelacionadosService/ProcesarRespuesta" Content-Type text/xml; charset=utf-8 CustomerKey {CUSTOMER_KEY} (clave asignada al cliente) Parámetros (dentro del cuerpo SOAP) Parámetro Descripción RfcPacEnviaSolicitud RFC del PAC que realiza la consulta. RfcReceptor RFC del receptor (cliente de Tralix) al que se le emitió la factura. Debe estar asociado a un CustomerKey vigente. Uuid UUID del comprobante del cual se desean obtener los CFDIs relacionados. Signature Firma digital (XML Signature) del contenido, usando el CSD del contribuyente que solicita. 2.3 Ejemplo de petición FzlrxAxnZ59ixR9kXOXtm9K44aI= RUVlQGKT/LqJyteqV3dqqpbWi/LkPduFci5CNduLm3Uoe7szOn3Txc0y1T8oHYxb9jSwGuYjU+lD ORZ1jp7gWkKZxkQweTa87bj7qkXxS8vf3uUuoeMbDZ5sJY7aDxYvtqRYwOYuiQMDlMGdG1V2L23K sHYAmpNnGPsm94A5cAc9Cz8IJANYxdnJDt6FYFUpRk/95lqkuKKU4ceAPNB5Gxtlhi9Gnjeiz2Xi v/bI20hhdM2Fydic2KDyioTlZ3CHo6VKVq9/vM5VXgmSb3gd4cEWxK8jt9krsTbXQWLkYW0AQ8FH 85CmwJURtbETR61wD5+MQVi8VAEYo2UUbHDZTg== OID.1.2.840.113549.1.9.2=Responsable: ACDMA, OID.2.5.4.45=SAT970701NN3, L=Coyoacán, ST=Distrito Federal, C=MX, OID.2.5.4.17=06300, STREET="Av. Hidalgo 77, Col. Guerrero", EMAILADDRESS=asisnet@pruebas.sat.gob.mx, OU=Administración de Seguridad de la Información, O=Servicio de Administración Tributaria, CN=A.C. 2 de pruebas(4096) 286524172099382162235533054548081509963388170548 MIIFxTCCA62gAwIBAgIUMjAwMDEwMDAwMDAzMDAwMjI4MTQwDQYJKoZIhvcNAQELBQAwggFmMSAw HgYDVQQDDBdBLkMuIDIgZGUgcHJ1ZWJhcyg0MDk2KTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRt aW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1 cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSkwJwYJKoZIhvcNAQkBFhphc2lzbmV0QHBydWViYXMu c2F0LmdvYi5teDEmMCQGA1UECQwdQXYuIEhpZGFsZ28gNzcsIENvbC4gR3VlcnJlcm8xDjAMBgNV BBEMBTA2MzAwMQswCQYDVQQGEwJNWDEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDESMBAGA1UE BwwJQ295b2Fjw6FuMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxITAfBgkqhkiG9w0BCQIMElJlc3Bv bnNhYmxlOiBBQ0RNQTAeFw0xNjEwMjUyMTM5MzBaFw0yMDEwMjUyMTM5MzBaMIGxMSAwHgYDVQQD ExdKVURJVEggUkFNSVJFWiBFU0NVREVSTzEgMB4GA1UEKRMXSlVESVRIIFJBTUlSRVogRVNDVURF Uk8xIDAeBgNVBAoTF0pVRElUSCBSQU1JUkVaIEVTQ1VERVJPMRYwFAYDVQQtEw1DQUxKNTgxMTAx TTM3MRswGQYDVQQFExJGVUFCNzcwMTE3TU1DTkxUMDQxFDASBgNVBAsUC1BydWViYV9DRkRJMIIB IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAj9dxR0263ZLEYuLxz+OzMHfCezfcn4klwY0c /lQVkXCPOJG7vkmQpk80vImd4YiMGJN9wKjnXVdH1eN5RWNk4PtT/JnkgNvIjrjg05AkZBHbkqGp /s5MA7K1Ez+vLt4TwHgoxRB4SpeF/477UiM0HMWiK5KakKkjatL3QLG2S3RBxRv1phr2nCsX4iiO zan591oz19ShDwO3HRkYo/0jtq8o1ZFr5ajpxnJR+DhXakcWok10O3LrpYkInn6CZtSEwFTWbMda g1/sNwptIxQDHoKHUpHQNWdE1sj1vdOzcs6jIkX7afgFYKfArssGucdbNzwloOFh6p4miT5oRs4m VwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEA pJPBXikqI0118ZA+0wMzqqQfifbhf5M3UDx+1UOUj0VPwTTi7JX6I3DwoFK2qzjGx8sOfcqUhETQ jf5+ZLUI/ZRLqnT4lNWYXLFTf7KwBggYP89Pp3+wkfDxy+Ic8gh+Hr4MzRGPDiDU+M+t/5MGOVPL hMLyyz+d/dl1a8M4kwAUdO1xyZemfdqcq6lLEgk5GbiA4NwGHYGjLdT/9xkZC3FVRccKy/MqesgI SeTKmNGGNawvqJZ83rWCrMx2jlSfs6AUfjlbz+5rNnETSzImMOHIJMbMHvfbxzojOgWQmgsaiByS 3gpxUeH2sYNRLoJQ6BxVWdKgtrh4w1KKE07MxJytMyHNN1I4XlvcNDwqVDXelcedeswnjESz1OEV 2AaWXfZ6cLpNIfb6tnWxyITrKyygbjkRXsb15LGlLv2Q5fywTVjWtsQ2jDlrhRPW0bjIDohAaqNM +6vTKjJvZmEZ6FJJsI838RYGyGkAm1fc+Hsy45PyJ1FakIdOWREJSrUQjh073Vl1qY+VY2RL7oKL uG598YjcQrEK1zEDdAGmHoBtXuIDR6niaT6rurHhf4NHiXZAnWxyFI7UlLoQZ3ngefGniWRioqef 1K5bzTOg4mYPDAaECzlcZ6p6/Um95mOUHU44owbqZx8yUwRzZt83SbAKhzEsdwgXzF+FlS0Qxvo= RfcPacEnviaSolicitud= Es el RFC del PAC con el que esta realizando la solicitud (en este caso TLE011122SC2) RfcReceptor= Es el RFC cliente de Tralix a quién se le emitió la factura (este RFC se debe encontrar dentro de un customer key vigente). RfcEmisor= Es el RFC cliente de Tralix quién emitió la factura (este RFC se debe encontrar dentro de un customer key vigente). Uuid= Este corresponde al comprobante del que se requieren conocer los comprobantes relacionados. 2.4 Ejemplo de respuesta [UUID_CONSULTADO] WS Consulta CFDI relacionados RfcReceptor: [RFC_RECEPTOR] - folio físcal: [UUID_CONSULTADO] - Clave: 2000 - Se encontraron CFDI relacionados [UUID_PADRE] [RFC_EMISOR] [RFC_RECEPTOR] 2.5 Códigos de respuesta Si la petición es correcta indica que se encontraron CFDI relacionados. 3 Consideraciones Técnicas El XML de la petición debe estar firmado usando XML Signature con el CSD correspondiente. RfcReceptor y RfcEmisor deben estar asociados a un CustomerKey vigente en Tralix. El Uuid es el folio fiscal del comprobante principal; la respuesta devuelve padres e hijos relacionados. El servicio consume un timbre por cada consulta ejecutada. Asegurarse de que la firma incluya correctamente los elementos , y con el certificado en base64. Si se reciben errores internos (500), contactar soporte antes de reintentar. 4 Contacto y Soporte Para soporte técnico o dudas sobre el uso del servicio, puede comunicarse con el área de soporte técnico de Tralix vía ticket. Pendientes de Cancelación Producto: PAC Services – Tralix 1 Introducción El servicio de Pendientes de Cancelación permite a los receptores de facturas electrónicas consultar si existen comprobantes fiscales digitales por Internet (CFDIs) emitidos a su nombre que han sido solicitados para cancelación por parte del emisor y están pendientes de aceptación o rechazo. Este servicio opera mediante una llamada SOAP con método POST. Está diseñado para clientes que desean dar seguimiento a las cancelaciones que deben ser respondidas activamente. Nota: Cada consulta de cancelación consume un timbre del paquete contratado. 2 Estructura del Servicio 2.1 Estructura general de la petición La solicitud se realiza con una estructura SOAP simple que incluye el RFC del receptor como parámetro dentro del nodo ObtenerPeticionesPendientes. 2.2 Parámetros requeridos Endpoint Método Entorno URL POST Pruebas 🔗 https://pruebastfd.tralix.com:8081/cancela/pendientesSoap/ POST Productivo 🔗 https://timbrador.tralix.com:8081/cancela/pendientesSoap/ Autenticación y Headers Header Valor esperado SOAPAction "http://cancelacfd.sat.gob.mx/IAceptacionRechazoService/ObtenerPeticionesPendientes" Content-Type text/xml; charset=utf-8 CustomerKey {CUSTOMER_KEY} (clave única asignada al cliente) Parámetros Campo Tipo Descripción rfcReceptor Texto RFC del receptor que desea consultar las solicitudes pendientes de cancelación. 2.3 Ejemplo de petición [RFC_RECEPTOR] 2.4 Ejemplo de respuesta Caso exitoso con resultados: [UUID_EN_ESPERA] 2.5 Códigos de respuesta Código Descripción Observaciones 300 Usuario No Válido Este código de error se regresa cuando la autenticación del usuario no fue exitosa. 301 XML Mail Formato Este código de error se regresa cuando el request posee información invalida, ejemplo: un RFC de receptor no válido. 1100 Se recibió la respuesta de la petición de forma exitosa 1001 No existen peticiones para el RFC Receptor Este código se regresa cuando la consulta se realizó de manera exitosa, pero no se encontraron solicitudes de cancelación para el rfc receptor 3 Consideraciones Técnicas El RFC del receptor debe ser válido y estar registrado en la plataforma Tralix. El CustomerKey debe ser vigente y tener permisos para consultar este servicio. La autenticación es estricta: un error en CustomerKey, SOAPAction o estructura XML generará una respuesta con error. 4 Contacto y Soporte Para soporte técnico o dudas sobre el uso del servicio, puede comunicarse con el área de soporte técnico de Tralix vía ticket. Aceptación o Rechazo de Cancelación de CFDI Producto: PAC Services – Tralix 1 Introducción El servicio de Aceptación o Rechazo de Cancelación permite a los receptores de CFDI emitir una respuesta formal a las solicitudes de cancelación realizadas por los emisores. Este proceso se basa en los lineamientos del SAT donde, a partir de ciertas versiones de CFDI, el receptor debe aprobar la cancelación del comprobante. La respuesta debe enviarse en un XML firmado digitalmente con el Certificado de Sello Digital (CSD) del receptor. Nota: Cada consulta de cancelación consume un timbre del paquete contratado. 2 Estructura del Servicio 2.1 Estructura general de la petición La petición se realiza por medio de una estructura SOAP con los siguientes componentes: RFC del receptor RFC del PAC que realiza la solicitud Fecha de envío de la solicitud UUID del CFDI Respuesta del receptor: Aceptacion o Rechazo Firma digital (XML Signature) 2.2 Parámetros requeridos Endpoint Método Entorno URL POST Pruebas 🔗 https://pruebastfd.tralix.com:8081/cancela/answerSoap/ POST Productivo 🔗 https://timbrador.tralix.com:8081/cancela/answerSoap/ Autenticación y Headers Header Valor esperado SOAPAction "http://cancelacfd.sat.gob.mx/IAceptacionRechazoService/ProcesarRespuesta" Content-Type text/xml; charset=utf-8 CustomerKey {CUSTOMER_KEY} (clave única asignada al cliente) Parámetros Campo Tipo Descripción Fecha datetime Fecha de solicitud en formato AAAA-MM-DD HH:MM:SS. RfcPacEnviaSolicitud Texto RFC del PAC que realiza la solicitud. RfcReceptor Texto RFC del receptor que emitirá la aceptación o rechazo. Debe tener un CustomerKey vigente. UUID Texto Folio fiscal del comprobante que se desea cancelar. Respuesta Texto Valor aceptado: Aceptacion o Rechazo. Signature XML Firma digital generada con el CSD del receptor. 2.3 Ejemplo de petición [UUID] [Aceptacion/Rechazo] 2.4 Ejemplo de respuesta [UUID] 305 2.5 Códigos de respuesta Código Mensaje Observaciones 300 Usuario No Válido Este código de error se regresa cuando la autenticación del usuario no fue exitosa. 301 XML Mail Formato Este código de error se regresa cuando el request posee información invalida, ejemplo: un RFC de receptor no válido. 302 Sello Mal Formado 304 Certificado Revocado o Caduco El certificado puede ser inválido por múltiples razones como son el tipo, la vigencia, etc. 305 Certificado Inválido El certificado puede ser inválido por múltiples razones como son el tipo, la vigencia, etc. 309 Patrón de Folio inválido El patrón de folios para registro fiscal no coinciden. Aplicable únicamente a cancelaciones de CFDI de RIF. 310 CSD inválido 1000 Se recibió la respuesta de la petición de forma exitosa 1001 No existen peticiones de cancelación en espera de respuesta para el UUID Se recibió la respuesta de forma exitosa, sin embargo, no se encontró ninguna solicitud de cancelación pendiente 1002 Ya se recibió una respuesta para la petición de cancelación del UUID 1003 Sello No Corresponde al RFC Receptor 1004 Existen más de una petición de cancelación para el mismo UUID 1005 El UUID es nulo no posee el formato correcto 1006 Se rebaso el número máximo de solicitudes permitidas Se cuenta con un límite 500 solicitudes pendientes por petición. Estás 500 solicitudes deben pertenecer al mismo Receptor 3 Consideraciones Técnicas El XML debe ser firmado digitalmente con el CSD del receptor. El parámetro Respuesta solo puede tener los valores Aceptacion o Rechazo. Asegúrate de que el UUID exista y tenga una solicitud de cancelación pendiente. 4 Contacto y Soporte Para soporte técnico o dudas sobre el uso del servicio, puede comunicarse con el área de soporte técnico de Tralix vía ticket. Flujo de Cancelación Contenido Este es el endpoint con el flujo mas extenso, en el conlleva la verificación de los estados de los comprobantes para saber cual es el proceso a seguir para cada uno.  Siguiendo con el diagrama de flujos: Cancelación El Web Service de Cancelación proporcionado por Tralix tiene la misma definición que el servicio del SAT expuesto hacia los PAC’s, esto tiene como consecuencia que el cliente al hacer la petición de cancelación hacia el servicio de Tralix debe emplear obligatoriamente XMLSignature para firmar la petición. Una vez teniendo la petición formada puede ser enviada a Tralix en donde  se encarga de añadir un Token de Autenticación proporcionado por el SAT para hacer 100% valida la petición de cancelación. De esta manera se lleva a cabo el proceso de cancelación de CFDI mediante la llamada directa al Web Service de Tralix.Flujo de Cancelación Producto: PAC Services – Tralix 1 Introducción El presente manual tiene como propósito proporcionar una guía técnica detallada sobre el Flujo de Cancelación de CFDI a través del producto PAC Services – Tralix. Esta funcionalidad permite a emisores y receptores de comprobantes fiscales digitales realizar y gestionar cancelaciones conforme a los lineamientos establecidos por el Servicio de Administración Tributaria (SAT). El flujo de cancelación está compuesto por distintos servicios que permiten ejecutar la cancelación de un CFDI, consultar su estatus fiscal, conocer los comprobantes pendientes por cancelación y aceptar o rechazar solicitudes cuando sea necesario. Todos estos servicios se ofrecen a través de interfaces REST que pueden consumir tanto contenido XML como JSON, dependiendo del tipo de operación. Este documento está dirigido a desarrolladores, integradores y personal técnico responsable de la implementación del servicio en los sistemas del cliente. Cada sección describe el uso adecuado de los endpoints, la estructura de las peticiones y respuestas, los parámetros necesarios, ejemplos prácticos, así como las validaciones y consideraciones técnicas que se deben cumplir para garantizar una integración exitosa. Además, se incluye información clave sobre autenticación, headers, formatos permitidos, cardinalidad, firma digital y tratamiento de errores, con el fin de facilitar la comprensión y uso correcto de cada componente del flujo. Nota: Toda consulta de cancelación realizada a través de este servicio consume un timbre del paquete contratado por el cliente. 2 Servicio de Cancelación El servicio Cancelación permite a los emisores de CFDI realizar la cancelación de uno o varios comprobantes en una sola petición. Esta operación se realiza mediante un servicio REST con contenido en XML y requiere que el XML esté firmado digitalmente con el CSD del emisor. La cancelación debe cumplir con los lineamientos establecidos por el SAT, incluyendo la especificación del motivo de cancelación y, en su caso, el UUID del CFDI sustituto. 2.1 Estructura general de la petición El servicio acepta contenido XML con una estructura específica que contiene los datos de cancelación por cada UUID. Se permite cancelar de 1 a 500 comprobantes en una sola petición (cardinalidad 1:500). 2.2 Parámetros requeridos Endpoint Esta operación se realiza mediante un servicio REST. Método Entorno URL POST Pruebas 🔗 https://pruebastfd.tralix.com:8081/cancelCfdi POST Productivo 🔗 https://timbrador.tralix.com:8081/cancelCfdi Autenticación y Headers Header Valor esperado Content-Type application/xml ServerKey XSA_API (clave proporcionada por Tralix) Parámetros Campo Descripción Fecha Fecha de la solicitud de cancelación, formato AAAA-MM-DDTHH:MM:SS. RfcEmisor RFC del emisor que realiza la cancelación. UUID UUID del CFDI que se desea cancelar. Motivo Clave del motivo de cancelación (por ejemplo, 01, 02, etc.). FolioSustitucion (Opcional) UUID del CFDI que sustituye al cancelado. Requerido si el motivo lo exige. RfcReceptor RFC del receptor del CFDI que se cancela. Total Monto total del CFDI. Signature Firma digital del XML, generada con el CSD del emisor. 2.3 Ejemplo de petición [RFC_RECEPTOR] [TOTAL_FACTURA] [RFC_RECEPTOR] [TOTAL_FACTURA] 2.4 Ejemplo de respuesta 2.5 Códigos de respuesta El atributo estado dentro del nodo indicará el resultado para cada UUID: Estado Descripción Cancelado El CFDI fue cancelado correctamente. Error Hubo un problema en la cancelación del CFDI. 2.6. Consideraciones Técnicas Se permite cancelar hasta 500 CFDIs por solicitud. El XML debe ser firmado con el CSD vigente del emisor. 3. Consulta de Estados de CFDI El servicio Consulta de Estados permite realizar una búsqueda del estatus fiscal de uno o varios Comprobantes Fiscales Digitales por Internet (CFDIs) entregados al SAT. Este servicio responde con información sobre si el comprobante se encuentra vigente, cancelado o en proceso de cancelación, así como si es cancelable. Este servicio está disponible en dos formatos, : Consulta individual (1:1) mediante estructura XML. Consulta masiva (1:500) mediante estructura JSON. Esta operación se realiza mediante un servicio REST. 3.1 Estructura general de la petición La petición puede realizarse de dos formas, dependiendo del tipo de consumo: Tipo de consulta Formato Cardinalidad Individual XML 1:1 Masiva JSON 1:500 3.2 Parámetros requeridos Endpoint Esta operación se realiza mediante un servicio REST. Método Ambiente URL POST Pruebas 🔗 https://timbrador.tralix.com:8081/cancela/consultaSoap/ Autenticación y Headers Header Valor esperado Content-Type application/xml (para XML) | application/json (para JSON) ServerKey XSA_API Parámetros Para consulta individual (XML): Campo Descripción re RFC del emisor rr RFC del receptor tt Total del CFDI (ej. 10403.20) id UUID del CFDI Para consulta masiva (JSON): Campo Descripción rfcEmisor RFC del emisor rfcReceptor RFC del receptor total Total del CFDI uuid UUID del CFDI 3.3 Ejemplo de petición XML (1:1): JSON (1:500): { "statusVerifierList": [ { "rfcEmisor": "[RFC_EMISOR]", "rfcReceptor": "[RFC_RECEPTOR]", "total": "[TOTAL]", "uuid": "[UUID]" },{ "rfcEmisor": "[RFC_EMISOR]", "rfcReceptor": "[RFC_RECEPTOR]", "total": "[TOTAL]", "uuid": "[UUID]" } ] } 3.4 Ejemplo de respuesta XML (respuesta individual): S - Comprobante obtenido satisfactoriamente. Cancelable con aceptación Cancelado Cancelado con aceptación JSON (respuesta masiva): { "statusVerifierList": [ { "estado": "Vigente", "uuid": "[UUID]", "codigoEstatus": "S - Comprobante obtenido satisfactoriamente.", "esCancelable": "Cancelable con aceptación", "estatusCancelacion": "" }, { "estado": "Vigente", "uuid": "[UUID]", "codigoEstatus": "S - Comprobante obtenido satisfactoriamente.", "esCancelable": "Cancelable con aceptación", "estatusCancelacion": "" } ] } 3.5 Códigos de respuesta (debe ser interpretado desde el campo codigoEstatus) Código Descripción S - Comprobante obtenido satisfactoriamente. Consulta exitosa. El CFDI existe y se obtuvo su estado. Otros mensajes Se indicarán mensajes de error específicos si el comprobante no fue localizado o hay un problema de parámetros. 3.6 Consideraciones Técnicas Los montos (total) deben tener exactamente dos decimales y coincidir con el total del CFDI. Para consultas masivas, no se puede exceder la cardinalidad de 500 registros por solicitud. 4 Consulta Pendientes por Cancelar El servicio Pendientes por Cancelar permite a los receptores de CFDI consultar los comprobantes fiscales que se encuentran en proceso de cancelación, es decir, aquellos que requieren aceptación o rechazo por parte del receptor para completar su cancelación. Este servicio está disponible en dos formatos de consumo: Consulta individual (XML) Consulta individual (JSON) Esta operación se realiza mediante un servicio REST. Nota: La información obtenida representa solicitudes de cancelación pendientes, no implica que el CFDI esté cancelado. 4.1 Estructura general de la petición Tipo de consulta Formato Cardinalidad Individual XML 1:1 Individual JSON 1:1 4.2 Parámetros requeridos Endpoint Esta operación se realiza mediante un servicio REST. Método Ambiente URL POST Pruebas 🔗 https://pruebastfd.tralix.com:8081/cancela/pendientesSoap/ Autenticación y Headers Header Valor esperado Content-Type application/xml (para XML) | application/json (para JSON) ServerKey XSA_API Parámetros Campo Uso Descripción rfcReceptor Requerido RFC del receptor del CFDI 4.3 Ejemplo de petición XML [RFC_RECEPTOR] JSON { "rfcReceptor": "CALJ581101M37" } 4.4 Ejemplo de respuesta XML [UUID] [UUID] JSON { "codStatus": "1100", "uuids": [ { "uuid": "[UUID]" },{ "uuid": "[UUID]" } ] } 4.5. Consideraciones Técnicas Se recomienda validar previamente que el RFC receptor sea correcto y activo. No se permite enviar múltiples RFCs por solicitud (cardinalidad 1:1). El sistema solo devolverá UUIDs con estatus "En proceso" de cancelación. Este servicio no genera cancelaciones ni acepta/rechaza solicitudes, solo consulta el estado actual. 5 Consulta de Aceptación o Rechazo de Cancelación CFDI El servicio de Aceptación o Rechazo permite a los receptores de CFDI responder una solicitud de cancelación realizada por el emisor. Aplica únicamente para CFDIs que se encuentran con estatus "En Proceso", es decir, aquellos que requieren autorización del receptor para que su cancelación sea válida. Mediante este servicio, el receptor puede confirmar si acepta o rechaza la cancelación del comprobante correspondiente. La respuesta se debe enviar firmada con el certificado del receptor. Esta operación se realiza mediante un servicio REST. 5.1 Estructura general de la petición Tipo de consulta Formato Cardinalidad Individual XML 1:1 5.2 Parámetros requeridos Endpoint Esta operación se realiza mediante un servicio REST. Método Ambiente URL POST Pruebas 🔗 https://pruebastfd.tralix.com:8081/cancela/answerSoap/ Autenticación y Headers Header Valor esperado Content-Type application/xml ServerKey XSA_API Parámetros Campo Descripción Fecha Fecha y hora de solicitud en formato AAAA-MM-DD HH:MM:SS RfcPacEnviaSolicitud RFC del PAC que envía la solicitud RfcReceptor RFC del receptor del CFDI (quien responde la cancelación) UUID Folio fiscal del comprobante que se desea aceptar o rechazar Respuesta Acción del receptor: Aceptacion o Rechazo Signature Nodo con la firma digital del receptor (uso de certificado) 5.3 Ejemplo de petición [UUID] [Rechazo/Aceptacion] 5.4 Ejemplo de respuesta [UUID] [ESTATUS_UUID] 5.5 Consideraciones Técnicas El UUID debe haber sido previamente consultado como "En Proceso" por el receptor. Solo se permite un UUID por solicitud (cardinalidad 1:1). La firma digital (Signature) debe generarse con el CSD del receptor. La respuesta (aceptación o rechazo) será enviada al SAT mediante el PAC y actualizará el estatus del CFDI. El mismo UUID no puede ser respondido más de una vez. 6 Contacto y Soporte Para soporte técnico o dudas sobre el uso del servicio puede comunicarse con el área de soporte técnico de Tralix vía ticket. Respuestas de Cancelación Respuestas posibles en el proceso de cancelación Durante el flujo de cancelación de CFDI, el servicio de consulta de estados puede devolver diferentes tipos de respuesta según el estatus fiscal del comprobante y las reglas establecidas por el SAT, así como el tipo de relación entre emisor y receptor. Estas respuestas indican el estatus actual del CFDI y si es posible o no cancelarlo, y si requiere aceptación por parte del receptor. A continuación, se detallan los posibles valores devueltos, junto con ejemplos de RFC utilizados comúnmente para pruebas: Código de respuesta Descripción Ejemplo de RFC receptor para pruebas CANCELABLE_C_A CFDI cancelable con aceptación. DAL050601L35 CANCELABLE_S_A CFDI cancelable sin aceptación. WATM640917J45 CANCELADO_C_A CFDI ya fue cancelado con aceptación. EWE1709045U0 CANCELADO_S_A CFDI cancelable sin aceptación. WERX631016S30 EN_PROCESO La solicitud de cancelación está en proceso. XIA190128J61 NO_CANCELABLE El CFDI no cancelable. JUFA7608212V6 PLAZO_VENCIDO Plazo vencido para cancelar. FUNK671228PH6 Notas importantes: Los valores anteriores se devuelven como parte de la respuesta del servicio de Consulta de Estado de CFDI. Es fundamental que el integrador utilice el RFC correcto en las pruebas para obtener el escenario deseado. En ambientes productivos, las respuestas estarán determinadas por la configuración real del comprobante emitido y su relación emisor-receptor.