Modelo ISO 20022 do camt.060 (requisição de relatório da Conta
PI), versão 1.9 — ReqdMsgNmId é o campo despachante: decide se a
resposta é camt.052, camt.053 ou camt.054.
RptgPrd (período do relatório) é opcional como um todo; Tp é fixo
em "ALLL" (não é campo do modelo). O modelo usa rptg_prd_fr_dt
como sinal de presença do período inteiro (FrToDt, com FrDt
obrigatório e ToDt opcional).
FrToTm (rptg_prd_fr_tm/rptg_prd_to_tm) é independentemente
opcional dentro de RptgPrd — não é sempre exigido junto de
FrToDt, como uma versão anterior deste moduledoc dizia por engano.
A planilha do catálogo é explícita: FrToTm só é usado em
"relação de lançamentos" (consulta de camt.054); consultas de saldo
de dia anterior, de remuneração da Conta PI, ou de arquivo TRD/TRT
usam só FrToDt, sem horário — confirmado pelos exemplos oficiais
(camt.060_SALDO_DATA_ANTERIOR, _SOLIC_REMUNERACAO_CONTA_PI,
_SOLIC_ARQUIVO_TRD, todos com RptgPrd sem FrToTm).
Summary
Functions
Decodifica um XML de camt.060 de volta para a struct.
Monta o XML (envelope completo, AppHdr + Document) para a versão dada.
Types
@type t() :: %Isox.Camt060{ acct_ownr_ispb: String.t(), created_at: DateTime.t(), id: String.t() | nil, msg_id: String.t(), reqd_bal_tp_prtry: String.t() | nil, reqd_msg_nm_id: String.t(), rptg_prd_fr_dt: Date.t() | nil, rptg_prd_fr_tm: Time.t() | nil, rptg_prd_to_dt: Date.t() | nil, rptg_prd_to_tm: Time.t() | nil }
@type version() :: :v1_9
Functions
Decodifica um XML de camt.060 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.