最終更新:
編集

CheckCreate

[ソース]

Checks Amendmentが必要です)

レジャーにCheckオブジェクトを作成します。これにより指定の送金先は後日換金することができます。このトランザクションの送信者はCheckの送金元です。

CheckCreate JSONの例

{
 "TransactionType": "CheckCreate",
 "Account": "rUn84CUYbNjRoTQ6mSW7BVJPSVJNLb1QLo",
 "Destination": "rfkE1aSy9G8Upk4JssnwBxhEv5p4mn2KTy",
 "SendMax": "100000000",
 "Expiration": 570113521,
 "InvoiceID": "6F1DFD1D0FE8A32E40E1F2C05CF1C15545BAB56B617F9C6C2D63A6B704BEF59B",
 "DestinationTag": 1,
 "Fee": "12"
}

CheckCreate フィールド

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

フィールドJSONの型内部の型説明
Destination文字列AccountIDCheckを換金できるアカウントの一意アドレス。
SendMax通貨額AmountCheckで送金元から引き落とすことができる送金元通貨の最大額(XRP以外の通貨の送金手数料を含む)。Checkは同一通貨の送金先にのみ入金可能です(XRP以外の通貨の場合は同一イシュアーから)。XRP以外の金額の場合、入れ子フィールドの名前にはアルファベットの小文字のみ使用してください。
DestinationTag数値UInt32(省略可) Checkの理由を明確にする任意のタグ、または支払先となる、ホスティングされている受取人。
Expiration数値UInt32(省略可) Checkが無効になる時刻(Rippleエポック以降の経過秒数)。
InvoiceID文字列Hash256(省略可) このCheckの具体的な理由または識別子を表現する任意の256ビットハッシュ。

エラーケース

  • DestinationアカウントがCheckの着信をブロックしている場合、トランザクションは結果コードtecNO_PERMISSIONで失敗します。 (DisallowIncoming amendment が必要です。)
  • Destinationがトランザクションの送信者である場合、トランザクションは結果コードtemREDUNDANTで失敗します。
  • Destinationアカウントがレジャーに存在していない場合、トランザクションは結果コードtecNO_DSTで失敗します。
  • DestinationアカウントでRequireDestフラグが有効であるが、トランザクションにDestinationTagフィールドが含まれていない場合、トランザクションは結果コードtecDST_TAG_NEEDEDで失敗します。
  • SendMax凍結されているトークンが指定されている場合、トランザクションは結果コードtecFROZENで失敗します。
  • トランザクションのExpirationが過去の日時である場合、トランザクションは結果コードtecEXPIREDで失敗します。
  • Checkの追加後に送金元が所有者準備金条件を満たすのに十分なXRPを保有していない場合、トランザクションは結果コードtecINSUFFICIENT_RESERVEで失敗します。
  • Checkの送金元または送金先のいずれかがレジャーでこれ以上のオブジェクトを所有できない場合、トランザクションは結果コードtecDIR_FULLで失敗します。