XRP Ledger Apex is back in Amsterdam

Register Now
Last updated
Edit

CheckCash

[ソース]

Checks Amendmentが必要です)

対応するCheckCreateトランザクションで承認された額まで受領するため、レジャーでCheckオブジェクトの清算を試みます。CheckCashトランザクションでCheckを換金できるのは、CheckのDestinationアドレスだけです。このCheckの換金方法は、送金先により開始されるPaymentの実行に似ています。

Checkに相当する資金があるとは保証されないため、送金元に十分な残高がないか、または資金を送金できるだけの十分な流動性がないことが原因で、Checkの清算が失敗することがあります。このような状況が発生した場合、Checkはレジャーに残り、送金先は後でこのCheckの換金を再試行するか、または異なる額で換金を試みることができます。

CheckCash JSONの例

{
   "Account": "rfkE1aSy9G8Upk4JssnwBxhEv5p4mn2KTy",
   "TransactionType": "CheckCash",
   "Amount": "100000000",
   "CheckID": "838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334",
   "Fee": "12"
}

CheckCash フィールド

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

フィールドJSONの型内部の型説明
CheckID文字列Hash256換金するCheckレジャーオブジェクトのID(64文字の16進文字列)。
Amount通貨額Amount(省略可) 可能であればCheckを厳密にこの額で清算します。通貨は対応するCheckCreateトランザクションのSendMaxの通貨と一致している必要があります。このフィールドまたはDeliverMinのいずれかを指定する必要があります。
DeliverMin通貨額Amount(省略可) Checkをこの額以上の可能な限りの額で清算します。通貨は対応するCheckCreateトランザクションのSendMaxの通貨と一致している必要があります。このフィールドまたはAmountのいずれかを指定する必要があります。

AmountまたはDeliverMinのいずれかを指定する必要がありますが、両方は指定しないでください。

エラーケース

  • CheckCashトランザクションの送信者がCheckのDestinationではない場合、トランザクションは結果コードtecNO_PERMISSIONで失敗します。
  • CheckIDフィールドにより識別されるCheckが存在していない場合、トランザクションは結果コードtecNO_ENTRYで失敗します。
  • CheckIDフィールドにより識別されるCheckが有効期限切れである場合、トランザクションは結果コードtecEXPIREDで失敗します。
  • Checkの送金先でRequireDestフラグが有効であるが、作成されるCheckには送金先タグが指定されていない場合、トランザクションは結果コードtecDST_TAG_NEEDEDで失敗します。
  • トランザクションでAmountDeliverMinの両方が指定または省略される場合、トランザクションは結果コードtemMALFORMEDで失敗します。
  • AmountまたはDeliverMin がCheckの通貨(およびXRP以外の通貨の場合はイシュアー)に一致しない場合、トランザクションは結果コードtemBAD_CURRENCYで失敗します。