Eliminar CSD
Elimina el CSD de un comercio. El comercio no se borra y los CFDIs ya timbrados no cambian. Sin CSD no puede timbrar ni cancelar hasta que vuelvas a subir el certificado.
Disponible a partir de la versión v1.34.0 de la API.
La operación borra el certificado y su llave privada cifrada, y desactiva el CSD en el PAC. Si otro comercio usa el mismo certificado, en el PAC se queda activo. No se puede deshacer: para restaurarlo, vuelve a subir el .cer y el .key con POST /v1/merchants/{id}/csd.
Sin CSD, ese comercio no puede timbrar facturas, notas de crédito, nóminas ni complementos de pago, ni cancelar CFDIs.
A partir de la v1.35.0, DELETE /v1/merchants/{id} también borra el CSD de ese comercio. Si vuelves a crear un RFC que habías borrado, se restaura el mismo comercio (mismo id, historial y folios), sin CSD. Antes, esa operación fallaba con un error 500.
Authorization: Bearer sk_test_... | sk_live_...Parámetros
Parámetros de ruta
| Campo | Tipo | Descripción |
|---|---|---|
| idreq | string | Id del comercio. |
Ejemplos
curl -X DELETE https://api.cfdi.express/v1/merchants/mkq2f8v3x1t7p9d4n6c0b5rz/csd \
-H "Authorization: Bearer sk_test_..."Respuesta
{
"id": "mkq2f8v3x1t7p9d4n6c0b5rz",
"object": "merchant",
"livemode": false,
"rfc": "EKU9003173C9",
"legalName": "ESCUELA KEMPER URGATE",
"regimenFiscal": "601",
"zip": "42501",
"serie": "A",
"defaultClaveProdServ": "01010101",
"defaultClaveUnidad": "E48",
"csd": null,
"logoUrl": "https://files.cfdi.express/logos/mkq2f8...png?X-Amz-Expires=900&...",
"createdAt": "2026-08-18T16:20:03.114Z"
}{
"type": "https://api.cfdi.express/docs/errors/validation_error",
"title": "Validation error",
"status": 400,
"code": "validation_error",
"detail": "This merchant has documents still stamping or awaiting cancellation — try again once they finish",
"subcode": "documents_in_flight"
}{
"type": "https://api.cfdi.express/docs/errors/not_found",
"title": "Not found",
"status": 404,
"code": "not_found",
"detail": "This merchant has no CSD uploaded"
}Errores
| Status | code | Cuándo aparece |
|---|---|---|
| 400 | validation_error | subcode documents_in_flight. Hay facturas, pagos o nóminas en stamping o cancel_pending. Se puede reintentar cuando terminen. |
| 401 | unauthorized | Falta el header Authorization o la llave es inválida. |
| 404 | not_found | El comercio no existe, está eliminado o no tiene CSD. Sin CSD, el mensaje es "This merchant has no CSD uploaded". |
Notas
- Devuelve el recurso Merchant completo, con
csdennull. - El comercio no se borra. Los CFDIs ya timbrados no cambian.
- En el dashboard, «Eliminar CSD» solo aparece en el menú de acciones si el comercio tiene CSD. El diálogo se titula «Eliminar CSD — {RFC}» y explica que se borran el certificado y su llave privada. El botón Eliminar CSD va en rojo.
- Para volver a timbrar hay que subir el certificado de nuevo. Hasta entonces no puede timbrar facturas, notas de crédito, nóminas ni complementos de pago, ni cancelar CFDIs.
