メインコンテンツまでスキップ

04 · 完全なビジネスプロセス

本章では、RWA 資産の発行から退出までのライフサイクルを接続します。

4.1 ライフサイクル概要

プロセス主な責任者オンチェーン結果
資産発行プラットフォーム + 資産発行者新しい資産 Suite
投資家オンボーディング投資家 + 適格性機関 + 発行者isVerified == true
MintToken Agent投資家残高が増加
TransferToken 保有者適格ウォレット間で残高移動
BurnToken Agent投資家残高と総供給量が減少

4.2 第 1 段階:資産を発行

発行者は資産、適格性、ルール、ロールを定義し、プラットフォーム審査入口から Suite を作成します。

分類内容
資産名称、シンボル、decimals、現実の権利
適格性投資家に必要な Claim Topics
発行機関各 Topic の認定 ClaimIssuers
ルール国、保有、供給、ロックアップなどの上限
ロールOwner、Token Agent、IR Agent
環境Testnet または BOT Mainnet

発行後は Token と Suite のプロキシアドレス、Chain ID、RPC、Explorer、適格要件、取引ルール、コントラクトバージョン、ソース検証状態、pause 状態、有効開始時刻を公開します。

新しい Token は初期状態で pause されています。pause 中も mint と burn は可能ですが、通常の投資家 transfer は失敗します。ローンチ検査後に Token Agent が unpause() を呼び出します。

4.3 第 2 段階:投資家オンボーディング

各段階の実行者

段階実行者オンチェーンgas 支払者完了シグナル
資料提出・審査投資家、適格性機関いいえなし審査結果
ONCHAINID 作成投資家はい投資家wallet と ID の紐付け
Claim 署名生成適格性機関いいえなし署名と Claim フィールド
Claim 書き込み投資家はい投資家ClaimAdded
対象資産へ登録IR Agentはい資産発行者IdentityRegistered
最終適格性照会任意のアプリread-onlyトランザクション gas なしisVerified == true

ClaimSigner が addClaim を直接呼び出さない理由

ClaimSigner がオフチェーン署名

投資家が署名を受領

投資家が ONCHAINID.addClaim を呼び出す

ClaimSigner は適格性判断を証明し、投資家は自分の ONCHAINID を管理します。適格性機関が全投資家の gas を支払ったり ID を制御したりしません。

オンボーディング完了の判定

  1. IdFactory.getIdentity(wallet) が有効な ID を返す。
  2. ONCHAINID に対象 Topic の Claim がある。
  3. IdentityRegistry.contains(wallet) == true
  4. IdentityRegistry.isVerified(wallet) == true

対象 Token に紐づく IdentityRegistry が最終判断元です。

4.4 第 3 段階:Mint

申込・発行条件、受取人適格性、decimals による金額変換を確認し、Token Agent が送信します。レシートと Transfer を待ってから業務注文を最終更新します。ブロードキャストだけでは着金完了を意味しません。

4.5 第 4 段階:投資家 transfer

推奨順序:

Chain ID と Token アドレスを検証
→ decimals を読み取り
→ paused と freeze 状態を確認
→ 受取人 isVerified を照会
→ 必要に応じて canTransfer
→ 保有者が署名・送信
→ レシートを待機

canTransfer は事前検査です。確定前に状態が変わり得るため、最終結果は実トランザクションで判断します。

4.6 第 5 段階:償還と burn

オンチェーン burn とオフチェーン決済は別の状態として記録します。burn 成功は現実資金の受領を証明しません。

4.7 Transfer イベントの解釈

fromto意味
ゼロアドレス投資家Mint
投資家ゼロアドレスBurn
非ゼロアドレス非ゼロアドレス通常 transfer または強制移転

通常 transfer と Agent の強制移転は、呼び出しメソッドと管理イベントも確認して区別します。

4.8 よくある失敗

症状主な原因対応
isVerified == false未登録、Claim 不足・期限切れ、未承認 Issuer失敗したオンボーディング段階を特定
Identity is not verified.mint 受取人が不適格適格性フローを完了
Compliance not followed資産ルールに抵触ルール照会後、発行者へ確認
Pausable: pausedtransfer 未有効化送信停止、pause 状態を表示
ウォレット freeze発行者がアドレスを freeze発行者へ連絡
残高不足金額変換誤り、利用可能残高不足decimals と freeze 数量を再読込
権限エラー呼出者が必要な Agent/Owner ではない正しいロールへルーティング
pending 継続RPC、gas、ネットワーク問題tx hash で照会し業務指示を重複させない

4.9 次に読む章

次へ:05 · コントラクトインターフェースとイベント