Ir al contenido

Factura alcanzada por ICE (documento sector 14): validaciones de montos y campo precioNetoVentaIce en la v3

Fórmulas de subtotal, ICE porcentual y específico, IVA y monto a pagar, y el punto pendiente del campo precioNetoVentaIce
28 de octubre de 2026 por
Factura alcanzada por ICE (documento sector 14): validaciones de montos y campo precioNetoVentaIce en la v3
impuestos.wiki

Factura alcanzada por ICE (documento sector 14): validaciones de montos y campo precioNetoVentaIce en la v3

Fórmulas de subtotal, ICE porcentual y específico, IVA y monto a pagar, y el punto pendiente del campo precioNetoVentaIce

Factura alcanzada por ICE: qué validar al emitirla

La factura alcanzada por el Impuesto a los Consumos Específicos (ICE) se emite con un documento sector propio, identificado en la práctica como documento sector 14. Sus montos deben cumplir las fórmulas de validación por documento sector que publica el SIAT (SIAT Info, Validaciones por Documento Sector). Estas validaciones se publican por documento sector en el portal de información técnica del SIN, y su versión depende del Anexo Técnico vigente. En 2026 el Anexo cambia de versión con frecuencia; revise el historial de versiones.

Este artículo recoge lo que se discutió en el grupo de soporte sobre la versión 3 (v3) de las validaciones. Las fórmulas indicadas son las que se compartieron como validaciones de la v3. Antes de programarlas, compárelas con la publicación oficial vigente.

Fórmulas de validación (v3, según el documento compartido)

ConceptoOperación
Subtotal por líneasubTotal = ((cantidad × precioNetoUnitario) − montoDescuento) + montoIcePorcentual + montoIceEspecifico
Subtotal netosubTotalNeto = Σ(subTotal)
ICE porcentual por líneamontoIcePorcentual = ((cantidad × precioNetoUnitario) − montoDescuento) × alícuotaPorcentual
ICE específico por líneamontoIceEspecifico = cantidadIce × alícuotaEspecífica
Total ICE porcentualtotalIcePorcentual = Σ(montoIcePorcentual)
Total ICE específicototalIceEspecifico = Σ(montoIceEspecifico)
Total precio netototalPrecioNeto = subTotalNeto − totalIcePorcentual − totalIceEspecifico − descuentoAdicional
IVAiva = totalPrecioNeto × 0,13
Monto a pagarmontoAPagar = totalPrecioNeto + iva + totalIcePorcentual + totalIceEspecifico
Monto en monedamontoTotalMoneda = montoAPagar / tipoCambio

La lógica es que el ICE se suma en el subtotal de cada línea y luego se resta para llegar al precio neto, de modo que el IVA se calcula sobre el precio neto sin ICE y el ICE se vuelve a sumar en el monto a pagar.

Ejemplo numérico (ilustrativo)

Datos hipotéticos para seguir el cálculo: cantidad = 10; precioNetoUnitario = 100; montoDescuento = 50; alícuota porcentual = 0.20; cantidadIce = 2; alícuota específica = 30; descuentoAdicional = 0; tipoCambio = 1.

  1. Base de la línea: (10 × 100) − 50 = 950.
  2. ICE porcentual: 950 × 0.20 = 190.
  3. ICE específico: 2 × 30 = 60.
  4. Subtotal de la línea: 950 + 190 + 60 = 1.200; subTotalNeto = 1.200.
  5. totalPrecioNeto: 1.200 − 190 − 60 − 0 = 950.
  6. IVA: 950 × 0.13 = 123,50.
  7. Monto a pagar: 950 + 123,50 + 190 + 60 = 1.323,50.

Para recalcular, siga el mismo orden. Si el sistema redondea los montos intermedios y el total, una diferencia de centavos suele deberse al redondeo. Aplique el mismo criterio de redondeo en todo el documento.

Punto pendiente: el campo precioNetoVentaIce

En el caso discutido, el campo precioNetoVentaIce es requisito para generar la factura, y el XSD de la v3 lo exige, pero las validaciones de la v3 no describen cómo calcularlo. Las versiones anteriores sí lo hacían, por lo que el campo es obligatorio y su cálculo no está documentado en la versión vigente de las validaciones.

En el grupo se plantearon dos lecturas, sin confirmación oficial:

  • Según un participante, el cálculo sería (cantidad × precioUnitario − descuento) − alicuotaIva, es decir, la fórmula de la versión anterior sin el campo alicuotaIva, que la v3 ya no contiene. No hubo consenso sobre si esa fórmula sigue vigente.
  • Otro participante señaló que la fórmula de la versión anterior todavía resta la alícuota de IVA y que no está claro si en la v3 debe restarse o no. Por eso la consulta sigue sin resolverse.

Este cálculo no está confirmado. No lo programe como regla oficial hasta verificarlo en la publicación vigente del Anexo Técnico o consultando al SIN.

En la práctica, conviene:

  • Verificar en la versión del Anexo Técnico que está usando si el campo precioNetoVentaIce aparece en las validaciones del documento sector 14.
  • Revisar si la versión del XSD y la de las validaciones corresponden a la misma versión del Anexo. El XSD puede exigir campos que las validaciones no explican.
  • Consultar al soporte técnico del SIN si la discrepancia persiste, indicando la versión del Anexo y el documento sector.

Buenas prácticas

  • Verifique la versión del servicio (v2 o v3) antes de aplicar cualquier fórmula, porque las validaciones cambian entre versiones.
  • Valide cada línea antes de totalizar, porque el ICE se calcula por línea y luego se acumula.
  • Use la misma versión de validaciones y XSD; un desfase entre ambos genera rechazos difíciles de explicar.
  • Guarde las pruebas en el ambiente piloto antes de emitir facturas con validez legal.
  • Registre los documentos rechazados en las pruebas y el código de respuesta que devuelve el servicio, según los Códigos de Error SIAT.

Documentos y capturas del caso

ALCANZADA POR ICE
ALCANZADA POR ICE
precioNetoVentaIce=(cantidad × precioUnitario - descuento)-alicuotaIva
precioNetoVentaIce=(cantidad × precioUnitario - descuento)-alicuotaIva

Fuentes y normativa

Ante cualquier diferencia, prevalece la normativa vigente publicada por el Servicio de Impuestos Nacionales (SIN).

Factura de entidad financiera con arrendamiento financiero: cálculo de precio neto, IVA y monto a pagar
Caso práctico con las fórmulas de la factura de servicio, cuadre de montos y cómo tratar el descuento y la cuota de arrendamiento