Saltar a contenido

e-CF 32 — Factura de Consumo Electrónica

POST /api/v1/documents/32

Es el comprobante de las ventas a consumidor final (B2C): el mayor volumen de la operación diaria. No sustenta crédito fiscal, por eso identificar al comprador es opcional… salvo que el monto llegue al umbral.

El umbral de RD$250.000 lo cambia todo

Este es el punto que más confunde. El comportamiento del tipo 32 depende de totales.monto_total:

Por debajo de RD$250.000 Igual o por encima de RD$250.000
Comprador Opcional (venta a consumidor final) Obligatorio (rnc y razon_social)
Líneas de detalle Hasta 10.000 Hasta 1.000
Fecha de vencimiento en la RI No se imprime No se imprime
Cómo se transmite Como resumen (RFCE) al servicio de la DGII para facturas de consumo Como e-CF completo
Timbre del QR ConsultaTimbreFC con 4 parámetros ConsultaTimbre con 7 parámetros

Usted envía el mismo JSON en ambos casos: nosotros decidimos cómo transmitirlo según el monto. Por debajo del umbral firmamos y conservamos el e-CF completo (que es su obligación conservar) y a la DGII le remitimos únicamente el resumen, que referencia el código de seguridad del comprobante completo. Todo esto es transparente para su integración.

Particularidades

Aspecto Regla
Comprador Opcional por debajo del umbral. Puede usar identificador_extranjero si no hay RNC.
Bonos y certificados de regalo Es el único tipo que admite la forma de pago 5.
Venta de un bono Use indicador_facturacion: 0 (No facturable): no es una venta de bien ni servicio todavía.
referencia Opcional.

Ejemplo mínimo (consumidor final)

Sin bloque comprador: es una venta de mostrador.

{
  "id_doc": {
    "tipo_ingresos": "01",
    "tipo_pago": "1",
    "formas_pago": [
      { "forma": "1", "monto": 590.00 }
    ]
  },
  "items": [
    {
      "nombre": "Camisa",
      "cantidad": 10,
      "unidad_medida": "34",
      "precio_unitario": 50.00,
      "monto": 500.00,
      "indicador_facturacion": 1,
      "indicador_bien_servicio": "1"
    }
  ],
  "totales": {
    "monto_gravado_total": 500.00,
    "itbis1": 18,
    "total_itbis": 90.00,
    "monto_total": 590.00
  }
}

Archivo: ejemplos/ecf-32-minimo.json

Ejemplo: venta de un bono de regalo

Al vender el bono todavía no hay transferencia de bienes ni prestación de servicios (Norma General 03-08), así que la línea va como no facturable (indicador_facturacion: 0).

{
  "id_doc": {
    "tipo_ingresos": "01",
    "tipo_pago": "1",
    "formas_pago": [ { "forma": "1", "monto": 2000.00 } ]
  },
  "items": [
    {
      "nombre": "Bono de regalo",
      "cantidad": 1,
      "unidad_medida": "43",
      "precio_unitario": 2000.00,
      "monto": 2000.00,
      "indicador_facturacion": 0,      // No facturable
      "indicador_bien_servicio": "1"
    }
  ],
  "totales": {
    "monto_no_facturable": 2000.00,
    "monto_total": 0.00               // ¡ojo! ver la nota de abajo
  }
}

Archivo: ejemplos/ecf-32-bono.json

⚠️ monto_total va en 0. La fórmula normativa es monto_total = gravado + exento + total ITBIS + impuesto adicional, y el monto no facturable no forma parte de ella. El valor cobrado se refleja en monto_no_facturable y en las formas de pago. Si pone monto_total: 2000.00, la validación de cuadratura lo rechazará con 422.

Cuando el cliente redime el bono, emite una Factura de Consumo normal por los bienes entregados y registra el bono como forma de pago 5.

Respuesta

Idéntica a la del tipo 31, con ecf_type_code: "32".

Errores frecuentes

Mensaje Causa
El campo RNC/Cédula del comprador es obligatorio. El monto total alcanzó RD$250.000: ya debe identificar al comprador.
El campo detalle de ítems no debe tener más de 1000 elementos. Pasó el umbral y con él el tope baja de 10.000 a 1.000 líneas.
El indicador de facturación seleccionado es inválido. Valores válidos: 0, 1, 2, 3, 4.

Referencias