Isox.Camt055 (Isox v0.1.0)

Copy Markdown View Source

Modelo ISO 20022 do camt.055 (pedido de cancelamento de ordem agendada — Pix Agendado), versão 1.1. Referencia a ordem agendada por OrgnlEndToEndId e traz motivo (CxlRsnInf). Todo campo do schema real é obrigatório.

cxl_prcg_tp (CxlPrcgTp) depende de qual lado está solicitando o cancelamento — regra da planilha do catálogo, não verificável só com os campos desta mensagem (assgnr_ispb não diz por si só se é o participante do pagador ou do recebedor): "DHIP" quando quem solicita é o participante do usuário pagador, "DHSR" quando é o do usuário recebedor. Cabe a quem chama encode/3 escolher certo.

Summary

Functions

Decodifica um XML de camt.055 de volta para a struct.

Monta o XML (envelope completo, AppHdr + Document) para a versão dada.

Types

t()

@type t() :: %Isox.Camt055{
  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_id: String.t(),
  orgtr_cpf_cnpj: String.t(),
  pmt_cxl_id: String.t(),
  prcg_dt_tm: DateTime.t(),
  rsn_prtry: String.t()
}

version()

@type version() :: :v1_1

Functions

decode(xml)

@spec decode(binary()) :: {:ok, t(), version()} | {:error, term()}

Decodifica um XML de camt.055 de volta para a struct.

encode(message, header, version)

@spec encode(t(), Isox.AppHdr.t(), version()) ::
  {:ok, binary()} | {:error, String.t()}

Monta o XML (envelope completo, AppHdr + Document) para a versão dada.