Método para Responder las solicitudes pendientes de cancelación (ResponseCancelRequest)
Cuando el CFDI requiere la aceptación para ser cancelado, la API permite enviar la respuesta de Aceptación o Rechazo a los documentos pendientes de cancelación.
Para enviar la respuesta a los documentos con solicitud pendiente de cancelación, se puede utilizar el método POST ResponseCancelRequest.
Para hacer uso de este método, ingrese la URL de acuerdo con el ambiente a consumir:
https://developers.gosocket.net/api/v1/Document/ResponseCancelRequesthttps://developers-sbx.gosocket.net/api/v1/Document/ResponseCancelRequestNo existe un ambiente de pruebas para la consulta de documentos en el SAT. Si se cancela un documento productivo desde el ambiente de pruebas, este quedará cancelado realmente ante el SAT.
El método tiene los siguientes parámetros:
| ResponseCancelRequest (request) | |||
|---|---|---|---|
| Parámetro | Tipo | Descripción | Valores permitidos |
| RFCReceptor* | String | ID fiscal del receptor del documento. Personas Morales: 3 letras, 6 dígitos y 3 caracteres alfanuméricos (12). Personas Físicas: 4 letras, 6 dígitos y 3 caracteres alfanuméricos (13). | Caracteres alfanuméricos. Formato esperado: `[A-Z&Ñ]{3,4}[0-9]2(0[1-9] |
| UUID* | String | Identificador fiscal del documento a nivel país. | 36 caracteres alfanuméricos |
| Response* | String | Respuesta a la solicitud pendiente de cancelación | A – Aceptación R - Rechazo |
- Obligatorio
Ejemplo de petición
Para este método utilizamos la pestaña Body de Postman.
- Seleccione el tipo de método. En este caso, se debe seleccionar POST.
- Ingrese la URL del método.
- Ingrese los parámetros que se muestran en la tabla anterior con sus valores correspondientes.
{
"RFCReceptor":"ANJ235103JM8",
"UUID":"00000000-0000-0000-0000-000000000000",
"Response":"A"
}- Presione Send.
Ejemplo de respuesta
La Entidad Tributaria responde las consultas a través de la API de la siguiente forma: Resultado Satisfactorio:
{
"Success": true,
"GlobalDocumentId": "00000000-0000-0000-0000-000000000000",
"CountryDocumentId": null,
"OtherData": {
"Folios": "[{\"UUID\":\"00000000-0000-0000-0000-000000000000\",\"EstatusUUID\":\"1001\"}]",
"RFCPac": "PPD101129EA3",
"Fecha": "2025-08-26T16:32:52",
"RFCReceptor": "ANJ235103JM8"
},
"Messages": [
"0"
],
"ResponseValue": null,
"Code": "1000",
"Description": "Se recibió la respuesta de la petición de forma exitosa",
"ErrorException": null
}Si el resultado del envío NO es satisfactorio, la API de Inbox responderá con un mensaje de error: Empresa no activa para consumir el método:
{
"Success": false,
"GlobalDocumentId": "00000000-0000-0000-0000-000000000000",
"CountryDocumentId": null,
"OtherData": null,
"Messages": null,
"ResponseValue": "Permis Required",
"Code": "500",
"Description": "Empresa no activa para utilizar el evento CancelFunction",
"ErrorException": null
}Error con el certificado del cliente:
{
"Success": false,
"GlobalDocumentId": "00000000-0000-0000-0000-000000000000",
"CountryDocumentId": null,
"OtherData": null,
"Messages": [
"Regla: Error de Certificado, verifique el certificado y reintente nuevamente. Failed to load certificate after retries"
],
"ResponseValue": null,
"Code": "500",
"Description": null,
"ErrorException": null
}Error con el certificado del cliente:
{
"Success": false,
"GlobalDocumentId": "00000000-0000-0000-0000-000000000000",
"CountryDocumentId": null,
"OtherData": null,
"Messages": [
"Regla: Error de Certificado, verifique el certificado y reintente nuevamente. .Cer or .Key estan vacios para el accountCode: ANJ235103JM8"
],
"ResponseValue": null,
"Code": "500",
"Description": null,
"ErrorException": null
}Interpretar la Respuesta
Para interpretar correctamente la respuesta, tome en cuenta los siguientes criterios:
| ResponseCancelRequest (response) | |||
|---|---|---|---|
| Parámetro | Tipo | Descripción | Valores permitidos |
| Success | Boolean | Indica si la petición se ejecutó correctamente. | true: La petición se ejecutó correctamente. false: La petición se ejecutó con alguna inconsistencia. |
| GlobalDocumentId | String | null | 00000000-0000-0000-0000-000000000000 |
| CountryDocumentId | String | null | null |
| OtherData | String | Información recibida relacionada con la respuesta de la solicitud pendiente de cancelación. | null o un objeto con Folios, RFCPac, Fecha y RFCReceptor. |
| OtherData.Folios | String | Nodo que contiene la información del UUID y el estatus de la respuesta de cancelación. Ver tabla EstatusUUID. | Ejemplo: [{"UUID":"00000000-0000-0000-0000-000000000000","EstatusUUID":"1001"}] |
| OtherData.RFCPac | String | Identificador fiscal del PAC por medio del cual se envió la respuesta a la solicitud de cancelación. | RFC válido. Ejemplo: PPD101129EA3 |
| OtherData.Fecha | String | Fecha de envío de la respuesta a la solicitud de cancelación | |
| OtherData.RFCReceptor | String | Identificador fiscal del receptor del documento al cual se le dio respuesta a la solicitud de cancelación. | RFC válido del receptor. |
| Messages | String | Código global de la invocación. Un valor de 0 (cero) indica que la invocación se dio exitosamente, o de otra forma se indica la razón del problema. | Ejemplo: "0" “Error de Certificado” |
| ResponseValue | String | null | null |
| Code | String | Código de respuesta del proceso | Ver tabla EstatusUUID |
| Description | String | Indica la descripción del código de respuesta del proceso | Ver tabla EstatusUUID |
| ErrorException | String | null | null |
| EstatusUUID | |||
| --- | --- | ||
| Código | Descripción | ||
| 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 | ||
| 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 |