> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fegora.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Impuestos

> Cómo funciona el IVA implícito, la exención de IVA, y los impuestos específicos de Guatemala (ITH, IDP, TDP, IFB, IDB) con sus tablas de tarifas.

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.

<Note>
  La forma exacta del objeto `impuesto` (campos, tipos, obligatoriedad) está en [Estructura del DTE → impuesto](/dte/estructura#impuesto). Esta página se enfoca en las tasas y el mecanismo de cálculo.
</Note>

## 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ís                      | Tasa estándar                                     |
| ------------------------- | ------------------------------------------------- |
| 🇬🇹 Guatemala            | 12%                                               |
| 🇸🇻 El Salvador          | 13%                                               |
| 🇩🇴 República Dominicana | 18% (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**:

<Tabs>
  <Tab title="🇬🇹 Guatemala">
    | `codigoUnidadGravable` | Tipo de venta | Tasa efectiva |
    | ---------------------- | ------------- | ------------- |
    | `1`                    | Gravada       | 12%           |
    | `2`                    | Exenta        | 0%            |

    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.".
  </Tab>

  <Tab title="🇸🇻 El Salvador">
    | `codigoUnidadGravable` | Tipo de venta | Tasa efectiva |
    | ---------------------- | ------------- | ------------- |
    | `1`                    | Gravada       | 13%           |
    | `2`                    | Exenta        | 0%            |
    | `3`                    | No sujeta     | 0%            |
    | `4`                    | No gravada    | 0%            |
  </Tab>

  <Tab title="🇩🇴 República Dominicana">
    | `codigoUnidadGravable` | Tipo de venta (ITBIS)  | Tasa efectiva |
    | ---------------------- | ---------------------- | ------------- |
    | `1`                    | Gravado                | 18%           |
    | `2`                    | Gravado, tasa reducida | 16%           |
    | `3`                    | Exento                 | 0%            |
    | `4`                    | No gravado             | 0%            |

    <Warning>
      El impuesto dominicano se llama oficialmente **ITBIS**, no IVA — pero el catálogo de tipos de impuesto que valida Fegora hoy (`IVA`, `IDP`, `ITH`, `ITP`, `TDP`, `IFB`, `MUN`, `IDB`) **no incluye `"ITBIS"`** como `nombreCorto` aceptado. Para un documento dominicano, declare la línea con `nombreCorto: "IVA"` (el motor de cálculo interno sí reconoce ambos nombres de forma equivalente, pero el validador de entrada sólo acepta `"IVA"`).
    </Warning>
  </Tab>
</Tabs>

<Note>
  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.
</Note>

## 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ón                                   | Motivo asignado automáticamente |
| --------------------------------------------------------------- | ------------------------------- |
| `facturaExportacion` / `esExportacion: true`                    | `LEY_IVA_ART7_NUM2`             |
| `reciboDonacion`                                                | `LEY_IVA_ART7_NUM9`             |
| `notaCredito` / `notaDebito` sobre un documento original exento | `FACT_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.

<Warning>
  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](/dte/estructura).
</Warning>

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](/paises/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:

| `nombreCorto` | Impuesto                                                           | Tasa aplicada por el cálculo automático                                                      | Base                                            |
| ------------- | ------------------------------------------------------------------ | -------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| `ITH`         | Impuesto de Hospedaje (turismo)                                    | 10% (0% si está exento)                                                                      | Monto gravable                                  |
| `IDP`         | Impuesto a la Distribución de Petróleo                             | 2% plano — **no** reproduce la tabla oficial por tipo de combustible (ver advertencia abajo) | Monto gravable                                  |
| `TDP`         | Timbre de Prensa                                                   | 0.5% (cinco al millar)                                                                       | Monto gravable                                  |
| `IFB`         | Tasa por seguro contra incendio ("Bomberos" en el XML certificado) | 2%                                                                                           | Monto gravable                                  |
| `IDB`         | Impuesto a Bebidas Alcohólicas                                     | 6% 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).

```json theme={null}
{
  "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).

<Note>
  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](#el-salvador-y-república-dominicana) más abajo.
</Note>

### 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:

| `codigoUnidadGravable` | Combustible                               | Tarifa         |
| ---------------------- | ----------------------------------------- | -------------- |
| `1`                    | Gasolina superior                         | Q4.70 / unidad |
| `2`                    | Gasolina regular                          | Q4.60 / unidad |
| `3`                    | Gasolina de aviación                      | Q4.70 / unidad |
| `4`                    | Diésel                                    | Q1.30 / unidad |
| `5`                    | Gas Oil                                   | Q1.30 / unidad |
| `6`                    | Kerosina (DPK, Avjet, turbo fuel)         | Q0.50 / unidad |
| `7`                    | Nafta                                     | Q0.50 / unidad |
| `8`                    | Fuel Oil (Bunker C)                       | Q0.00 / unidad |
| `9`                    | Gas licuado de petróleo a granel          | Q0.50 / unidad |
| `10`                   | Gas licuado de petróleo, carburación      | Q0.50 / unidad |
| `11`                   | Petróleo crudo usado como combustible     | Q0.00 / unidad |
| `12`                   | Otros combustibles derivados del petróleo | Q0.00 / unidad |
| `13`                   | Asfaltos                                  | Q0.00 / unidad |

<Warning>
  **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.
</Warning>

Ejemplo con el monto ya calculado explícitamente (100 unidades de diésel a Q1.30 = Q130.00):

```json theme={null}
{
  "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.

```json theme={null}
{
  "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.

```json theme={null}
{
  "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 **sí** usa esta tabla — pero requiere que el ítem incluya `montoGravable` (precio gravable por unidad) y `cantidadUnidadesGravables` (número de unidades):

| `codigoUnidadGravable` | Bebida                               | Tasa |
| ---------------------- | ------------------------------------ | ---- |
| `1`                    | Cervezas y otras bebidas fermentadas | 6%   |
| `2`                    | Vinos                                | 7.5% |
| `3`                    | Vino espumoso                        | 7.5% |
| `4`                    | Vino vermouth                        | 7.5% |
| `5`                    | Sidras                               | 7.5% |
| `6`                    | Bebidas alcohólicas destiladas       | 8.5% |
| `7`                    | Bebidas alcohólicas mezcladas        | 7.5% |
| `8`                    | Otras bebidas fermentadas            | 7.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%):

```json theme={null}
{
  "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`.

<Note>
  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.
</Note>

<Note>
  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.
</Note>

## 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.

<Tabs>
  <Tab title="🇸🇻 El Salvador">
    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](/paises/el-salvador#impuestos).
  </Tab>

  <Tab title="🇩🇴 República Dominicana">
    El ITBIS (equivalente dominicano del IVA) se declara con `nombreCorto: "IVA"` y `codigoUnidadGravable` (`1`=18%, `2`=16%, `3`=exento, `4`=no gravado — ver tabla arriba). Detalle completo en [República Dominicana → Impuestos](/paises/republica-dominicana#impuestos).
  </Tab>
</Tabs>

Para el resto de la estructura del documento y de los ítems, vea [Estructura del DTE](/dte/estructura); para el catálogo de tipos de documento y qué impuestos/exenciones fuerza cada uno, vea [Tipos de documento](/dte/tipos-de-documento).
