Condiciones en Twig

Las condiciones permiten mostrar u ocultar contenido según el valor de una variable. Se escriben con {% if %} y se cierran con {% endif %}.

Verificar si una variable tiene valor

La forma más común: muestra el bloque solo si la variable existe y no está vacía.

{% if documento.Encabezado.Receptor.Contacto %}
  <p>Contacto: {{ documento.Encabezado.Receptor.Contacto }}</p>
{% endif %}

Para mostrar algo alternativo cuando no tiene valor:

{% if documento.Encabezado.Receptor.Contacto %}
  {{ documento.Encabezado.Receptor.Contacto }}
{% else %}
  Sin contacto registrado
{% endif %}

Comparar con un valor específico

{% if documento.Encabezado.IdDoc.TipoDTE == 33 %}
  <p>Factura Electrónica</p>
{% elseif documento.Encabezado.IdDoc.TipoDTE == 39 %}
  <p>Boleta Electrónica</p>
{% else %}
  <p>Otro documento</p>
{% endif %}

Comparaciones numéricas

Operador Significado
== igual a
!= distinto de
> mayor que
< menor que
>= mayor o igual que
<= menor o igual que

Ejemplos:

{% if documento.Encabezado.Totales.MntTotal > 0 %}

{% if documento.Encabezado.Totales.MntDescuento != 0 %}

Rango de valores

{% if documento.Encabezado.IdDoc.TipoDTE >= 33 and documento.Encabezado.IdDoc.TipoDTE <= 46 %}
  <p>Es una factura</p>
{% endif %}

Verificar si el valor está en una lista

{% if documento.Encabezado.IdDoc.TipoDTE in [33, 34, 61] %}
  <p>Documento con IVA</p>
{% endif %}

Verificar que una variable está definida

Útil cuando la variable puede no existir en absoluto (a diferencia de estar vacía):

{% if documento.Encabezado.Transporte is defined %}
  <p>Hay datos de transporte</p>
{% endif %}

Combinar condiciones

{% if variable1 and variable2 %}
{% if variable1 or variable2 %}
{% if not variable1 %}
On this page

Last updated on 26/03/2026 by Anonymous