Compras Recibidas
Gestión de e-CF que tus proveedores te emiten a ti. Cada e-CF recibido por DGII llega aquí, genera un asiento contable automático (Mayor + reporte 606) y queda disponible para que aceptes o rechaces comercialmente.
Cómo funciona
- DGII entrega el e-CF al endpoint público de tu empresa. El sistema valida firma + cadena de certificación + persiste el documento en Compras Recibidas.
- Un asiento contable compuesto se genera automáticamente (DR Gastos + DR ITBIS a Favor / CR Cuentas por Pagar). Para Notas de Crédito (tipo 34), la inversión es automática.
- El documento aparece en el reporte 606 desde el momento de la recepción. No necesitas hacer nada para que quede registrado.
- Cuando revises el documento puedes aceptarlo (Estado=1) o rechazarlo (Estado=2). Esto emite un ACECF firmado que DGII entrega al emisor.
Cómo usarla
- Ver detalle: clic sobre cualquier fila. Verás el desglose por línea, las retenciones declaradas y el asiento contable vinculado.
- Aceptar comercialmente: confirma que la compra es correcta. El status pasa a
Procesada. El emisor recibe un ACECF con Estado=1. - Rechazar comercialmente: dispara un modal donde indicas código DGII (1–4) y un detalle ≥5 caracteres. Al confirmar:
- El sistema construye y firma el ACECF con tu certificado.
- Lo envía a DGII para que llegue al emisor.
- Revierte automáticamente el asiento (queda la reversa en Mayor para auditoría).
- El status pasa a
Rechazada.
- Proveedor: cada compra muestra el nombre del proveedor y su RNC debajo. El nombre sale del propio comprobante; en las importadas por QR, del padrón de la DGII. Si no aparece en ninguno, verás «Sin nombre».
- Ordenar y paginar: haz clic en el título de cualquier columna para ordenar (un clic ascendente, otro descendente, el tercero quita el orden). La lista muestra 50 comprobantes por página; abajo puedes cambiar a 25, 100 o 200. Se cargan los 500 más recientes.
- Filtros: por estado, tipo e-CF, búsqueda por nombre del proveedor, e-NCF o RNC, o la opción Solo sin asiento para encontrar documentos que no se pudieron postear.
Códigos de motivo de rechazo (DGII Norma 06-2018)
| Código | Motivo | Úsalo cuando… |
|---|---|---|
| 1 | Bienes o servicios no recibidos | La mercadería no llegó, o el servicio no se prestó. |
| 2 | Cantidades no coinciden | Recibiste menos (o más) unidades de las facturadas. |
| 3 | Precios no coinciden | El precio unitario o total difiere del acordado. |
| 4 | Otros motivos | Cualquier otro motivo. Especifica claramente en el detalle. |
El detalle libre queda embebido en el XML firmado que recibe el emisor. Tiene valor legal — sé específico.
Estados
- Pendiente (
received): recién llegó. Debe revisarse. - Procesada (
processed): aceptaste comercialmente o no requiere acción. Asiento activo en Mayor. - Rechazada (
rejected): enviaste ACECF Estado=2. El asiento contable fue revertido atómicamente. Si la reversa falló (ej. período cerrado), verás un banner con el error y deberás ajustar manualmente en Contabilidad.
Sin asiento (KPI)
Documentos que no tienen asiento vinculado. Suele ser por:
- Llegaron antes de activar el posteo automático (S8b, 17-abr-2026).
- Falta un mapping en tu plan de cuentas (ej.
ecf_receptionoitbis_purchase). - La cuenta destino es cuenta de control y el asiento fue rechazado.
Revisa cada caso en Contabilidad → Mapeo y re-dispara desde la cola de posteo (cuando exista — S8).
Importar e-CF por QR (F24)
Cuándo usarlo. Algunas cadenas grandes de RD (supermercados, retailers) emiten e-CFs y los aceptan en DGII, pero no los pushean al endpoint del comprador. El recibo impreso siempre lleva un QR debajo del total — esa URL contiene los datos suficientes para registrar la compra y validarla contra DGII.
Si tu Compras Recibidas no muestra una compra que sí está en tu recibo impreso, este es el camino para registrarla.
Cómo funciona.
- Pulsa el botón verde Importar e-CF (QR) en el header.
- Pega la URL que aparece bajo el QR del recibo (empieza con
https://ecf.dgii.gov.do/...ohttps://fc.dgii.gov.do/...), o usa la pestaña Escanear cámara para leerlo automáticamente. - Pulsa Validar URL. El sistema parsea los datos y muestra una vista previa: emisor, e-NCF, tipo, fecha, monto.
- Selecciona el desglose ITBIS (solo aparece para variant estándar):
- Todo gravado 18% — la mayoría de las compras (RD$1,180 → gravado 1,000 + ITBIS 180).
- Exento — para compras sin ITBIS (alimentos, medicinas, servicios exentos).
- Necesito desglose manual — el asiento queda en borrador para que el contador complete el desglose después.
- Pulsa Importar e-CF. El backend consulta DGII para confirmar autenticidad. Si DGII dice Aceptado, se persiste la compra y se genera el asiento contable.
Casos especiales.
| Situación | Qué pasa |
|---|---|
| El RNC del comprador en el QR es de otra empresa | Rechazado irrevocable. No es deducible para ti — sería evasión asentar gastos de otra empresa. |
| El e-CF ya estaba registrado (push DGII previo) | Mensaje informativo con link al registro. Nunca se duplica. |
| El e-CF ya se importó por QR antes | Mensaje + link al asiento existente. |
| Tipo 31 (Crédito Fiscal) sin RncComprador | Rechazado — el e-CF está mal emitido (Norma 06-2018 obliga RncComprador). |
| Tipo 32/33/34/43 sin RncComprador | El sistema te pide confirmación explícita de que la compra fue para tu empresa. Si confirmas, la compra se asienta con flag "receptor no verificado" (visible en el asiento + reportes 606). |
| DGII responde "No fue encontrado" | Rechazado. El e-CF que escaneaste no existe en DGII — probablemente impresión falsa o datos manipulados. |
| Período contable cerrado | El asiento se crea en borrador con razón "período cerrado". Tu contador debe decidir reabrir el período o ajustar como gasto del período actual. |
| DGII no responde (timeout) | Mensaje "DGII no responde, reintenta en unos minutos". El registro NO se crea hasta confirmar. |
Limitaciones del modo QR.
- Sin desglose por línea. El QR solo trae monto total; no trae la lista de productos. El asiento contable queda con encabezado (Gastos + ITBIS + CxP) pero sin detalle de items. Para detalle por línea sigue requiriéndose el push DGII (cuando llegue) o ingreso manual desde Gastos.
- ITBIS asumido. Como el QR no separa gravado/ITBIS, el sistema usa la opción que tú elegiste en el modal. Si la realidad es mixta (parte gravado, parte exento), elige Necesito desglose manual y completa después en el asiento borrador.
- Variant FC (Factura Consumo < 250K). Estos QRs solo traen 4 params y no incluyen RncComprador ni FechaEmision. Se asienta como exento por simplicidad — ajusta en borrador si tiene ITBIS.
Trazabilidad. Cada importación QR queda marcada con badge QR verde en la tabla. Los rechazos se loguean en una tabla auxiliar (fe_qr_imports_failed) que el equipo puede consultar para forensia.
Exportar el 606
El botón Exportar 606 arma el formato de compras de la DGII con los e-CF recibidos del mes. Por defecto propone el mes anterior, que es el que se declara antes del día 15.
Importante: este 606 solo incluye los e-CF recibidos. Si en el mes tuviste otras compras (facturas de papel serie B, gastos menores), tienen que ir en el mismo 606. El archivo TXT todavía no se ha validado con la herramienta de pre-validación de la DGII: pásalo por ella antes de enviarlo.
Lo que se llena solo, desde el comprobante: RNC, e-NCF, fecha, montos sin ITBIS, ITBIS, el reparto entre servicios y bienes (cada línea del e-CF dice qué es) y, cuando el proveedor la declara, la forma de pago.
Lo que decides tú (desde listas, sin escribir):
- Tipo de bienes y servicios (01 Gastos de personal … 11 Seguros). Lo eliges una vez por proveedor y se usa en todas sus compras. Si una compra es distinta, marca Solo esta compra.
- Servicios / Bienes, solo cuando el comprobante no permite separarlos (por ejemplo, mezcla bienes y servicios con el ITBIS incluido en los precios).
- Forma de pago, cuando el proveedor puso «Otras formas» o no la indicó.
Dos archivos:
- Excel: las 23 columnas oficiales en el mismo orden que la herramienta de la DGII, para que tu contador las pegue ahí. Sale siempre; lo que falta queda vacío y la última columna dice qué es.
- TXT: listo para la Oficina Virtual. Solo se habilita cuando todas las compras del mes están completas y el RNC de tu empresa está configurado.
Compras que nunca entran al TXT (van en el Excel para que las revise el contador): las importadas por QR, porque su ITBIS se supuso al importarlas; las notas de crédito o débito; las facturas de consumo; y las que traen impuestos adicionales o retención de ISR. Las rechazadas comercialmente no entran al 606, y las importadas sin fecha aparecen listadas aparte.
El ITBIS llevado al costo y el sujeto a proporcionalidad salen en 0: todo el ITBIS se declara como adelantable. Si tienes ventas exentas o gastos no deducibles, tu contador debe ajustarlo.
Permisos
| Rol | Ver | Aceptar / Rechazar |
|---|---|---|
| Owner | ✅ | ✅ |
| Admin | ✅ | ✅ |
| Contador | ✅ | ✅ |
| Sales Rep | ❌ | ❌ |
| Viewer | ✅ | ❌ |
Exportar el 606 requiere ecf:export (Owner, Admin y Contador) y completar sus datos requiere ecf:edit.
El permiso granular para aceptar o rechazar es ecf:approve_commercial. El rol Contador lo tiene por defecto porque en la práctica dominicana es quien valida gastos y rechaza comprobantes incorrectos.
Preguntas frecuentes
¿Qué pasa si acepto pero luego descubro un error?
No puedes revertir una aceptación vía ACECF. Debes coordinar con el emisor para que emita una Nota de Crédito (tipo 34), que llegará aquí también y compensará automáticamente el asiento original.
¿Los rechazos llegan al emisor instantáneamente?
DGII es el intermediario. Normalmente el emisor lo ve en su portal en minutos. El track-id del envío queda en el XML firmado (columna commercial_rejection_xml).
¿Puedo editar un rechazo enviado?
No. Los ACECF son inmutables por regulación. Si te equivocaste, contacta al emisor para coordinar una corrección.
Me dice que mi sesión expiró y no carga nada. ¿Perdí mis comprobantes?
No. Tus datos están en la nube y no se tocan: lo único que caducó es la sesión del navegador, algo normal si dejaste la pestaña abierta mucho tiempo. El sistema intenta renovarla solo; si no lo consigue, vuelve a iniciar sesión y todo aparece igual que antes — incluida tu certificación, que tampoco se ve afectada.
¿Qué hago si el banner dice "ajuste contable manual requerido"?
Significa que el ACECF se envió correctamente a DGII pero la reversa del asiento falló (típicamente porque el período ya estaba cerrado). Ve a Contabilidad → Asientos, busca el asiento original por eNCF y usa Revertir. Si el período está cerrado, habrá que reabrirlo con razón formal (Admin u Owner).