最終更新:
編集

EscrowFinish

[ソース]

Escrow Amendmentにより追加されました。

保留中の支払いから受取人へXRPを送金します。

EscrowFinish JSONの例

{
    "Account": "rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn",
    "TransactionType": "EscrowFinish",
    "Owner": "rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn",
    "OfferSequence": 7,
    "Condition": "A0258020E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855810100",
    "Fulfillment": "A0028000"
}

EscrowFinish フィールド

共通フィールドに加えて、EscrowFinishトランザクションは以下のフィールドを使用します。

フィールドJSONの型内部の型説明
Owner文字列AccountID保留中の支払いに資金を供給した支払元アカウントのアドレス。
OfferSequence符号なし整数UInt32終了する保留中の支払いを作成したEscrowCreateトランザクションのトランザクションシーケンス。
Condition文字列Blob(省略可) 以前に指定された保留中の支払いのPREIMAGE-SHA-256 Crypto-conditionに一致する16進数値。
Fulfillment文字列Blob(省略可) 保留中の支払いのConditionに一致するPREIMAGE-SHA-256 Crypto-condition fulfillmentの16進数値。

すべてのアカウントがEscrowFinishトランザクションを送信できます。

  • 保留中の支払いにFinishAfter時刻が設定されている場合、この時刻よりも前にはこれを実行できません。具体的には、対応するEscrowCreateトランザクションで指定されているFinishAfter時刻が、最後に閉鎖されたレジャーの閉鎖時刻よりも後の場合、EscrowFinishトランザクションは失敗します。
  • 保留中の支払いにConditionが指定されている場合に、その条件に対応するFulfillmentを指定しないと、この支払いを実行できません。
  • 有効期限切れの保留中の支払いは実行できません。具体的には、対応するEscrowCreateトランザクションで指定されているCancelAfter時刻が、最後に閉鎖されたレジャーの閉鎖時刻よりも前の場合、EscrowFinishトランザクションは失敗します。

注記
EscrowFinishトランザクションにフルフィルメントが含まれている場合、このトランザクションを送信するための最小トランザクションコストが増加します。トランザクションにフルフィルメントが含まれていない場合、トランザクションコストは標準の10 dropです。トランザクションにフルフィルメントが含まれている場合、トランザクションコストは330 XRP dropに加えて、プリイメージサイズの16バイトごとに更に10 dropです。

本番環境以外のネットワークでは、保留中のescrowの送金先アカウントを削除できる場合があります。この場合、 escrowを終了しようとしても結果tecNO_TARGETで失敗しますが、 escrowオブジェクトは通常期限切れになる場合を除き、維持されます。別の支払いで送金先アカウントが再作成された場合、 escrowは正常に終了できます。escrowの送金先アカウントは、fix1523 Amendmentが有効になる前にescrowが作成された場合にのみ削除できます。本番環境の XRP Ledgerにはそのようなescrowは存在しないため、本番環境のXRP Ledgerではこのようなエッジケースには対応できません。また、このエッジケースは、fix1523とescrowのAmendmentを同時に有効にするテストネットワークでも不可能です。これは、新しいジェネシスレジャーを開始するときのデフォルトです。