Resposta ao pedido de cancelamento de Pix Agendado: aceita ou recusa a
Isox.Camt055.
Versões 1.1 e 1.2 coexistindo. Os enums de rsn_prtry diferem entre
elas: a 1.1 tem quatro códigos a mais que a 1.2. A correlação com o
pedido é pelo pmt_cxl_id da camt.055, que aqui se chama
orgnl_pmt_inf_cxl_id.
Sts.Conf tem valor único ("INFO") e fica fixo.
Regra cruzada que o XSD não expressa
O XSD não sabe expressar dependência entre campos, então estas duas
combinações são validadas em encode/3, a partir da planilha do
catálogo:
pmt_inf_cxl_stsigual a"ACCR"exigersn_prtryausente ecxl_prcg_tpigual a"DHAC".pmt_inf_cxl_stsigual a"RJCR"exigersn_prtrypresente ecxl_prcg_tpigual a"DHRC".
Summary
Functions
Decodifica um XML de camt.029 de volta para a struct.
Monta o XML (envelope completo, AppHdr + Document) para a versão dada.
Types
@type t() :: %Isox.Camt029{ assgne_ispb: String.t(), assgnmt_id: String.t(), assgnr_ispb: String.t(), created_at: DateTime.t(), cxl_prcg_tp: String.t(), orgnl_end_to_end_id: String.t(), orgnl_pmt_inf_cxl_id: String.t(), orgnl_pmt_inf_id: String.t(), pmt_inf_cxl_sts: String.t(), prcg_dt_tm: DateTime.t(), rsn_prtry: String.t() | nil }
@type version() :: :v1_1 | :v1_2
Functions
Decodifica um XML de camt.029 de volta para a struct.
@spec encode(t(), Isox.AppHdr.t(), version()) :: {:ok, binary()} | {:error, String.t()}
Monta o XML (envelope completo, AppHdr + Document) para a versão dada.