Mejores prácticas
- Manda siempre
Idempotency-KeyenPOST /api/v1/ecf. Un timeout de red no debería traducirse en un comprobante duplicado. - Valida antes de emitir con
POST /api/v1/ecf/validatemientras desarrollas, para no gastar secuencias reales por errores de formato. - Prefiere webhooks sobre polling para conocer el estado final de un comprobante: es más rápido y no gasta cuota innecesaria.
- Prueba en TesteCF primero. El flujo es idéntico al de Producción y no consume tu rango de secuencias autorizado.
- No hardcodees el ambiente. Como el ambiente sale de la API key, basta con cambiar la key entre tus entornos de desarrollo, staging y producción.
- Ante un rechazo, revisa
dgii.sequenceUsedantes de emitir otro comprobante. Si esfalse, el comprobante original todavía puede completarse conPOST /api/v1/ecf/{id}/retry. Ver Rechazos y reintentos. - Trata
ecf.rejectedcomo un resultado definitivo. Un rechazo que NovaFE reenvía por su cuenta no lo emite mientras dure el reintento. - Si numeras tú, envía también un
Idempotency-Keyo uninternalNumber. Así, un reintento de tu lado devuelve el comprobante original en lugar de un409por e-NCF repetido.