Consultar un CFDI de retenciones
GEThttps://api.cfdi.express/v1/retenciones/{id}API key
Devuelve una constancia de retenciones: estatus, UUID, periodo, montos derivados, archivos y cancelación.
Desde la v1.43.0. Úsalo para seguir un timbrado que respondió 202 (status: "stamping") y para leer las URLs firmadas cuando files.status pasa a ready.
Por MCP, get_retencion devuelve el mismo recurso.
Autenticación
Authorization: Bearer sk_test_... | sk_live_...El header x-account-id indica la cuenta. Si no eres miembro, la respuesta es 403.
Parámetros
Parámetros de ruta
| Campo | Tipo | Descripción |
|---|---|---|
| idreq | string | Id de la retención. |
Ejemplos
cURL
curl https://api.cfdi.express/v1/retenciones/ret7k3q9x2m4v1t8p6d0n5cb \
-H "Authorization: Bearer sk_test_..."Respuesta
200 OK
{
"id": "ret7k3q9x2m4v1t8p6d0n5cb",
"object": "retencion",
"livemode": false,
"status": "stamped",
"merchantId": "mkq2f8v3x1t7p9d4n6c0b5rz",
"uuid": "9f1b2c3d-4e5f-4a6b-8c9d-0e1f2a3b4c5d",
"serie": "RET",
"folio": 42,
"folioText": "202609C0042",
"fecha": "2026-10-01T10:00:00",
"cveRetenc": "26",
"ejercicio": 2026,
"mes": 9,
"periodicidad": "02",
"tipoServicio": "05",
"montoTotOperacion": 1000,
"montoTotRet": 360,
"isrRetenido": 200,
"ivaRetenido": 160,
"ivaTrasladado": 160,
"difIvaEntregadoPrestServ": 0,
"comisiones": 150,
"currency": "MXN",
"files": { "status": "ready" },
"stampedAt": "2026-10-01T16:00:10.512Z",
"createdAt": "2026-10-01T16:00:08.907Z"
}Errores
| Status | code | Cuándo aparece |
|---|---|---|
| 401 | unauthorized | Falta el header Authorization o la llave es inválida. |
| 404 | not_found | La retención no existe en tu cuenta. |
Notas
- El recurso también trae
receiver,servicios,impRetenidosycancellation. Los campos decancellationno están detallados en el OpenAPI publicado: el acuse queda en ese objeto cuando el estatus es de cancelación.
