Modelo de mercado de títulos
A versão aprimorada do Blockchain App Builder inclui um atributo de modelo que gera métodos adicionais para o cenário de mercado de títulos.
Se você incluir o parâmetro model: bond no arquivo de especificação para tokens que usam o padrão ERC-1155 estendido, o chaincode específico do aplicativo Blockchain App Builder, incluindo os seguintes métodos adicionais para uso com o aplicativo de mercado de títulos.
TypeScript Métodos para Mercado de Títulos
O chaincode do mercado de títulos inclui todos os métodos disponíveis no chaincode genérico ERC-1155 NFT. Os seguintes métodos adicionais que são específicos para o cenário de mercado de títulos estão disponíveis.-
postToken - Este método pode ser chamado apenas por um criador de token. O método envia o token de título para listagem no marketplace. Quando um token é criado, seu status é inicialmente definido como
created. Este método atualiza o status paraposted. Os usuários podem executar o métodogetAllTokensWithFilterpara recuperar todos os NFTs com um statusposted. -
purchaseToken - Este método pode ser chamado por qualquer titular da conta para comprar um título listado NFT. A compra transfere a NFT do título da conta do criador para a conta do chamador e transfere tokens CBDC da conta do chamador para a conta do criador. Por isso, o método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder ao criador do token e o valor de transferência do token CBDC deve ser igual ao valor facial do token de título multiplicado pela quantidade que está sendo comprada. -
payInterest - Este método pode ser chamado apenas pelo criador ou administrador do token para pagar os juros ganhos no token de título. Esse método só pode ser chamado se a frequência de juros do token for mensal, trimestral ou anual. Os juros não podem ser pagos se a frequência dos juros estiver no vencimento. Os juros são calculados pelo chaincode com base na taxa de cupom do token. A operação de compra transfere tokens CBDC da conta do chamador para a conta do proprietário do título. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder ao proprietário do token e o valor de transferência do token CBDC deve ser igual aos juros calculados pelo chaincode do título. -
requestTokenRedemption - Este método pode ser chamado apenas pelo proprietário do token para levantar uma solicitação para o resgate de tokens de títulos após o vencimento. Este método também envolve o cálculo do preço de resgate pelo chaincode. As solicitações de resgate só podem ser geradas na quantidade inteira do token de título que o usuário possui. Os usuários podem gerar várias solicitações de resgate com base em diferentes IDs de liquidação, mas apenas uma pode ser aprovada pelo criador do token.
-
approveTokenRedemption - Este método só pode ser chamado pelo criador do token para aprovar uma solicitação para o resgate de tokens de títulos. A operação de aprovação transfere a NFT do título da conta do proprietário (o usuário que emitiu a solicitação) para a conta do criador e transfere tokens CBDC do criador do título para a conta do proprietário. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder à conta do proprietário do token que gerou a solicitação de resgate, e o valor de transferência do token CBDC deve ser igual ao preço de resgate calculado que foi calculado pelo chaincode durante a geração da solicitação de resgate. -
rejectRedemption - O criador do token pode chamar esse método para rejeitar a solicitação de resgate. Os proprietários de token podem gerar uma solicitação de resgate novamente usando um ID de liquidação diferente.
-
getAllTokensWithFilters - O administrador pode chamar esse método get para extrair todos os tokens filtrados por status,
CREATEDouPOSTED. -
getTokenApprovalRequestByUser - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
getTokenApprovalRequestForUserByStatus - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
getAccountBondSummary - Qualquer titular de conta pode chamar esse método de obtenção para obter um resumo da conta que inclui os detalhes dos tokens comprados ou resgatados e o preço de compra e o preço de resgate.
-
getAccountBondSummaryWithPagination - Qualquer titular de conta pode chamar esse método get para obter um resumo da conta que inclui detalhes de tokens comprados ou resgatados e o preço de compra e o preço de resgate. Esse método pode retornar resultados com paginação baseada em valores de tamanho de página e marcador, e também filtrada por hora de início e hora de término.
Métodos Go para Bond Marketplace
O chaincode do mercado de títulos inclui todos os métodos disponíveis no chaincode genérico ERC-1155 NFT. Os seguintes métodos adicionais que são específicos para o cenário de mercado de títulos estão disponíveis.-
PostToken - Este método pode ser chamado apenas por um criador de token. O método envia o token de título para listagem no marketplace. Quando um token é criado, seu status é inicialmente definido como
created. Este método atualiza o status paraposted. Os usuários podem executar o métodogetAllTokensWithFilterpara recuperar todos os NFTs com um statusposted. -
PurchaseToken - Este método pode ser chamado por qualquer titular da conta para comprar um título listado NFT. A compra transfere a NFT do título da conta do criador para a conta do chamador e transfere tokens CBDC da conta do chamador para a conta do criador. Por isso, o método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder ao criador do token e o valor de transferência do token CBDC deve ser igual ao valor facial do token de título multiplicado pela quantidade que está sendo comprada. -
PayInterest - Este método pode ser chamado apenas pelo criador ou administrador do token para pagar os juros ganhos no token de título. Esse método só pode ser chamado se a frequência de juros do token for mensal, trimestral ou anual. Os juros não podem ser pagos se a frequência dos juros estiver no vencimento. Os juros são calculados pelo chaincode com base na taxa de cupom do token. A operação de compra transfere tokens CBDC da conta do chamador para a conta do proprietário do título. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder ao proprietário do token e o valor de transferência do token CBDC deve ser igual aos juros calculados pelo chaincode do título. -
RequestTokenRedemption - Este método pode ser chamado apenas pelo proprietário do token para levantar uma solicitação para o resgate de tokens de títulos após o vencimento. Este método também envolve o cálculo do preço de resgate pelo chaincode. As solicitações de resgate só podem ser geradas na quantidade inteira do token de título que o usuário possui. Os usuários podem gerar várias solicitações de resgate com base em diferentes IDs de liquidação, mas apenas uma pode ser aprovada pelo criador do token.
-
ApproveTokenRedemption - Este método só pode ser chamado pelo criador do token para aprovar uma solicitação para o resgate de tokens de títulos. A operação de aprovação transfere a NFT do título da conta do proprietário (o usuário que emitiu a solicitação) para a conta do criador e transfere tokens CBDC do criador do título para a conta do proprietário. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder à conta do proprietário do token que gerou a solicitação de resgate, e o valor de transferência do token CBDC deve ser igual ao preço de resgate calculado que foi calculado pelo chaincode durante a geração da solicitação de resgate. -
RejectRedemption - O criador do token pode chamar esse método para rejeitar a solicitação de resgate. Os proprietários de token podem gerar uma solicitação de resgate novamente usando um ID de liquidação diferente.
-
GetAllTokensWithFilter - O administrador pode chamar esse método get para extrair todos os tokens filtrados por status,
CREATEDouPOSTED. -
GetTokenApprovalRequestByUser - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
GetTokenApprovalRequestForUserByStatus - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
GetAccountBondSummary - Qualquer titular de conta pode chamar esse método de obtenção para obter um resumo da conta que inclui os detalhes dos tokens comprados ou resgatados e o preço de compra e o preço de resgate.
-
GetAccountBondSummaryWithPagination - Qualquer titular de conta pode chamar esse método get para obter um resumo da conta que inclui detalhes de tokens comprados ou resgatados e o preço de compra e o preço de resgate. Esse método pode retornar resultados com paginação baseada em valores de tamanho de página e marcador, e também filtrada por hora de início e hora de término.
TypeScript Métodos SDK para Bond Marketplace
-
payInterest - O criador ou administrador do token pode chamar esse método para pagar os juros ganhos em um token de título. Esse método só pode ser chamado se a frequência de juros do token for mensal, trimestral ou anual. Os juros não podem ser pagos se a frequência dos juros estiver no vencimento. Os juros são calculados pelo próprio chaincode com base na taxa de cupom do token. A operação de compra transfere tokens CBDC da conta do chamador para a conta do proprietário do título. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder ao proprietário do token e o valor de transferência do token CBDC deve ser igual aos juros calculados pelo chaincode do título. -
requestTokenRedemption - Este método pode ser chamado apenas pelo proprietário do token para levantar uma solicitação para o resgate de tokens de títulos após o vencimento. Este método também envolve o cálculo do preço de resgate pelo chaincode. As solicitações de resgate só podem ser geradas na quantidade inteira do token de título que o usuário possui. Os usuários podem gerar várias solicitações de resgate com base em diferentes IDs de liquidação, mas apenas uma pode ser aprovada pelo criador do token.
-
approveTokenRedemption - Este método só pode ser chamado pelo criador do token para aprovar uma solicitação para o resgate de tokens de títulos. A operação de aprovação transfere a NFT do título da conta do proprietário (o usuário que emitiu a solicitação) para a conta do criador e transfere tokens CBDC do criador do título para a conta do proprietário. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder à conta do proprietário do token que gerou a solicitação de resgate, e o valor de transferência do token CBDC deve ser igual ao preço de resgate calculado que foi calculado pelo chaincode durante a geração da solicitação de resgate. -
rejectRedemption - O criador do token pode chamar esse método para rejeitar a solicitação de resgate. Os proprietários de token podem gerar uma solicitação de resgate novamente usando um ID de liquidação diferente.
-
getAllTokensWithFilter - O administrador pode chamar esse método get para extrair todos os tokens filtrados por status,
CREATEDouPOSTED. -
getTokenApprovalRequestByUser - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
getTokenApprovalRequestForUserByStatus - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
getAccountBondSummary - Qualquer titular de conta pode chamar esse método de obtenção para obter um resumo da conta que inclui os detalhes dos tokens comprados ou resgatados e o preço de compra e o preço de resgate.
-
getAccountBondSummaryWithPagination - Qualquer titular de conta pode chamar esse método get para obter um resumo da conta que inclui detalhes de tokens comprados ou resgatados e o preço de compra e o preço de resgate. Esse método pode retornar resultados com paginação baseada em valores de tamanho de página e marcador, e também filtrada por hora de início e hora de término.
Métodos do Go SDK para o Bond Marketplace
-
PayInterest - O criador ou administrador do token pode chamar esse método para pagar os juros ganhos em um token de título. Esse método só pode ser chamado se a frequência de juros do token for mensal, trimestral ou anual. Os juros não podem ser pagos se a frequência dos juros estiver no vencimento. Os juros são calculados pelo próprio chaincode com base na taxa de cupom do token. A operação de compra transfere tokens CBDC da conta do chamador para a conta do proprietário do título. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder ao proprietário do token e o valor de transferência do token CBDC deve ser igual aos juros calculados pelo chaincode do título. -
RequestTokenRedemption - Este método pode ser chamado apenas pelo proprietário do token para levantar uma solicitação para o resgate de tokens de títulos após o vencimento. Este método também envolve o cálculo do preço de resgate pelo chaincode. As solicitações de resgate só podem ser geradas na quantidade inteira do token de título que o usuário possui. Os usuários podem gerar várias solicitações de resgate com base em diferentes IDs de liquidação, mas apenas uma pode ser aprovada pelo criador do token.
-
ApproveTokenRedemption - Este método só pode ser chamado pelo criador do token para aprovar uma solicitação para o resgate de tokens de títulos. A operação de aprovação transfere a NFT do título da conta do proprietário (o usuário que emitiu a solicitação) para a conta do criador e transfere tokens CBDC do criador do título para a conta do proprietário. Por isso, este método deve ser executado no contexto de uma transação atômica. O método também verifica o processo de transferência, garantindo que o chaincode CBDC apropriado seja chamado com os
orgIdeuserIdcorretos para a transferência. OorgIde ouserIddevem corresponder à conta do proprietário do token que gerou a solicitação de resgate, e o valor de transferência do token CBDC deve ser igual ao preço de resgate calculado que foi calculado pelo chaincode durante a geração da solicitação de resgate. -
RejectRedemption - O criador do token pode chamar esse método para rejeitar a solicitação de resgate. Os proprietários de token podem gerar uma solicitação de resgate novamente usando um ID de liquidação diferente.
-
GetAllTokensWithFilter - O administrador pode chamar esse método get para extrair todos os tokens filtrados por status,
CREATEDouPOSTED. -
GetTokenApprovalRequestByUser - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
GetTokenApprovalRequestForUserByStatus - Qualquer titular de conta pode chamar esse método get para obter os detalhes de todas as solicitações de aprovação de token (solicitações de resgate) que eles fizeram.
-
GetAccountBondSummary - Qualquer titular de conta pode chamar esse método de obtenção para obter um resumo da conta que inclui os detalhes dos tokens comprados ou resgatados e o preço de compra e o preço de resgate.
-
GetAccountBondSummaryWithPagination - Qualquer titular de conta pode chamar esse método get para obter um resumo da conta que inclui detalhes de tokens comprados ou resgatados e o preço de compra e o preço de resgate. Esse método pode retornar resultados com paginação baseada em valores de tamanho de página e marcador, e também filtrada por hora de início e hora de término.