Cfdi.Complementos.ChildOrder (cfdi_complementos v4.0.2)

Copy Markdown

Orden canónico de los hijos de cada complemento, según el SAT.

Módulo generado — no editar a mano. Se regenera con:

mix cfdi.complementos.gen_child_order

La fuente son los XSLT oficiales de cadena original (packages/files/4.0/complementos/), que recorren los hijos en la secuencia que declara el XSD. Ver Mix.Tasks.Cfdi.Complementos.GenChildOrder.

Lo consume CFDI.to_xml/2 para serializar complementos armados a mano en el orden que exige el SAT — un mapa no puede expresar orden por sí solo, e ir alfabético produce XML que el PAC rechaza.

Sólo aparecen elementos con 2+ nombres de hijo distintos.

Summary

Functions

El catálogo completo: tag → orden de sus hijos.

Orden canónico de los hijos de tag, o nil si no aplica (elemento plano, o desconocido).

Functions

all()

@spec all() :: %{required(String.t()) => [String.t()]}

El catálogo completo: tag → orden de sus hijos.

for_tag(tag)

@spec for_tag(String.t()) :: [String.t()] | nil

Orden canónico de los hijos de tag, o nil si no aplica (elemento plano, o desconocido).

iex> Cfdi.Complementos.ChildOrder.for_tag("pago20:Pagos")
["pago20:Totales", "pago20:Pago"]