Saltar al contenido principal

Marcadores

Un marcador es un valor con nombre que tu plantilla de factura puede insertar: el nombre del destinatario, el número de factura, el total, o algo que definas tú, como un número de pedido de compra.

Los marcadores son lo que hace que una misma plantilla sirva para todas las facturas: escribes #ph("recipient_name") una vez y cada PDF generado lleva su propio destinatario.

Se usan dentro de los dos fragmentos Typst que controlas tú: el bloque post factura y el pie de página.

Leer un marcador

Indica #ph("payment_concept") al realizar el pago.

ph("clave") devuelve el valor de esa clave, o una cadena vacía si la factura no tiene valor para ella. Eso hace muy fácil proteger el contenido opcional, de forma que el bloque entero desaparece en lugar de dejar una etiqueta suelta:

#if ph("purchase_order") != "" [
*Pedido de compra:* #ph("purchase_order")
]
La forma {{clave}}

Las plantillas antiguas pueden contener {{recipient_name}} escrito directamente en el texto. Esa forma sigue funcionando (se sustituye antes de generar el PDF), pero no puede expresar "omite esto cuando esté vacío": un {{clave}} sin valor deja el texto literal en la factura. Es preferible #ph("clave").

Marcadores integrados

Están siempre disponibles y se resuelven a partir de los datos congelados de la propia factura, así que muestran lo que era cierto cuando se creó, nunca los datos actuales de la empresa o del cliente. Las fechas y los importes se formatean en el idioma de la factura.

El documento

ClaveValor
invoice_idLa referencia del documento, por ejemplo 2026/0007 (una proforma o un borrador llevan su propia referencia).
invoice_uuidEl identificador interno del documento.
invoice_created_atLa fecha del documento: la de emisión en una factura emitida, la de creación en una proforma o un borrador.
invoice_document_labelEl nombre del documento en su idioma: Factura, Factura rectificativa, Proforma, Borrador de factura.
invoice_issue_labelLa etiqueta de esa fecha: Emitida en una factura emitida, Creada en una proforma o un borrador.
invoice_dueLa fecha de vencimiento del pago. Actualmente coincide con invoice_created_at.
invoice_totalEl total, formateado, sin divisa, por ejemplo 1.234,56.
invoice_total_with_currencyEl total seguido del código de divisa, por ejemplo 1.234,56 EUR.
currency_codeEl código de divisa ISO-4217 de la factura, por ejemplo EUR.

Tu empresa (el emisor)

ClaveValor
company_nameDenominación legal.
company_friendly_nameNombre comercial, si se ha configurado.
company_display_nameEl nombre comercial si existe; si no, la denominación legal.
company_emailEmail de contacto.
company_phoneTeléfono de contacto.
company_fiscal_idNúmero de identificación fiscal.
company_address_linesDirección, una línea por salto de línea.
company_address_lines_inlineLa misma dirección unida con comas.
company_address_zipcodeCódigo postal.
company_address_cityCiudad.
company_address_stateProvincia.
company_address_countryNombre del país.

El destinatario

ClaveValor
recipient_nameNombre.
recipient_fiscal_idNúmero de identificación fiscal.
recipient_emailEmail de contacto.
recipient_phoneTeléfono de contacto.
recipient_address_linesDirección, una línea por salto de línea.
recipient_address_lines_inlineLa misma dirección unida con comas.
recipient_address_zipcodeCódigo postal.
recipient_address_cityCiudad.
recipient_address_stateProvincia.
recipient_address_countryNombre del país.

Pago

ClaveValor
payment_recipientA quién pagar: la denominación legal de tu empresa.
payment_conceptQué indicar al pagar: la referencia del documento.

Marcadores personalizados

Cuando el valor no se puede deducir de la factura (un número de pedido, un periodo facturado, un código de proyecto), declaras un marcador personalizado y lo rellenas al crear la factura.

Una declaración tiene cuatro partes:

CampoSignificado
ClaveEl nombre que lees en la plantilla, como en #ph("purchase_order").
EtiquetaLo que ve en el formulario quien crea la factura. Obligatoria.
ObligatorioSi está activo, la factura no se puede crear hasta que el campo tenga valor.
Valor por defectoRellena el campo previamente, y se puede editar en cada factura.

Una clave no puede ser una de las integradas de la lista anterior, ni declararse dos veces en el mismo sitio.

Declarar un marcador personalizado

  • Para toda la empresa: en la tarjeta Configuración de facturas de la página Empresa. Se ofrecen en todas las facturas.
  • Por destinatario: en la plantilla de factura personalizada del formulario de un cliente. Se ofrecen solo en las facturas a ese cliente.

Al crear una factura, ambos conjuntos se combinan: las declaraciones de la empresa más las del destinatario. Si las dos declaran la misma clave, gana la del destinatario, así que un cliente puede tener otra etiqueta, otro valor por defecto u otra obligatoriedad para la misma clave.

Rellenarlo al crear la factura

En cuanto eliges destinatario en el formulario de factura, aparece un campo por cada declaración combinada, con su etiqueta y relleno con su valor por defecto. Los campos obligatorios se validan antes de poder crear la factura.

La sección Campos personalizados del formulario de factura, con un campo por cada marcador declarado (un Period obligatorio y un Purchase order), cada uno mostrando su clave como texto de ayuda.

Los valores quedan entonces congelados en esa factura, junto con los propios fragmentos de la plantilla. Editar o eliminar una declaración más adelante nunca cambia una factura que ya existe; y una factura antigua, anterior a la declaración, simplemente resuelve esa clave como cadena vacía, de modo que un bloque protegido desaparece en lugar de romperse.