É importante observar os pré-requisitos pois, apesar de alguns scripts poderem se executados "fora de ordem", devemos notar que os scripts de registro de operações de DVP devem preceder a execução dos scripts de liquidação das respectivas operações, como já mencionado anteriormente nesta documencação.
-
ex5-dvp-if-registro-vendedor.ts: realiza o lançamento (registro) de uma operação de DVP com Título Público Federal Tokenizado enquanto vendedor do ativo (entre instituições financeiras).
Pré-requisitos:
-
Antes de mais nada, os contratos da instituição precisam estar implantados no ambiente do participante com a execução do código setup-participant-contracts.ts;
-
O endereço da conta que deseja realizar a venda necessita de saldo de TPFt. Para tanto é preciso que uma solicitação off-chain seja feita à SELIC para que, então, a SELIC envie os TPFt solicitados à respectiva conta do vendedor
-
É necessário conhecer os metadados do TPFt (
TPFtData
), a saber:acronym
, do tipostring
;code
, do tipostring
e;maturityDate
do tipouint256
; -
É necessário conhecer dados da operação, a saber: os Chain Ids das partes envolvidas; os endereços das contas envolvidas; os metadados (
TPFtData
) do título negociado; a quantidade (tpftAmount
) de títulos negociados; o preço (price
) a ser pago por unidade de TPFt; o estado inicial (status
- 1 p/ vendedor) da operação e; a informação de confirmação de que a operação será realizada entre duas instituições, em detrimento de entre dois clientes finais (isBetweenClients
=false
).
-
-
ex6-dvp-if-registro-comprador.ts: realiza o lançamento (registro) de uma operação de DVP com Título Público Federal Tokenizado enquanto comprador do ativo (entre instituições financeiras).
Pré-requisitos:
-
Antes de mais nada, os contratos da instituição precisam estar implantados no ambiente do participante com a execução do código setup-participant-contracts.ts;
-
O endereço da conta que deseja realizar a compra precisa de saldo de CBDC. Portanto, é interessante que o respectivo endereço tenha recebido saldo, por exemplo, através da execução do script ex1-requisitar-emissao-cbdc.ts.
-
É necessário conhecer os metadados do TPFt (
TPFtData
), a saber:acronym
, do tipostring
;code
, do tipostring
e;maturityDate
do tipouint256
; -
É necessário conhecer dados da operação, a saber: os Chain Ids das partes envolvidas; os endereços das contas envolvidas; os metadados (
TPFtData
) do título negociado; a quantidade (tpftAmount
) de títulos negociados; o preço (price
) a ser pago por unidade de TPFt; o estado inicial (status
- 2 p/ comprador) da operação e; a informação de confirmação de que a operação será realizada entre duas instituições, em detrimento de entre dois clientes finais (isBetweenClients
=false
).
-
-
ex7-dvp-if-req-reversao-vendedor.ts: caso no qual o vendedor deseja realizar o cancelamento (solicitação de reversão) de uma operação de DVP com Título Público Federal Tokenizado já registrada;
Pré-requisitos:
-
Ter executado o código ex5-dvp-if-registro-vendedor.ts;
-
O endereço da conta que deseja registrar e posteriormente solicitar reversão da operação de venda necessita de saldo de TPFt. Para tanto é preciso que uma solicitação off-chain seja feita à SELIC para que, então, a SELIC envie os TPFt solicitados à respectiva conta do vendedor
-
É necessário conhecer os metadados do TPFt (
TPFtData
), a saber:acronym
, do tipostring
;code
, do tipostring
e;maturityDate
do tipouint256
; -
É necessário conhecer dados da operação, a saber: os Chain Ids das partes envolvidas; os endereços das contas envolvidas; os metadados (
TPFtData
) do título negociado; a quantidade (tpftAmount
) de títulos negociados; o preço (price
) a ser pago por unidade de TPFt; o estado inicial (status
- 1 p/ vendedor) da operação e; a informação de confirmação de que a operação será realizada entre duas instituições, em detrimento de entre dois clientes finais (isBetweenClients
=false
); -
O estado (
status
) da operação precisa refletir o fato de que o registro da respectiva operação foi feito apenas pela parte vendedora. Ocorre que, caso ambas as partes tenham feito seus registros, e tais registros tenham sido compatíveis, então não será possível solicitar o cancelamento da operação.
-
-
ex8-dvp-if-req-reversao-comprador.ts: caso no qual o comprador deseja realizar o cancelamento (solicitação de reversão) de uma operação de DVP com Título Público Federal Tokenizado já registrada;
Pré-requisitos:
-
Ter executado o código ex6-dvp-if-registro-comprador.ts;
-
O endereço da conta que deseja registrar e posteriormente solicitar reversão da operação de compra precisa de saldo de CBDC. Portanto, é interessante que o respectivo endereço tenha recebido saldo, por exemplo, através da execução do script ex1-requisitar-emissao-cbdc.ts.
-
É necessário conhecer os metadados do TPFt (
TPFtData
), a saber:acronym
, do tipostring
;code
, do tipostring
e;maturityDate
do tipouint256
; -
É necessário conhecer dados da operação, a saber: os Chain Ids das partes envolvidas; os endereços das contas envolvidas; os metadados (
TPFtData
) do título negociado; a quantidade (tpftAmount
) de títulos negociados; o preço (price
) a ser pago por unidade de TPFt; o estado inicial (status
- 2 p/ comprador) da operação e; a informação de confirmação de que a operação será realizada entre duas instituições, em detrimento de entre dois clientes finais (isBetweenClients
=false
); -
O estado (
status
) da operação precisa refletir o fato de que o registro da respectiva operação foi feito apenas pela parte compradora. Ocorre que, caso ambas as partes tenham feito seus registros, e tais registros tenham sido compatíveis, então não será possível solicitar o cancelamento da operação.
-
-
ex9-dvp-if-liquidacao-comprador.ts: realiza o resgate de uma operação de DVP com Título Público Federal Tokenizado enquanto comprador do ativo (entre instituições financeiras);
Pré-requisitos:
-
É necessário ter executado o código ex6-dvp-if-registro-comprador.ts previamente;
-
É necessário conhecer os metadados do TPFt (
TPFtData
), a saber:acronym
, do tipostring
;code
, do tipostring
e;maturityDate
do tipouint256
; -
É necessário conhecer dados da operação, a saber: os Chain Ids das partes envolvidas; os endereços das contas envolvidas; os metadados (
TPFtData
) do título negociado; a quantidade (tpftAmount
) de títulos negociados; o preço (price
) a ser pago por unidade de TPFt; o estado inicial (status
- 1 p/ vendedor, 2 p/ comprador) da operação e; a informação de confirmação de que a operação será realizada entre duas instituições, em detrimento de entre dois clientes finais (isBetweenClients
=false
).
-
-
ex10-dvp-if-liquidacao-vendedor.ts: realiza o resgate de uma operação de DVP com Título Público Federal Tokenizado enquanto vendedor do ativo (entre instituições financeiras);
Pré-requisitos:
-
É necessário ter executado o código ex5-dvp-if-registro-vendedor.ts previamente;
-
É necessário conhecer os metadados do TPFt (
TPFtData
), a saber:acronym
, do tipostring
;code
, do tipostring
e;maturityDate
do tipouint256
; -
É necessário conhecer dados da operação, a saber: os Chain Ids das partes envolvidas; os endereços das contas envolvidas; os metadados (
TPFtData
) do título negociado; a quantidade (tpftAmount
) de títulos negociados; o preço (price
) a ser pago por unidade de TPFt; o estado inicial (status
- 1 p/ vendedor, 2 p/ comprador) da operação e; a informação de confirmação de que a operação será realizada entre duas instituições, em detrimento de entre dois clientes finais (isBetweenClients
=false
).
-
A ilustração esquemática a seguir demonstra como a execução de ações pelos participantes devem alterar os estados de uma operação de DPV, seja ela entre instituições ou entre clientes finais.
Diagrama de estados do DVP
Emissão de Títulos Públicos Federais Tokenizados
DVP entre instituições financeiras
Cancelamento de DVP entre instituições financeiras