SMART CONTRACTS
← コントラクト一覧BondToken
条件と発行単位を分けて、債権型トークンを管理する。
役割と使いどころ
契約条件をclass、個々の発行単位をnonceで区別し、残高と移転を管理します。利払い・償還処理はDebtManagerと組み合わせます。
接続・設定のポイントclassId・nonceIdを契約台帳と対応づけます。issueによる発行と、利払い資金の入金・請求は別の処理です。
主要なSDK操作
@hazbase/kit@0.9.0のBondTokenHelperから利用する操作です。以下はメソッドの型定義です。引数の構造と全操作はSDKリファレンスで確認できます。
typescript
import { BondTokenHelper } from '@hazbase/kit';createClass
typescript
async createClass(classId: BigNumberish, data: Values[]): Promise<TransactionReceipt>createNonce
typescript
async createNonce(classId: BigNumberish, nonceId: BigNumberish, data: Values[]): Promise<TransactionReceipt>issue
typescript
async issue(to: string, classId: BigNumberish, nonceId: BigNumberish, amount: BigNumberish): Promise<TransactionReceipt>snapshot
typescript
async snapshot(): Promise<{ id: bigint | null; receipt: TransactionReceipt }>組み合わせるコントラクト
実装につなげる
債権・アセットファイナンス
データの持ち方、処理の順序、SDKコードを通じて、アプリケーションへの組み込み方を確認できます。
実装パターンを読む仕様とソースコード
掲載するSolidityソースは下記のリビジョンを参照しています。SDKの対応バージョンと、接続先ネットワークの実装アドレス・ABIを合わせて参照できます。
bond-token/contracts/BondToken.solソースリビジョン: b53a5b5