Ctrl K
Actualizado: Markdown Abrir en Claude Abrir en ChatGPT

Emitir con el CLI

Emite uno o muchos comprobantes desde archivos JSON con ecuafact emitir y sigue cada uno hasta que el SRI responde.

Con ecuafact emitir puedes emitir un comprobante, un lote de comprobantes o una carpeta entera, y ver el resultado de cada uno. Cada archivo lleva la misma estructura de comprobante que recibe la API, que se explica en Emisión de comprobantes, así que puedes reutilizar los JSON que ya genera tu sistema.

En esta página verás cómo emitir y validar antes de enviar, qué significa cada estado que muestra el CLI, cómo reanudar un lote que se cortó y cómo consultar, descargar y reenviar lo que ya emitiste.

Importante

Ambiente de pruebas: sin validez fiscal. Los ejemplos usan el entorno sandbox configurado en tu perfil, como se explica en el inicio rápido del CLI.

Emitir#

ecuafact emitir factura.json
ecuafact emitir lote.json ventas.jsonl
ecuafact emitir ./pendientes -r
ecuafact emitir factura.json --esperar --descargar ride,xml
mi-erp exportar | ecuafact emitir -

emitir acepta archivos .json con un comprobante o con un array de comprobantes, archivos .jsonl, carpetas y la entrada estándar si escribes -. Si tus datos están en un CSV o un Excel, sigue la guía Emitir desde CSV o Excel.

Cuando un comprobante del lote tiene errores, el CLI no envía ninguno. Corrige el comprobante y vuelve a ejecutar el comando, o agrega --continuar-con-errores si prefieres enviar los válidos.

Puedes reenviar el mismo comprobante sin duplicarlo, porque el CLI lo reconoce por su origenReferencia y su referenciaExterna. Por eso, cuando quieras emitir un comprobante nuevo o una versión corregida de uno rechazado, dale otra referenciaExterna.

Antes de emitir puedes revisar el comprobante sin enviar nada. validar busca errores en el archivo, y --dry-run hace lo mismo y además comprueba con la API que tu RUC esté habilitado.

ecuafact validar factura.json
ecuafact emitir factura.json --dry-run

Todas las opciones de emitir están en la referencia.

Resultado de cada comprobante#

Al terminar, el CLI muestra una fila por comprobante con su estado. Esta tabla dice qué significa cada uno y qué hacer.

Estado Qué hacer
autorizado No hagas nada. En produccion tiene validez fiscal.
enviado La API lo recibió y aún no hay resultado del SRI. Usa --esperar o consulta con ecuafact estado <idOperacion>.
en_proceso Seguía sin resultado al terminar la espera. Consulta más tarde y no lo emitas con otra referenciaExterna, porque lo duplicarías.
rechazado El SRI no lo autorizó. Corrígelo y emítelo con una referenciaExterna nueva.
invalido, error Tiene errores y no llegó al SRI. Corrígelo según el mensaje.
no_enviado No se envió porque otro comprobante del lote tiene errores.
pendiente No se confirmó el envío. Reanuda el lote.
cancelado No se emitió. Emítelo con una referenciaExterna nueva.

Si necesitas conservar el resultado, agrega --reporte resultado.csv (o .json). El CLI guarda una fila por comprobante, con su idOperacion y su clave de acceso.

Lotes#

Cada ejecución de emitir queda registrada como un lote, así que si se corta a la mitad, por ejemplo porque se cayó la conexión, puedes reanudarlo en el mismo entorno en el que lo empezaste sin duplicar los comprobantes que ya se enviaron.

ecuafact lote listar
ecuafact lote estado 20261017-093012-0a66
ecuafact lote reanudar 20261017-093012-0a66 --esperar

Seguimiento y consultas#

Para saber en qué quedó una emisión, consulta su operación con estado. Para revisar lo que emitiste en un período, usa comprobantes listar, que también puede exportar el listado a un CSV.

ecuafact estado 3f1c8c1e-6f2a-4b7e-9c3d-2a1b0c9d8e7f
ecuafact comprobantes listar --desde 2026-10-01 --hasta 2026-10-15 --tipo 01 --todas
ecuafact comprobantes listar --todas --salida csv > emitidos.csv

Descargar y reenviar#

descargar baja el RIDE y el XML de los comprobantes autorizados, y correo reenviar vuelve a enviar un comprobante por correo a las direcciones que indiques.

ecuafact descargar 0710202601012345678900110010010000001231234567811 --tipo ride,xml
ecuafact descargar --desde 2026-10-01 --hasta 2026-10-31 --destino ./octubre
ecuafact correo reenviar 0710202601012345678900110010010000001231234567811 --a cliente@correo.com

Si llamas a descargar sin claves de acceso, descarga todos los comprobantes autorizados del período que indiques.

Errores frecuentes#

Mensaje Qué hacer
Credenciales invalidas. Ejecuta ecuafact doctor y revisa la API Key del entorno y que tu IP esté registrada.
El RUC ... no esta habilitado para esta API Key en este entorno. Usa uno de tus RUC, que puedes ver con ecuafact cuenta, y revisa el entorno.
Cupo insuficiente: ... Revisa tu cupo con ecuafact consumo.
Operacion en PRODUCCION sin confirmar En un script, agrega --confirmar produccion.
El lote es del entorno '...' Reanuda el lote con el mismo --entorno con el que lo emitiste.

Siguientes pasos#

No se pudo completar la operación. Recargar ✕