Inicio / Docs / Firma XML


Herramienta de firma XML

Firma XMLs administrativos (postulación DGII, declaración jurada) con tu certificado digital.

⚠
Úsala cuando la App Firma Digital de DGII falle en Windows. Firma con el mismo motor XMLDSig que usamos para tus e-CF. misma validez ante DGII.

Desde el dashboard

  1. En el menú lateral, abre Herramientas.
  2. Arrastra el XML de DGII al área de subida.
  3. Elige el propósito: Postulación, Declaración Jurada u Otro.
  4. Click en Firmar y descargar → se descarga archivo_signed.xml.
  5. Sube el XML firmado al portal DGII.
📝
En el wizard de certificación, los pasos 2 (Postulación) y 14 (Declaración Jurada) tienen la firma integrada inline. no necesitas navegar a otra página.

Endpoint API

POST /api/tools/sign-xml

curl -X POST https://ecf.frandeone.com/api/tools/sign-xml \
  -H "Authorization: Bearer $JWT" \
  -F "[email protected]" \
  -F "purpose=postulacion" \
  -F "stepNumber=2" \
  -G -d "download=1" \
  -o postulacion_signed.xml

Sin download=1. retorna JSON con metadata

{
  "success": true,
  "data": {
    "id": 42,
    "filename": "postulacion_signed.xml",
    "rootElement": "Postulacion",
    "signedPath": "131399950/signed/postulacion/postulacion_signed.xml",
    "downloadUrl": "/api/tools/signed-documents/42/download"
  }
}

Historial

# Listar últimos firmados
curl "https://ecf.frandeone.com/api/tools/signed-documents?purpose=postulacion" \
  -H "Authorization: Bearer $JWT"

# Descargar uno específico (signed por defecto, ?type=original para el sin firmar)
curl "https://ecf.frandeone.com/api/tools/signed-documents/42/download" \
  -H "Authorization: Bearer $JWT" -o doc.xml

Limitaciones

  • Máximo 5 MB por XML.
  • El XML no puede venir ya firmado (responde 409 ALREADY_SIGNED).
  • Firma XMLDSig enveloped con SHA-256 (misma config que e-CF).