Saltar al contenido principal

Preguntas Frecuentes (FAQ)

Respuestas a las preguntas más comunes sobre Facturo ECF.

General​

¿Qué es Facturo ECF?​

Facturo ECF es una plataforma que simplifica la integración de facturación electrónica con la DGII (Dirección General de Impuestos Internos) de República Dominicana. Abstrae toda la complejidad técnica permitiendo a los desarrolladores enfocarse en su lógica de negocio.

¿Necesito conocimientos técnicos para usar Facturo ECF?​

Sí, Facturo ECF está diseñado para desarrolladores. Necesitas conocimientos de:

  • APIs REST
  • JSON
  • Programación en algún lenguaje (JavaScript, Python, PHP, etc.)

¿Qué es un NCF o eCF?​

  • NCF: Número de Comprobante Fiscal (físico, tradicional)
  • eCF: Comprobante Fiscal Electrónico (digital, nuevo sistema)

Facturo ECF trabaja con eCF, el nuevo sistema de facturación electrónica de la DGII.

Registro y Configuración​

¿Cómo obtengo una cuenta?​

  1. Solicítala en el formulario de contacto de facturo.do o por WhatsApp
  2. Completa los datos de tu empresa
  3. Verifica tu correo electrónico
  4. Inicia sesión y configura tu perfil

¿Necesito un certificado digital?​

Sí, necesitas un certificado digital emitido por la DGII para firmar tus documentos electrónicos. Puedes obtenerlo en:

  1. Portal de la DGII
  2. Oficinas de la DGII
  3. Proveedores autorizados

¿Puedo usar certificados de prueba?​

Durante el desarrollo emite en el ambiente de pruebas de la DGII (dgii_env: "testecf"), donde los comprobantes no tienen validez fiscal. Consulta los ambientes disponibles.

¿Cómo subo mi certificado?​

  1. Ve a Configuración → Certificados
  2. Haz clic en Subir certificado
  3. Selecciona tu archivo .p12 o .pfx
  4. Ingresa la contraseña del certificado
  5. Guarda

API y Autenticación​

¿Cómo obtengo mi API Key?​

  1. Inicia sesión en el portal
  2. Ve a Configuración → API Keys
  3. Haz clic en Generar nueva API Key
  4. Copia y guarda tu API Key de forma segura
aviso

No podrás ver la API Key nuevamente después de cerrar el modal.

¿Cómo me autentico?​

Envía tu API Key en el header X-API-Key de cada petición. No hay access tokens ni refresh tokens que renovar:

curl "https://ecf.facturord.app/api/v1/companies/$FACTURO_COMPANY_ID/emission/invoices/$TRACK_ID/status" \
-H "X-API-Key: $FACTURO_API_KEY"

¿Qué es el Company ID?​

Es el UUID de tu empresa en Facturo. Forma parte de todas las rutas (/api/v1/companies/{company_id}/...) y lo obtienes en el portal junto con tu API Key.

¿Puedo tener múltiples API Keys?​

Sí, puedes generar múltiples API Keys para diferentes ambientes o aplicaciones.

¿Cómo roto mis API Keys?​

  1. Genera una nueva API Key
  2. Actualiza tus aplicaciones con la nueva key
  3. Verifica que todo funcione correctamente
  4. Revoca la API Key antigua

Documentos​

¿Qué tipos de documentos puedo enviar?​

TipoCódigoUso
Factura de Crédito Fiscal31Ventas a contribuyentes
Factura de Consumo32Ventas a consumidor final
Nota de Débito33Aumentar monto de factura
Nota de Crédito34Disminuir monto de factura
Compras41Registro de compras
Gastos Menores43Gastos pequeños
Regímenes Especiales44Casos especiales
Gubernamental45Entidades del gobierno
Exportaciones46Ventas al exterior
Pagos al Exterior47Pagos a proveedores en el exterior

¿Cuánto tarda en procesarse un documento?​

Típicamente entre 5 y 30 segundos, dependiendo de:

  • Carga del sistema de la DGII
  • Complejidad del documento
  • Tiempo de respuesta de la red

¿Puedo anular un documento?​

Depende de su estado en la DGII:

  • e-NCF no utilizado o no aceptado por la DGII: anúlalo con ANECF (POST /api/v1/companies/{company_id}/emission/cancel-ranges).
  • Comprobante ya aceptado: no puede anularse con ANECF; emite una Nota de Crédito Electrónica (E34).

¿Qué hago si un documento es rechazado?​

  1. Revisa el mensaje de error en la respuesta (message, dgii_status)
  2. Corrige los datos del documento
  3. Usa una nueva secuencia e-NCF y vuelve a emitir
  4. Anula la secuencia rechazada con ANECF

Si el fallo fue temporal (por ejemplo, indisponibilidad de la DGII), usa el endpoint de reintento con el document_id.

tip

No reutilices secuencias de documentos rechazados.

¿Puedo editar un documento enviado?​

No, los documentos enviados no se pueden editar. Si necesitas corregirlo:

  1. Para aumentar monto: Envía una Nota de Débito (tipo 33)
  2. Para disminuir monto: Envía una Nota de Crédito (tipo 34)
  3. Para anular un comprobante aceptado: Envía una Nota de Crédito (tipo 34) por el total

Errores Comunes​

Error 401 / 403​

Causa: API Key ausente, inválida o sin permisos para la operación o la empresa.

Solución:

  • Verifica el header X-API-Key
  • Revisa los permisos (scopes) de la clave
  • Comprueba que el company_id corresponda a tu empresa

Error: "Invalid RNC"​

Causa: El RNC proporcionado no es válido.

Solución:

  • Verifica que tenga 9 dígitos
  • Valida el dígito verificador
  • Asegúrate de no incluir guiones o espacios

Error: "Total amount mismatch"​

Causa: Totales.MontoTotal no coincide con la suma de las líneas más el ITBIS.

Solución:

// Calcula los totales a partir de las líneas (ejemplo con ITBIS 18 %)
const items = ecf.DetallesItems.Item;
const gravado18 = items
.filter((i) => i.IndicadorFacturacion === 1)
.reduce((sum, i) => sum + i.MontoItem, 0);
const exento = items
.filter((i) => i.IndicadorFacturacion === 4)
.reduce((sum, i) => sum + i.MontoItem, 0);
const totalITBIS1 = Math.round(gravado18 * 0.18 * 100) / 100;
const montoTotal = gravado18 + exento + totalITBIS1;

Error: "Sequence already used"​

Causa: La secuencia eCF ya fue utilizada.

Solución:

  • Usa secuencias únicas incrementales
  • No reutilices secuencias de documentos rechazados
  • Mantén un contador de secuencias en tu base de datos
  • Anula con ANECF las secuencias que no vayas a usar

Error: "Certificate expired"​

Causa: El certificado digital ha expirado.

Solución:

  1. Obtén un nuevo certificado de la DGII
  2. Súbelo al portal de Facturo ECF
  3. Vuelve a intentar el envío

Error de formato de fecha​

Causa: La fecha no está en el formato que exige la DGII.

Solución: todas las fechas del e-CF van como DD-MM-AAAA:

// ✅ Correcto
FechaEmision: "17-01-2026"

// ❌ Incorrecto
FechaEmision: "2026-01-17"
FechaEmision: "17/01/2026"

Seguridad​

¿Es seguro almacenar mi certificado en Facturo ECF?​

Sí, los certificados se almacenan:

  • Encriptados en reposo
  • En infraestructura segura (AWS/Azure)
  • Con acceso restringido
  • Bajo normas de cumplimiento

¿Puedo ver el certificado después de subirlo?​

No, por seguridad no puedes descargar o ver el certificado después de subirlo. Solo puedes:

  • Ver metadatos (fecha de expiración, emisor)
  • Reemplazarlo con uno nuevo
  • Eliminarlo

¿Cómo protejo mi API Key?​

  • Usa variables de entorno
  • Nunca la incluyas en código fuente
  • No la compartas públicamente
  • Rótala regularmente
  • Usa diferentes keys por ambiente

Integración​

¿Qué lenguajes de programación son compatibles?​

Facturo ECF es una API REST, compatible con cualquier lenguaje que pueda hacer peticiones HTTP:

  • JavaScript/Node.js
  • Python
  • PHP
  • C#/.NET
  • Java
  • Ruby
  • Go
  • Y muchos más

¿Hay clientes (SDKs) disponibles?​

Sí, ofrecemos clientes oficiales de un solo archivo:

¿Hay ejemplos de código?​

Sí, en el Inicio Rápido y en la guía de cada cliente oficial.

Soporte y Ayuda​

¿Dónde puedo obtener ayuda?​

¿Hay soporte en español?​

Sí, todo nuestro soporte está disponible en español.

¿Cuál es el horario de soporte?​

  • Discord: 24/7 (comunidad)
  • Email: Lunes a Viernes, 9:00 AM - 6:00 PM (AST)
  • Urgencias: WhatsApp

¿Cómo reporto un bug?​

  1. Verifica que sea realmente un bug
  2. Busca en GitHub Issues si ya fue reportado
  3. Crea un nuevo issue con:
    • Descripción del problema
    • Pasos para reproducir
    • Respuesta esperada vs actual
    • Logs relevantes (sin credenciales)

Precios​

¿Cuánto cuesta Facturo ECF?​

Visita facturo.do/#precios para ver nuestros planes.

¿Hay plan gratuito?​

Sí, tenemos un plan gratuito para desarrollo y pruebas con:

  • Ambiente de prueba ilimitado
  • Hasta 100 documentos/mes en producción
  • Todas las funcionalidades

¿Cómo se factura el servicio?​

Facturamos basándonos en:

  • Número de documentos procesados
  • Plan contratado
  • Servicios adicionales (si aplica)

Regulación y Cumplimiento​

¿Facturo ECF está certificado por la DGII?​

Facturo ECF cumple con todas las especificaciones técnicas de la DGII para proveedores de facturación electrónica.

Sí, todos los documentos procesados y aprobados por la DGII tienen plena validez legal.

¿Cómo se almacenan los documentos?​

Los documentos XML firmados se almacenan:

  • Por un mínimo de 10 años (requisito DGII)
  • En servidores seguros
  • Con backups regulares
  • Accesibles en cualquier momento

¿No encuentras tu pregunta?​