Clawback
Clawback amendmentが必要です。
あなたのアカウントが発行したトークンを回収します。
Clawback機能はデフォルトで無効になっています。使用するには、AccountSetトランザクションを送信してAllow Trust Line Clawback設定を有効にする必要があります。既存のトークンを持つ発行者はClawback機能を有効にできません。つまり、トラストライン、オファー、エスクロー、ペイメントチャネル、チェック、または署名者リストを設定する前に行う必要があります。Clawback機能を有効にした後、元に戻すことはできません:アカウントは永久にトラストラインで発行された資産を回収する権限を得ます。
Clawback JSONの例
{ "TransactionType": "Clawback", "Account": "rp6abvbTbjoce8ZDJkT6snvxTZSYMBCC9S", "Amount": { "currency": "FOO", "issuer": "rsA2LpzuawewSBQXkiju3YQTMzW13pAAdW", "value": "314.159" } }
Clawback フィールド
共通フィールドに加えて、Clawbackトランザクションは以下のフィールドを使用します。
フィールド | JSONの型 | 内部の型 | 説明 |
---|---|---|---|
Amount | 通貨額 | Amount | 回収する金額と、その金額を回収する相手を表します。value サブフィールドの回収する数量はゼロであってはなりません。これが現在の残高より多い場合、トランザクションは全残高を回収します。サブフィールドAmount 内のissuer はトークン所有者のアカウントを表します。 |
このトランザクションを実行するアカウントは、回収する資産の発行者でなければなりません。XRP Ledgerでは、トラストラインは双方向であり、設定によっては双方が資産の発行者とみなされることに注意してください。この仕様において、発行者という用語は、未払い残高がある(つまり、発行された資産に"債務がある")トラストラインの側が、その資産を回収することを意味します。
エラーケース
すべてのトランザクションで発生する可能性のあるエラーに加えて、Clawbackトランザクションでは、次のトランザクション結果コードが発生する可能性があります。
エラーコード | 説明 |
---|---|
temDISABLED | Clawback amendmentが有効ではありません。 |
temBAD_AMOUNT | 保有者の残高が0です。回収しようとする金額が保有者の残高を超えていてもエラーにはなりません。また、Amount に記載されている相手がこのトランザクションを発行しているAccount と同じ場合にもエラーが発生します。 |
tecNO_LINE | 取引相手とのトラストラインがない、またはトラストラインの残高が0です。 |
tecNO_PERMISSION | lsfNoFreeze が設定されているときにlsfAllowTrustlineClawback を設定、またはlsfAllowTrustLineClawback が設定されているときにlsfNoFreeze を設定しようとしています。 |