Skip to main content
Cada ítem de un DTE puede llevar una o más líneas de impuesto en items[].impuestos[]. Fegora resuelve automáticamente los montos que falten: en la mayoría de los casos basta con enviar el nombreCorto del impuesto y dejar que Fegora calcule montoGravable/montoImpuesto a partir del precio del ítem. Esta página explica ese mecanismo, la exención de IVA a nivel de documento, y el detalle de cada impuesto específico que Fegora soporta hoy.
La forma exacta del objeto impuesto (campos, tipos, obligatoriedad) está en Estructura del DTE → impuesto. Esta página se enfoca en las tasas y el mecanismo de cálculo.

IVA

El precio de cada ítem (precioUnitario, o precio si se usa esa alternativa) se envía con IVA incluido. Si el ítem no declara una línea de impuesto IVA explícita, Fegora la sintetiza automáticamente extrayendo el IVA del precio a la tasa estándar del país de la cuenta emisora:
PaísTasa estándar
🇬🇹 Guatemala12%
🇸🇻 El Salvador13%
🇩🇴 República Dominicana18% (tasa reducida de 16% disponible — ver abajo)
Si el ítem sí declara una línea IVA explícita, el campo codigoUnidadGravable determina la tasa/tipo de venta — y su significado varía por país:
codigoUnidadGravableTipo de ventaTasa efectiva
1Gravada12%
2Exenta0%
Un IVA explícito requiere declarar codigoUnidadGravable — si se omite, la solicitud se rechaza con codigo: "FEG_VALIDATION_ERROR" y el mensaje “El impuesto IVA explícito requiere codigoUnidadGravable.”.
Enviar sólo { "nombreCorto": "IVA", "codigoUnidadGravable": 1 } (sin montoGravable/montoImpuesto) es válido: Fegora completa ambos montos a partir del precio del ítem y la tasa que corresponda al código.

Exención de IVA

Un documento completo se marca como exento con esExentoIva: true a nivel raíz, junto con motivoExencionIva. Cada motivo corresponde a un código reconocido por Fegora — en Guatemala, a una frase tipo 4 del catálogo de frases de la SAT, cuyo texto legal Fegora agrega automáticamente al documento certificado. Algunos tipos de documento fuerzan un motivo automáticamente, sin que el cliente deba declararlo:
Tipo de documento / condiciónMotivo asignado automáticamente
facturaExportacion / esExportacion: trueLEY_IVA_ART7_NUM2
reciboDonacionLEY_IVA_ART7_NUM9
notaCredito / notaDebito sobre un documento original exentoFACT_ORIGEN_NO_INC_IVA
Para el resto de los casos (por ejemplo recibo, o una factura exenta por configuración de cuenta), el motivo se toma del valor explícito de motivoExencionIva, o de la configuración de exención de la cuenta si no se envía ninguno.
Fegora valida que motivoExencionIva, si se envía, sea uno de los ~32 códigos reconocidos — pero no valida que sea obligatorio cuando esExentoIva: true (a diferencia de lo que documentaba la wiki de 2019). Vea la advertencia correspondiente en Estructura del DTE.
El catálogo completo de motivos de exención de IVA (32 valores, con su frase SAT y notas de uso) está documentado en Guatemala → Exención de IVA: motivos y frases SAT, junto con el resto de frases que Guatemala deriva automáticamente (retención de ISR, agente de retención de IVA, régimen de pequeño contribuyente) sin intervención del cliente.

Impuestos específicos de Guatemala

Guatemala grava, además del IVA, varios impuestos adicionales que se declaran igual que cualquier otro impuesto de ítem — con nombreCorto igual al código correspondiente. En todos los casos, si el ítem no incluye montoImpuesto, Fegora lo calcula automáticamente:
nombreCortoImpuestoTasa aplicada por el cálculo automáticoBase
ITHImpuesto de Hospedaje (turismo)10% (0% si está exento)Monto gravable
IDPImpuesto a la Distribución de Petróleo2% plano — no reproduce la tabla oficial por tipo de combustible (ver advertencia abajo)Monto gravable
TDPTimbre de Prensa0.5% (cinco al millar)Monto gravable
IFBTasa por seguro contra incendio (“Bomberos” en el XML certificado)2%Monto gravable
IDBImpuesto a Bebidas Alcohólicas6% a 8.5% según el tipo de bebida (tabla abajo)Monto gravable × cantidad de unidades gravables

ITH — Impuesto de Hospedaje

Aplica a servicios de hospedaje/turismo. Tasa 10% sobre el monto gravable (0% si el documento está exento de IVA).
{
  "descripcion": "Habitación premium, 1 noche",
  "precioUnitario": 500.00,
  "impuestos": [
    { "nombreCorto": "ITH" }
  ]
}
Con este precio, Fegora calcula: montoGravable ≈ 446.43 (base sin IVA), ITH ≈ 44.64 (10%), e IVA ≈ 53.57 (12%) — el total de la línea queda en 544.64 (precio + ITH).
El mismo nombreCorto: "ITH" se usa en El Salvador para el Impuesto de Turismo — Hospedaje (código de tributo MH 59), pero a una tasa distinta (5%). Vea El Salvador y República Dominicana más abajo.

IDP — Impuesto a la Distribución de Petróleo

Aplica a la venta o distribución de combustibles y derivados del petróleo. El catálogo oficial de la SAT define una tarifa fija en quetzales por unidad, según el tipo de combustible:
codigoUnidadGravableCombustibleTarifa
1Gasolina superiorQ4.70 / unidad
2Gasolina regularQ4.60 / unidad
3Gasolina de aviaciónQ4.70 / unidad
4DiéselQ1.30 / unidad
5Gas OilQ1.30 / unidad
6Kerosina (DPK, Avjet, turbo fuel)Q0.50 / unidad
7NaftaQ0.50 / unidad
8Fuel Oil (Bunker C)Q0.00 / unidad
9Gas licuado de petróleo a granelQ0.50 / unidad
10Gas licuado de petróleo, carburaciónQ0.50 / unidad
11Petróleo crudo usado como combustibleQ0.00 / unidad
12Otros combustibles derivados del petróleoQ0.00 / unidad
13AsfaltosQ0.00 / unidad
El cálculo automático de Fegora para IDP no usa esta tabla. Si el ítem declara sólo { "nombreCorto": "IDP" } sin montos, Fegora aplica una tasa plana del 2% sobre el monto gravable — no la tarifa fija por tipo de combustible de la tabla anterior. Si su operación involucra distribución de combustibles, calcule usted mismo montoImpuesto con la tarifa oficial vigente (cantidadUnidadesGravables × tarifa) y envíelo explícito, como en el ejemplo siguiente — no confíe en el cálculo automático para este impuesto.
Ejemplo con el monto ya calculado explícitamente (100 unidades de diésel a Q1.30 = Q130.00):
{
  "descripcion": "Venta de diésel",
  "cantidad": 100,
  "unidadMedida": "LTS",
  "precioUnitario": 6.10,
  "impuestos": [
    {
      "nombreCorto": "IDP",
      "codigoUnidadGravable": "4",
      "cantidadUnidadesGravables": 100,
      "montoGravable": 610.00,
      "montoImpuesto": 130.00
    }
  ]
}

TDP — Timbre de Prensa

Aplica a anuncios y publicaciones sujetos al timbre de prensa (cinco al millar = 0.5%) sobre el monto gravable.
{
  "descripcion": "Anuncio publicitario en periódico",
  "precioUnitario": 1560.00,
  "impuestos": [
    { "nombreCorto": "TDP" }
  ]
}
Fegora calcula montoGravable ≈ 1392.86 e impuesto TDP ≈ 6.96 (0.5%), además del IVA (12%) sobre la misma base.

IFB — Tasa por seguro contra incendio (“Bomberos”)

Aplica a primas de seguro contra incendio. Tasa 2% sobre el monto gravable.
{
  "descripcion": "Prima de seguro contra incendio",
  "precioUnitario": 1500.00,
  "impuestos": [
    { "nombreCorto": "IFB" }
  ]
}
Fegora calcula montoGravable ≈ 1339.29 e impuesto IFB ≈ 26.79 (2%), además del IVA (12%) sobre la misma base.

IDB — Impuesto a Bebidas Alcohólicas

Aplica a la venta de cervezas, vinos, bebidas destiladas y similares. A diferencia de los anteriores, la tasa depende del tipo de bebida (codigoUnidadGravable) y el cálculo automático usa esta tabla — pero requiere que el ítem incluya montoGravable (precio gravable por unidad) y cantidadUnidadesGravables (número de unidades):
codigoUnidadGravableBebidaTasa
1Cervezas y otras bebidas fermentadas6%
2Vinos7.5%
3Vino espumoso7.5%
4Vino vermouth7.5%
5Sidras7.5%
6Bebidas alcohólicas destiladas8.5%
7Bebidas alcohólicas mezcladas7.5%
8Otras bebidas fermentadas7.5%
El impuesto se calcula como montoGravable × cantidadUnidadesGravables × tasa. Ejemplo (10 cajas de 24 cervezas = 240 unidades, a Q5.00 de precio gravable por unidad, tasa 6%):
{
  "descripcion": "Caja de 24 cervezas",
  "cantidad": 10,
  "precioUnitario": 192.00,
  "impuestos": [
    {
      "nombreCorto": "IDB",
      "codigoUnidadGravable": 1,
      "cantidadUnidadesGravables": 240,
      "montoGravable": 5
    }
  ]
}
Fegora completa montoImpuesto = 5 × 240 × 0.06 = 72.00.
Si montoGravable o cantidadUnidadesGravables se omiten (quedan en 0) para una línea IDB, la solicitud se rechaza (FEG_DTE_CREA_018) — a diferencia de ITH/IFB/TDP/IDP, este impuesto no tiene una base implícita a partir del precio del ítem.
El validador acepta además nombreCorto: "MUN" (Impuesto Municipal) e "ITP" como códigos de impuesto válidos, pero ninguno de los dos tiene una tasa de cálculo automático definida en el código actual — a diferencia de ITH/IDP/TDP/IFB/IDB. Si su operación requiere alguno de estos dos, envíe montoGravable/montoImpuesto ya calculados; Fegora no completará el monto por usted.

El Salvador y República Dominicana

Ninguno de los impuestos específicos de la sección anterior (ITH aparte, con su propia tasa) aplica a El Salvador o República Dominicana — son impuestos propios de la legislación guatemalteca.
Los tributos que Fegora soporta hoy para El Salvador son: IVA (código de tributo MH 20), la exención de IVA en exportaciones (código C3), y el Impuesto de Turismo — Hospedaje (código de tributo MH 59, nombreCorto: "ITH", tasa 5%). Retenciones y percepciones (IVA percibido/retenido, retención de renta) se declaran como datosAdicionales, no como líneas de impuestos[]. Detalle completo en El Salvador → Impuestos.
Para el resto de la estructura del documento y de los ítems, vea Estructura del DTE; para el catálogo de tipos de documento y qué impuestos/exenciones fuerza cada uno, vea Tipos de documento.