Documentación / API / Emisores (merchants)

Eliminar CSD

DELETEhttps://api.cfdi.express/v1/merchants/{id}/csdAPI key

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.

Autenticación
Authorization: Bearer sk_test_... | sk_live_...

Parámetros

Parámetros de ruta

CampoTipoDescripción
idreqstringId del comercio.

Ejemplos

cURL
curl -X DELETE https://api.cfdi.express/v1/merchants/mkq2f8v3x1t7p9d4n6c0b5rz/csd \
  -H "Authorization: Bearer sk_test_..."

Respuesta

200 OK
{
  "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"
}
400 — documentos en curso
{
  "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"
}
404 — sin CSD
{
  "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

StatuscodeCuándo aparece
400validation_errorsubcode documents_in_flight. Hay facturas, pagos o nóminas en stamping o cancel_pending. Se puede reintentar cuando terminen.
401unauthorizedFalta el header Authorization o la llave es inválida.
404not_foundEl 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 csd en null.
  • 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.

Continuar