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

# El Salvador

> Sistema DTE del Ministerio de Hacienda: tipos de comprobante, campos MH y numeración secuencial.

En El Salvador, Fegora emite Documentos Tributarios Electrónicos ante el **Ministerio de Hacienda
(MH)**, a través de un certificador autorizado que transmite el documento al MH y devuelve el
`codigoGeneracion` (un UUID) que identifica al documento certificado. La moneda de todo documento
salvadoreño es **USD**, la moneda de curso legal en El Salvador.

## Tipos de documento

Fegora soporta los siguientes tipos de comprobante para emisores salvadoreños, indicados en el
campo `tipo` (o mediante `esExportacion: true`) del cuerpo de `POST /dte`:

| `tipo` / campo          | Comprobante MH                                  | Uso típico                                                                           |
| ----------------------- | ----------------------------------------------- | ------------------------------------------------------------------------------------ |
| `ticket`                | Factura (Consumidor Final), tipo MH 01          | Venta al consumidor final                                                            |
| `factura` (por defecto) | Comprobante de Crédito Fiscal (CCF), tipo MH 03 | Venta entre contribuyentes (B2B), con derecho a crédito fiscal                       |
| `notaCredito`           | Nota de Crédito, tipo MH 05                     | Anula o reduce el efecto de un CCF previo                                            |
| `notaDebito`            | Nota de Débito, tipo MH 06                      | Incrementa el efecto de un CCF previo                                                |
| `esExportacion: true`   | Factura de Exportación (FEX), tipo MH 11        | Venta a un receptor en el extranjero                                                 |
| `facturaEspecial`       | Factura de Sujeto Excluido (FSE), tipo MH 14    | Compra a una persona no inscrita como contribuyente (el emisor factura en su nombre) |

<Note>
  El catálogo del Ministerio de Hacienda define otros tipos de documento — Nota de Remisión,
  Comprobante de Retención, Comprobante de Liquidación y Comprobante de Donación, entre otros — que
  **no** están disponibles todavía en Fegora para El Salvador. Tampoco está disponible el registro de
  documentos recibidos (`/recibidos`) para cuentas salvadoreñas. Confirme con soporte de Fegora si su
  operación depende de alguno de estos.
</Note>

Vea el catálogo completo de tipos de documento (compartido entre países) en
[Tipos de documento](/dte/tipos-de-documento).

## Identificación del receptor

El campo `receptor.tipoId` declara explícitamente el tipo de documento de identidad del receptor
— a diferencia de Guatemala, en El Salvador el cliente sí debe declararlo:

| `receptor.tipoId`  | Documento                                | Notas                                                                                                |
| ------------------ | ---------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `NIT`              | NIT salvadoreño (14 dígitos)             | Requerido para Comprobante de Crédito Fiscal (junto con `MH_NRC` y `MH_CODIGO_ACTIVIDAD`, vea abajo) |
| `DUI`              | Documento Único de Identidad (9 dígitos) | Persona natural                                                                                      |
| `PASAPORTE`        | Pasaporte                                | Receptor extranjero                                                                                  |
| `CARNET_RESIDENTE` | Carné de residente                       | Extranjero residente en El Salvador                                                                  |
| `OTRO`             | Identificador libre                      | Recomendado para Factura de Sujeto Excluido (vea la nota abajo)                                      |

<Warning>
  **Factura de Sujeto Excluido (`facturaEspecial`): use `tipoId: "OTRO"`.** El receptor de una FSE no
  debe declarar `MH_NRC` ni usar `tipoId: "NIT"` — el Ministerio de Hacienda rechaza esa combinación.
  Declare `receptor.tipoId: "OTRO"` con un identificador libre (por ejemplo, en formato
  `XXXXXXX-X`).
</Warning>

`receptor.direccion.idMunicipio` usa el formato `SV.<departamento>.<municipio>` (por ejemplo,
`SV.SS.23` para un municipio de San Salvador). Vea el catálogo de municipios y departamentos en
[Catálogos de referencia](#catálogos-de-referencia).

## Impuestos

### IVA y tipo de venta

La tasa general del IVA en El Salvador es **13%**. El campo `items[].impuestos[].codigoUnidadGravable`
determina el tipo de venta del ítem:

| `codigoUnidadGravable` | Tipo de venta   | Aplica a          | Efecto                                                                     |
| ---------------------- | --------------- | ----------------- | -------------------------------------------------------------------------- |
| `1`                    | Venta gravada   | CCF, Ticket       | IVA 13% (Fegora lo calcula automáticamente si no se envía `montoImpuesto`) |
| `2`                    | Venta exenta    | CCF, Ticket       | Sin IVA                                                                    |
| `3`                    | Venta no sujeta | CCF               | Sin obligación fiscal                                                      |
| `4`                    | No gravado      | Casos específicos | Precio neto de cero                                                        |

Los descuentos por línea (`items[].descuento`) se admiten en Comprobante de Crédito Fiscal —
Fegora ajusta automáticamente el monto gravado y el IVA de la línea para que cuadren con el
descuento aplicado.

### Impuesto de turismo (ITH)

El código de tributo **59** corresponde al Impuesto de Hospedaje (turismo). Fegora aplica la tasa
legislada de **5%** sobre el monto gravable cuando el ítem no incluye `montoImpuesto` explícito.

<Note>
  Los tipos de tributo que Fegora soporta actualmente para El Salvador son IVA (código 20), la
  exención de IVA en exportaciones (código C3) y el Impuesto de Turismo — Hospedaje (código 59).
  Otros tributos del catálogo del Ministerio de Hacienda (FOVIAL, COTRANS, turismo aéreo, cemento,
  combustibles, entre otros) no están disponibles todavía.
</Note>

### Retenciones y percepciones

Se declaran como `datosAdicionales` a nivel de documento:

| `nombre`          | Alias aceptado      | Aplica a                   | Efecto                       |
| ----------------- | ------------------- | -------------------------- | ---------------------------- |
| `IVA_PERCIBIDO`   | `MH_IVA_PERCIBIDO`  | CCF, Ticket                | Se suma al total a pagar     |
| `IVA_RETENIDO`    | `MH_IVA_RETENIDO`   | CCF, Ticket                | Se resta del total a pagar   |
| `RETENCION_RENTA` | `MH_RENTA_RETENIDA` | Factura de Sujeto Excluido | Se resta del total a pagar   |
| `SALDO_FAVOR`     | —                   | Ticket, CCF                | Descuento aplicable al total |

<Note>
  La retención de renta (`RETENCION_RENTA` / `MH_RENTA_RETENIDA`) funciona de forma consistente en
  Factura de Sujeto Excluido (`tipo: "facturaEspecial"`). Sobre Comprobante de Crédito Fiscal el
  Ministerio de Hacienda la rechaza — no la use fuera de FSE.
</Note>

## Campos específicos del país

El Salvador requiere un número secuencial único por cuenta en **todo** documento (`NUMERO_SECUENCIAL`,
a nivel raíz) y, para Comprobante de Crédito Fiscal o Factura de Sujeto Excluido, datos adicionales
del receptor con su NRC y actividad económica:

```json theme={null}
{
  "tipo": "factura",
  "moneda": "USD",
  "datosAdicionales": [
    { "nombre": "NUMERO_SECUENCIAL", "valor": "2000481" }
  ],
  "receptor": {
    "id": "06141234567890",
    "tipoId": "NIT",
    "nombre": "Comercial Ejemplo, S.A. de C.V.",
    "direccion": {
      "pais": "SV",
      "idMunicipio": "SV.SS.23",
      "direccion": "Calle Los Almendros #45, San Salvador"
    },
    "datosAdicionales": [
      { "nombre": "MH_NRC", "valor": "123456" },
      { "nombre": "MH_CODIGO_ACTIVIDAD", "valor": "47190" }
    ]
  },
  "items": [
    {
      "descripcion": "Servicio de consultoría",
      "precioUnitario": 25.00,
      "impuestos": [
        { "nombreCorto": "IVA", "codigoUnidadGravable": "1" }
      ]
    }
  ]
}
```

Punto de venta del emisor (opcional): `emisor.codigoPuntoVenta` (por ejemplo, `"P002"`).

## Reglas de validación específicas

<Warning>
  **`NUMERO_SECUENCIAL` obligatorio para receptores CCF/FSE.** Si el receptor incluye `MH_NRC` o
  `MH_CODIGO_ACTIVIDAD` en sus `datosAdicionales`, el documento debe declarar `NUMERO_SECUENCIAL` en
  los `datosAdicionales` de nivel raíz. Si falta, se rechaza con `codigo: "FEG_VALIDATION_ERROR"` y
  el mensaje `El dato NUMERO_SECUENCIAL es requerido para documentos SV con receptor CCF/FSE.`
</Warning>

<Warning>
  **Exportación sin datos de exportación.** Toda solicitud con `esExportacion: true` debe incluir el
  bloque `datosExportacion`; si falta, se rechaza con `codigo: "FEG_VALIDATION_ERROR"` y el mensaje
  `El DTE de exportacion requiere el campo datosExportacion`.
</Warning>

<Note>
  Las notas de crédito y débito (`notaCredito`, `notaDebito`) requieren `idDteOriginal` y
  `motivoAjuste`. El receptor, si no se declara explícitamente, se hereda del documento original —
  incluyendo su `MH_NRC` y `MH_CODIGO_ACTIVIDAD`.
</Note>

El número secuencial y el NRC del receptor pertenecen a rangos y registros administrados por el
Ministerio de Hacienda: aunque Fegora valide su presencia, el Ministerio de Hacienda puede rechazar
el documento en el momento de certificar (por ejemplo, si el NRC no corresponde al contribuyente, o
si los totales de la venta gravada no cuadran con el detalle de ítems). Estos rechazos llegan como
`codigo: "FEG_DTE_CERTIFICATION_ERROR"`. Vea
[Errores de certificación](/primeros-pasos/errores#errores-de-certificación-sat-/-mh-/-dgii).

## Catálogos de referencia

* **Catálogo de actividades económicas**: usado en `receptor.datosAdicionales[MH_CODIGO_ACTIVIDAD]`
  para declarar la actividad económica del receptor.
* **Catálogo de municipios y departamentos**: usado para construir `receptor.direccion.idMunicipio`
  en formato `SV.<departamento>.<municipio>`.
* Para la estructura general del documento, ítems y datos adicionales compartidos entre los tres
  países, vea [Estructura del DTE](/dte/estructura), [Impuestos](/dte/impuestos) y
  [Datos adicionales](/dte/datos-adicionales).
