E32 — Factura de Consumo Electrónica#
Para qué sirve#
Es la factura para el consumidor final: la venta en caja, el cliente que no necesita crédito fiscal. Los datos del comprador son opcionales.
Cuándo NO usarlo#
Campos#
Obligatorios: tipo_ecf = "32", encf (E32…), fecha_emision, tipo_pago, direccion_emisor,
monto_total, valor_pagar, totales por tasa y detalle.
Obligatorios desde RD$250,000 (DGII; el API no lo valida): rnc_comprador (RNC o cédula) y
razon_social_comprador. Ver abajo.
Opcionales: datos del comprador por debajo de RD$250,000 y demás datos del comprador, formas_pago,
fecha_limite_pago, termino_pago, tipo_ingresos (por defecto 01), indicador_monto_gravado
(por defecto 0), descuento por línea.
No aplican (se ignoran): fecha_vencimiento (el XSD del E32 no tiene FechaVencimientoSecuencia),
totales de retención y percepción.
Totales#
Igual que E31. Ejemplo 1: café 2 × 150.00 = 300.00; sándwich 1 × 350.00 = 350.00;
monto_gravado_i1 = 650.00; total_itbis1 = 650.00 × 18 % = 117.00; monto_total = 767.00.
Particularidades#
Menos de RD$250,000: resumen RFCE#
Si monto_total < 250,000.00, el comprobante no se envía completo a la DGII: el sistema envía un
Resumen de Factura de Consumo (RFCE) con el código de seguridad ya entregado.
- Estado final:
resumido(la DGII recibió el resumen). Si la DGII rechaza el RFCE, el estado queda enfallidocon el mensajeDGII rechazó el RFCE: .... - La URL del QR usa el dominio de Factura de Consumo:
https://fc.dgii.gov.do/{TesteCF|CerteCF|ecf}/consultatimbreFC?.... - Validación XSD: para estos E32 el API no rechaza el request si el XML completo no cumple el XSD (solo lo registra). Asegúrate tú de que cumple; los ejemplos de esta página lo cumplen.
RD$250,000 o más: e-CF completo#
Se envía a la DGII como cualquier e-CF (estados enviado → Aceptado) y el QR usa
https://ecf.dgii.gov.do/{...}/consultatimbre.
DGII exige identificar al comprador (RNC o cédula) cuando el monto total es RD$250,000 o más. El API
todavía no lo valida: si lo omites, el comprobante se envía igual y DGII puede rechazarlo. Envía
rnc_comprador y razon_social_comprador.
Consumidor final sin datos#
Si no envías rnc_comprador ni razon_social_comprador, el XML lleva la sección <Comprador> vacía
(el XSD del E32 la exige aunque todos sus campos sean opcionales).
Ejemplo 1: consumidor final, pago con tarjeta (va en RFCE)#
{
"factura": {
"tipo_ecf": "32",
"encf": "E320000000001",
"fecha_emision": "2026-10-03",
"indicador_monto_gravado": 0,
"tipo_ingresos": "01",
"tipo_pago": "1",
"formas_pago": [
{ "forma_pago": "3", "monto": 767.00 }
],
"direccion_emisor": "Av. Winston Churchill 1099, Santo Domingo",
"monto_gravado_total": 650.00,
"monto_gravado_i1": 650.00,
"total_itbis": 117.00,
"total_itbis1": 117.00,
"monto_total": 767.00,
"valor_pagar": 767.00
},
"detalle": [
{
"numero_linea": 1,
"nombre_item": "Cafe americano",
"indicador_bien_servicio": 1,
"indicador_facturacion": 1,
"cantidad": 2,
"unidad_medida": "43",
"precio_unitario": 150.00,
"monto_item": 300.00
},
{
"numero_linea": 2,
"nombre_item": "Sandwich de pollo",
"indicador_bien_servicio": 1,
"indicador_facturacion": 1,
"cantidad": 1,
"unidad_medida": "43",
"precio_unitario": 350.00,
"monto_item": 350.00
}
]
}
Ejemplo 2: consumo de RD$283,200.00 con comprador identificado (e-CF completo)#
monto_gravado_i1 = 240,000.00; total_itbis1 = 43,200.00; monto_total = 283,200.00 ≥ 250,000.00.
{
"factura": {
"tipo_ecf": "32",
"encf": "E320000000002",
"fecha_emision": "2026-10-03",
"indicador_monto_gravado": 0,
"tipo_ingresos": "01",
"tipo_pago": "1",
"formas_pago": [
{ "forma_pago": "2", "monto": 283200.00 }
],
"direccion_emisor": "Av. Winston Churchill 1099, Santo Domingo",
"rnc_comprador": "40200000001",
"razon_social_comprador": "MARIA RODRIGUEZ",
"monto_gravado_total": 240000.00,
"monto_gravado_i1": 240000.00,
"total_itbis": 43200.00,
"total_itbis1": 43200.00,
"monto_total": 283200.00,
"valor_pagar": 283200.00
},
"detalle": [
{
"numero_linea": 1,
"nombre_item": "Juego de comedor 8 sillas",
"indicador_bien_servicio": 1,
"indicador_facturacion": 1,
"cantidad": 1,
"unidad_medida": "10",
"precio_unitario": 240000.00,
"monto_item": 240000.00
}
]
}
Respuesta esperada#
201 como en el README. Para el ejemplo 1, url_dgii empieza por
https://fc.dgii.gov.do/TesteCF/consultatimbreFC? (en testecf) y el estado final es resumido. Para el
ejemplo 2, https://ecf.dgii.gov.do/TesteCF/consultatimbre? y el estado final es Aceptado.