Use xml_builder to make an example for generate a XML file
# Doc
# https://hexdocs.pm/xml_builder/XmlBuilder.html#content
# Deps
{:xml_builder, "~> 2.0.0"}
# Raw in HTML
<%= emitter(@conn, @params["emitter"]) %>
# Helper Method
defp emitter(conn, params) do
# Example
# {:cfdiEmisor, %{id: 12345}, [{:first, nil, "Josh"}, {:last, nil, "Nussbaum"}]} |> XmlBuilder.generate
emmiter = params
|> Map.put(:Rfc, escape_value(conn.assigns.current_client.rfc))
|> Map.put(:Nombre, escape_value(conn.assigns.current_client.business_name))
IO.inspect emmiter
IO.inspect node_fields(Bemus.CFDI.Emitter.changeset(%Bemus.CFDI.Emitter{}), params)
# <cfdi:Emisor Rfc="<%= escape_value(@conn.assigns.current_client.rfc) %>" Nombre="<%= escape_value(@conn.assigns.current_client.business_name) %>" <%= node_fields(Bemus.CFDI.Emitter.changeset(%Bemus.CFDI.Emitter{}), @params) %> />
{:cfdiEmisor, emmiter, []} |> XmlBuilder.generate
end