mirror of
https://github.com/XRPLF/xrpl-dev-portal.git
synced 2025-12-06 17:27:57 +00:00
Merge pull request #2477 from XRPLF/fix_ia_add_amm_blog
Fix some IA issues and add AMM blog
This commit is contained in:
@@ -3,5 +3,5 @@
|
|||||||
| `AffectedNodes` | 配列 | このトランザクションで作成、削除、または修正された[レジャーオブジェクト](../references/protocol/ledger-data/ledger-entry-types/index.md)のリストと、個々のオブジェクトに対する具体的な変更内容。 |
|
| `AffectedNodes` | 配列 | このトランザクションで作成、削除、または修正された[レジャーオブジェクト](../references/protocol/ledger-data/ledger-entry-types/index.md)のリストと、個々のオブジェクトに対する具体的な変更内容。 |
|
||||||
| `DeliveredAmount` | [通貨額][] | **廃止予定。**`delivered_amount`で置き換えられます。Partial Paymentsでない場合は省略されます。 |
|
| `DeliveredAmount` | [通貨額][] | **廃止予定。**`delivered_amount`で置き換えられます。Partial Paymentsでない場合は省略されます。 |
|
||||||
| `TransactionIndex` | 符号なし整数 | トランザクションが記録されているレジャーでのトランザクションの位置。この配列は0から始まります。(例えば、値が`2`の場合、そのレジャーの3番目のトランザクションであったことを意味します)。 |
|
| `TransactionIndex` | 符号なし整数 | トランザクションが記録されているレジャーでのトランザクションの位置。この配列は0から始まります。(例えば、値が`2`の場合、そのレジャーの3番目のトランザクションであったことを意味します)。 |
|
||||||
| `TransactionResult` | 文字列 | トランザクションが成功したか、どのような理由で失敗したかを示す[結果コード](../references/protocol/transactions/transaction-results/transaction-results.md)。 |
|
| `TransactionResult` | 文字列 | トランザクションが成功したか、どのような理由で失敗したかを示す[結果コード](../references/protocol/transactions/transaction-results/index.md)。 |
|
||||||
| [`delivered_amount`](../references/protocol/transactions/metadata.md#delivered_amount) | [通貨額][] | `Destination`アカウントが実際に受取った[通貨額][]。このフィールドは、トランザクションが[Partial Payments](../concepts/payment-types/partial-payments.md)であるかどうかにかかわらず、送金された金額を特定するために使用します。{% badge href="https://github.com/XRPLF/rippled/releases/tag/0.27.0" %}新規: rippled 0.27.0{% /badge %} |
|
| [`delivered_amount`](../references/protocol/transactions/metadata.md#delivered_amount) | [通貨額][] | `Destination`アカウントが実際に受取った[通貨額][]。このフィールドは、トランザクションが[Partial Payments](../concepts/payment-types/partial-payments.md)であるかどうかにかかわらず、送金された金額を特定するために使用します。{% badge href="https://github.com/XRPLF/rippled/releases/tag/0.27.0" %}新規: rippled 0.27.0{% /badge %} |
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ _図3: レジャーバージョンに適用されるトランザクション_
|
|||||||
|
|
||||||
レジャーインスタンスに含まれる一連のトランザクションはそのレジャーに記録され、XRP Ledger履歴の監査を可能としています。レジャーN+1のアカウント残高がレジャーNのアカウント残高と異なる場合、レジャーN+1にはその変更の原因となったトランザクションが含まれます。
|
レジャーインスタンスに含まれる一連のトランザクションはそのレジャーに記録され、XRP Ledger履歴の監査を可能としています。レジャーN+1のアカウント残高がレジャーNのアカウント残高と異なる場合、レジャーN+1にはその変更の原因となったトランザクションが含まれます。
|
||||||
|
|
||||||
検証済みのレジャー内に出現するトランザクションは、レジャーの変更に成功したか、または要求されたアクションを実行せずに処理された可能性があります。成功したトランザクションには、要求された変更がレジャーに適用されたことを示す**tesSUCCESS** [結果コード](../../references/protocol/transactions/transaction-results/transaction-results.md)が含まれます。レジャー内の失敗したトランザクションには、**tec**クラスの結果コードが含まれます。<a href="#footnote_1" id="from_footnote_1"><sup>1</sup></a>
|
検証済みのレジャー内に出現するトランザクションは、レジャーの変更に成功したか、または要求されたアクションを実行せずに処理された可能性があります。成功したトランザクションには、要求された変更がレジャーに適用されたことを示す**tesSUCCESS** [結果コード](../../references/protocol/transactions/transaction-results/index.md)が含まれます。レジャー内の失敗したトランザクションには、**tec**クラスの結果コードが含まれます。<a href="#footnote_1" id="from_footnote_1"><sup>1</sup></a>
|
||||||
|
|
||||||
レジャーに含まれるトランザクションでは必ず、[トランザクションコスト](../transactions/transaction-cost.md)として一部のXRPが消却されます。この場合、**tes**コードまたは**tec**コードが含まれていたかどうかは関係ありません。消却するXRPの正確な量は、署名されたトランザクションの手順で定義されます。
|
レジャーに含まれるトランザクションでは必ず、[トランザクションコスト](../transactions/transaction-cost.md)として一部のXRPが消却されます。この場合、**tes**コードまたは**tec**コードが含まれていたかどうかは関係ありません。消却するXRPの正確な量は、署名されたトランザクションの手順で定義されます。
|
||||||
|
|
||||||
|
|||||||
@@ -74,6 +74,6 @@ LedgerConsensus:ERR Potential Censorship: Eligible tx E08D6E9754025BA2534A787076
|
|||||||
- [信頼できるトランザクションの送信](../transactions/reliable-transaction-submission.md)
|
- [信頼できるトランザクションの送信](../transactions/reliable-transaction-submission.md)
|
||||||
- [ログメッセージについて](../../infrastructure/troubleshooting/understanding-log-messages.md)
|
- [ログメッセージについて](../../infrastructure/troubleshooting/understanding-log-messages.md)
|
||||||
- **リファレンス:**
|
- **リファレンス:**
|
||||||
- [トランザクションの結果](../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [トランザクションの結果](../../references/protocol/transactions/transaction-results/index.md)
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ XRP Ledgerでは、支払いを受け取ることができるアドレスは永
|
|||||||
- [WebSocketを使用した着信ペイメントの監視](../../tutorials/http-websocket-apis/monitor-incoming-payments-with-websocket.md)
|
- [WebSocketを使用した着信ペイメントの監視](../../tutorials/http-websocket-apis/monitor-incoming-payments-with-websocket.md)
|
||||||
- **リファレンス:**
|
- **リファレンス:**
|
||||||
- [Paymentトランザクション][]
|
- [Paymentトランザクション][]
|
||||||
- [トランザクションの結果](../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [トランザクションの結果](../../references/protocol/transactions/transaction-results/index.md)
|
||||||
- [account_infoメソッド][] - XRP残高を確認します。
|
- [account_infoメソッド][] - XRP残高を確認します。
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ Partial Paymentには次の制限事項があります。
|
|||||||
- Partial Paymentでは、XRP間の直接決済はできません。この場合、[結果コード][]`temBAD_SEND_XRP_PARTIAL`が返されます。
|
- Partial Paymentでは、XRP間の直接決済はできません。この場合、[結果コード][]`temBAD_SEND_XRP_PARTIAL`が返されます。
|
||||||
- ただし、イシュアンスからXRPへの支払またはXRPからイシュアンスへの支払は、Partial Paymentが可能です。
|
- ただし、イシュアンスからXRPへの支払またはXRPからイシュアンスへの支払は、Partial Paymentが可能です。
|
||||||
|
|
||||||
[結果コード]: ../../references/protocol/transactions/transaction-results/transaction-results.md
|
[結果コード]: ../../references/protocol/transactions/transaction-results/index.md
|
||||||
|
|
||||||
### `delivered_amount`フィールド
|
### `delivered_amount`フィールド
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ labels:
|
|||||||
|
|
||||||
## 未確定の結果はどのように変更できますか?
|
## 未確定の結果はどのように変更できますか?
|
||||||
|
|
||||||
最初にトランザクションを送信すると、`rippled`サーバーはそのトランザクションを現在のオープンレジャーに暫定的に適用し、その結果から暫定的な[トランザクションの結果](../../../references/protocol/transactions/transaction-results/transaction-results.md)を返します。ただし、トランザクションの最終結果は、暫定的な結果とは大きく異なる場合があります。考えられる理由を以下に示します。
|
最初にトランザクションを送信すると、`rippled`サーバーはそのトランザクションを現在のオープンレジャーに暫定的に適用し、その結果から暫定的な[トランザクションの結果](../../../references/protocol/transactions/transaction-results/index.md)を返します。ただし、トランザクションの最終結果は、暫定的な結果とは大きく異なる場合があります。考えられる理由を以下に示します。
|
||||||
|
|
||||||
- トランザクションは、後のレジャーバージョンまで延期されるか、検証済みレジャーに取り込まれない場合があります。ほとんどの場合、XRP Ledgerでは、すべての有効なトランザクションをできるだけ早く処理するという原則に従います。ただし、次のような例外があります。
|
- トランザクションは、後のレジャーバージョンまで延期されるか、検証済みレジャーに取り込まれない場合があります。ほとんどの場合、XRP Ledgerでは、すべての有効なトランザクションをできるだけ早く処理するという原則に従います。ただし、次のような例外があります。
|
||||||
|
|
||||||
@@ -55,6 +55,6 @@ labels:
|
|||||||
## 関連項目
|
## 関連項目
|
||||||
|
|
||||||
- [トランザクションの結果の確認](look-up-transaction-results.md)
|
- [トランザクションの結果の確認](look-up-transaction-results.md)
|
||||||
- [トランザクション結果のリファレンス](../../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [トランザクション結果のリファレンス](../../../references/protocol/transactions/transaction-results/index.md)
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ XRP Ledgerは共有システムとなっていて、すべてのデータが公
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
この例では、rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpnというアドレスを持つ[アカウント](../../accounts/index.md)が、[シーケンス番号][] 376を使用して、[AccountSetトランザクション][]を送信したことを示しています。トランザクションの[識別用ハッシュ][]は`017DED8F5E20F0335C6F56E3D5EE7EF5F7E83FB81D2904072E665EEA69402567`で、その[結果](../../../references/protocol/transactions/transaction-results/transaction-results.md)は`tesSUCCESS`です。トランザクションは、検証済みのレジャーバージョン46447423に記録されたため、結果は最終的なものです。
|
この例では、rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpnというアドレスを持つ[アカウント](../../accounts/index.md)が、[シーケンス番号][] 376を使用して、[AccountSetトランザクション][]を送信したことを示しています。トランザクションの[識別用ハッシュ][]は`017DED8F5E20F0335C6F56E3D5EE7EF5F7E83FB81D2904072E665EEA69402567`で、その[結果](../../../references/protocol/transactions/transaction-results/index.md)は`tesSUCCESS`です。トランザクションは、検証済みのレジャーバージョン46447423に記録されたため、結果は最終的なものです。
|
||||||
|
|
||||||
|
|
||||||
### ケース: 検証済みレジャーに記録されていない
|
### ケース: 検証済みレジャーに記録されていない
|
||||||
@@ -75,7 +75,7 @@ XRP Ledgerは共有システムとなっていて、すべてのデータが公
|
|||||||
|
|
||||||
### ケース: 検証済みレジャーに記録されている
|
### ケース: 検証済みレジャーに記録されている
|
||||||
|
|
||||||
トランザクションが検証済みレジャーに記録 _されている_ 場合、[トランザクションメタデータ](../../../references/protocol/transactions/metadata.md)にはトランザクションの処理結果として、レジャーの状態に対して行われたすべての変更を網羅したレポートが含まれます。メタデータの`TransactionResult`フィールドには、以下のような、結果を要約した[トランザクション結果コード](../../../references/protocol/transactions/transaction-results/transaction-results.md)が含まれます。
|
トランザクションが検証済みレジャーに記録 _されている_ 場合、[トランザクションメタデータ](../../../references/protocol/transactions/metadata.md)にはトランザクションの処理結果として、レジャーの状態に対して行われたすべての変更を網羅したレポートが含まれます。メタデータの`TransactionResult`フィールドには、以下のような、結果を要約した[トランザクション結果コード](../../../references/protocol/transactions/transaction-results/index.md)が含まれます。
|
||||||
|
|
||||||
- コード`tesSUCCESS`は、トランザクションが、おおよそ成功したことを示します。
|
- コード`tesSUCCESS`は、トランザクションが、おおよそ成功したことを示します。
|
||||||
- `tec`-クラスコードは、トランザクションが失敗したことを示します。このことがレジャーの状態に及ぼす影響は、XRP[トランザクションコスト](../transaction-cost.md)を消却し、場合によっては[有効期限切れのオファー](../../tokens/decentralized-exchange/offers.md#オファーの有効期限)の削除および[Payment Channelの閉鎖](../../payment-types/payment-channels.md#payment-channelのライフサイクル)などのブックキーピングを行うことだけです。
|
- `tec`-クラスコードは、トランザクションが失敗したことを示します。このことがレジャーの状態に及ぼす影響は、XRP[トランザクションコスト](../transaction-cost.md)を消却し、場合によっては[有効期限切れのオファー](../../tokens/decentralized-exchange/offers.md#オファーの有効期限)の削除および[Payment Channelの閉鎖](../../payment-types/payment-channels.md#payment-channelのライフサイクル)などのブックキーピングを行うことだけです。
|
||||||
@@ -450,6 +450,6 @@ TrustSetトランザクションは、[`RippleState`オブジェクト](../../..
|
|||||||
- **リファレンス:**
|
- **リファレンス:**
|
||||||
- [レジャーオブジェクトタイプのリファレンス](../../../references/protocol/ledger-data/ledger-entry-types/index.md) - レジャーオブジェクトの使用可能なすべてのタイプのフィールド
|
- [レジャーオブジェクトタイプのリファレンス](../../../references/protocol/ledger-data/ledger-entry-types/index.md) - レジャーオブジェクトの使用可能なすべてのタイプのフィールド
|
||||||
- [トランザクションのメタデータ](../../../references/protocol/transactions/metadata.md) - メタデータフォーマットとメタデータに表示されるフィールドの概要
|
- [トランザクションのメタデータ](../../../references/protocol/transactions/metadata.md) - メタデータフォーマットとメタデータに表示されるフィールドの概要
|
||||||
- [トランザクションの結果](../../../references/protocol/transactions/transaction-results/transaction-results.md) - トランザクションのすべての結果コードを掲載した表一覧
|
- [トランザクションの結果](../../../references/protocol/transactions/transaction-results/index.md) - トランザクションのすべての結果コードを掲載した表一覧
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -143,7 +143,7 @@ XRP Ledgerとのインフターフェイスに使用するソフトウェアか
|
|||||||
- **リファレンス:**
|
- **リファレンス:**
|
||||||
- [基本的なデータ型 - ハッシュ](../../../references/protocol/data-types/basic-data-types.md#ハッシュ)
|
- [基本的なデータ型 - ハッシュ](../../../references/protocol/data-types/basic-data-types.md#ハッシュ)
|
||||||
- [トランザクションの共通フィールド](../../../references/protocol/transactions/common-fields.md#グローバルフラグ)
|
- [トランザクションの共通フィールド](../../../references/protocol/transactions/common-fields.md#グローバルフラグ)
|
||||||
- [トランザクションの結果](../../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [トランザクションの結果](../../../references/protocol/transactions/transaction-results/index.md)
|
||||||
- [シリアル化フォーマット](../../../references/protocol/binary-format.md)
|
- [シリアル化フォーマット](../../../references/protocol/binary-format.md)
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ XRP Ledgerにトランザクションを送信するには、いくつかの手
|
|||||||
3. `rippled`サーバーにトランザクションを送信します。トランザクションが適切に作成されている場合、サーバーはそのトランザクションを現行バージョンのレジャーに暫定的に適用し、そのトランザクションをピアツーピアネットワークの他のメンバーに中継します。
|
3. `rippled`サーバーにトランザクションを送信します。トランザクションが適切に作成されている場合、サーバーはそのトランザクションを現行バージョンのレジャーに暫定的に適用し、そのトランザクションをピアツーピアネットワークの他のメンバーに中継します。
|
||||||
4. [コンセンサスプロセス](../consensus-protocol/index.md)によって、次の検証済みレジャーに含まれる暫定的なトランザクションが決定されます。
|
4. [コンセンサスプロセス](../consensus-protocol/index.md)によって、次の検証済みレジャーに含まれる暫定的なトランザクションが決定されます。
|
||||||
5. `rippled`サーバーはそれらのトランザクションを正規順序で前のレジャーに適用し、それらの結果を共有します。
|
5. `rippled`サーバーはそれらのトランザクションを正規順序で前のレジャーに適用し、それらの結果を共有します。
|
||||||
6. 十分に[信頼できるバリデータ](../networks-and-servers/rippled-server-modes.md#バリデータ)がまったく同じレジャーを作成した場合、そのレジャーは _検証済み_ であると宣言され、そのレジャーの[トランザクションの結果](../../references/protocol/transactions/transaction-results/transaction-results.md)は不変となります。
|
6. 十分に[信頼できるバリデータ](../networks-and-servers/rippled-server-modes.md#バリデータ)がまったく同じレジャーを作成した場合、そのレジャーは _検証済み_ であると宣言され、そのレジャーの[トランザクションの結果](../../references/protocol/transactions/transaction-results/index.md)は不変となります。
|
||||||
|
|
||||||
XRP決済の送信に関する対話型チュートリアルについては、[Send XRP](../../tutorials/how-tos/send-xrp.md)を参照してください。
|
XRP決済の送信に関する対話型チュートリアルについては、[Send XRP](../../tutorials/how-tos/send-xrp.md)を参照してください。
|
||||||
|
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ XRP LedgerをスパムやDoS攻撃から守るため、各トランザクショ
|
|||||||
|
|
||||||
## トランザクションコストと失敗したトランザクション
|
## トランザクションコストと失敗したトランザクション
|
||||||
|
|
||||||
トランザクションコストの目的はXRP Ledgerピアツーピアネットワークを過度な負荷から保護することであるため、トランザクションが成功するかどうかにかかわらず、ネットワークに分散されるすべてのトランザクションにコストが適用されます。ただし、共有のグローバルレジャーに作用するため、トランザクションを検証済みレジャーに含める必要があります。したがって、`rippled`サーバーは[`tec`ステータスコード](../../references/protocol/transactions/transaction-results/transaction-results.md)(「tec」は「トランザクションエンジン - 請求手数料のみ」(Transaction Engine - Claimed fee only)を表します)で、失敗したトランザクションをレジャーに含めようとします。
|
トランザクションコストの目的はXRP Ledgerピアツーピアネットワークを過度な負荷から保護することであるため、トランザクションが成功するかどうかにかかわらず、ネットワークに分散されるすべてのトランザクションにコストが適用されます。ただし、共有のグローバルレジャーに作用するため、トランザクションを検証済みレジャーに含める必要があります。したがって、`rippled`サーバーは[`tec`ステータスコード](../../references/protocol/transactions/transaction-results/index.md)(「tec」は「トランザクションエンジン - 請求手数料のみ」(Transaction Engine - Claimed fee only)を表します)で、失敗したトランザクションをレジャーに含めようとします。
|
||||||
|
|
||||||
トランザクションコストは、トランザクションが実際に検証済みレジャーに含められた場合に、送信者のXRP残高から差し引かれるだけです。このことは、トランザクションが成功するか`tec`コードとともに失敗するかにかかわらず適用されます。
|
トランザクションコストは、トランザクションが実際に検証済みレジャーに含められた場合に、送信者のXRP残高から差し引かれるだけです。このことは、トランザクションが成功するか`tec`コードとともに失敗するかにかかわらず適用されます。
|
||||||
|
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ labels:
|
|||||||
|
|
||||||
キュー内のトランザクションの数が次のレジャーバージョンの予期サイズを超える場合には、キュー内のトランザクションの正確な順序に基づいて、次の処理レジャーバージョンに追加されるトランザクションが決定します。トランザクションの順序は**検証済みレジャー内でのトランザクションの実行順序には影響しません**。各検証済みレジャーバージョンでは、そのバージョンのトランザクションセットが[正規の順序](../consensus-protocol/consensus-structure.md#検証の計算と共有)で実行されます。
|
キュー内のトランザクションの数が次のレジャーバージョンの予期サイズを超える場合には、キュー内のトランザクションの正確な順序に基づいて、次の処理レジャーバージョンに追加されるトランザクションが決定します。トランザクションの順序は**検証済みレジャー内でのトランザクションの実行順序には影響しません**。各検証済みレジャーバージョンでは、そのバージョンのトランザクションセットが[正規の順序](../consensus-protocol/consensus-structure.md#検証の計算と共有)で実行されます。
|
||||||
|
|
||||||
**注記:**`rippled`がトランザクションをキューに入れるときに付与される暫定的な[トランザクションレスポンスコード](../../references/protocol/transactions/transaction-results/transaction-results.md)は`terQUEUED`です。つまり、トランザクションは今後のレジャーバージョンで成功する見込みです。すべての暫定的なレスポンスコードと同様に、トランザクションが検証済みレジャーに追加されるか、または[完全に無効であると示される](finality-of-results/index.md)までは、トランザクションの結果は最終的ではありません。
|
**注記:**`rippled`がトランザクションをキューに入れるときに付与される暫定的な[トランザクションレスポンスコード](../../references/protocol/transactions/transaction-results/index.md)は`terQUEUED`です。つまり、トランザクションは今後のレジャーバージョンで成功する見込みです。すべての暫定的なレスポンスコードと同様に、トランザクションが検証済みレジャーに追加されるか、または[完全に無効であると示される](finality-of-results/index.md)までは、トランザクションの結果は最終的ではありません。
|
||||||
|
|
||||||
|
|
||||||
## 関連項目
|
## 関連項目
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ labels:
|
|||||||
* `server` - `rippled`サーバーのステータス(ネットワーク接続など)が変更されるたびにメッセージを送信します。
|
* `server` - `rippled`サーバーのステータス(ネットワーク接続など)が変更されるたびにメッセージを送信します。
|
||||||
* `ledger` - コンセンサスプロセスで新しい検証済みレジャーが宣言されるたびにメッセージを送信します。
|
* `ledger` - コンセンサスプロセスで新しい検証済みレジャーが宣言されるたびにメッセージを送信します。
|
||||||
* `transactions` - 決済済みレジャーにトランザクションが追加されるたびにメッセージを送信します。
|
* `transactions` - 決済済みレジャーにトランザクションが追加されるたびにメッセージを送信します。
|
||||||
* `transactions_proposed` - 決済済みレジャーにトランザクションが追加される場合や、検証済みレジャーにまだ追加されておらず、今後も追加される見込みのない一部のトランザクションが決済済みレジャーに追加される場合に、メッセージを送信します。提案されたすべてのトランザクションが検証前に表示されるわけではありません。**注記:** 検証済みレジャーには[失敗したトランザクションも記録されます](../../../protocol/transactions/transaction-results/transaction-results.md)。これは、このようなトランザクションにはスパム対策のトランザクション手数料が課されるためです。
|
* `transactions_proposed` - 決済済みレジャーにトランザクションが追加される場合や、検証済みレジャーにまだ追加されておらず、今後も追加される見込みのない一部のトランザクションが決済済みレジャーに追加される場合に、メッセージを送信します。提案されたすべてのトランザクションが検証前に表示されるわけではありません。**注記:** 検証済みレジャーには[失敗したトランザクションも記録されます](../../../protocol/transactions/transaction-results/index.md)。これは、このようなトランザクションにはスパム対策のトランザクション手数料が課されるためです。
|
||||||
* `validations` - サーバーがバリデータを信頼しているか否かにかかわらず、サーバーが検証メッセージを受信するたびに、メッセージを送信します。(個々の`rippled`は、サーバーが少なくとも定数の信頼できるバリデータから検証メッセージを受信した時点で、レジャーが検証済みであると宣言します。)
|
* `validations` - サーバーがバリデータを信頼しているか否かにかかわらず、サーバーが検証メッセージを受信するたびに、メッセージを送信します。(個々の`rippled`は、サーバーが少なくとも定数の信頼できるバリデータから検証メッセージを受信した時点で、レジャーが検証済みであると宣言します。)
|
||||||
* `consensus` - サーバーがコンセンサスサイクルのフェーズ(open、establish、acceptedなど)を変更するたびにメッセージを送信します。
|
* `consensus` - サーバーがコンセンサスサイクルのフェーズ(open、establish、acceptedなど)を変更するたびにメッセージを送信します。
|
||||||
* `peer_status` - **(管理者専用)** 接続しているピア`rippled`サーバーに関する情報(特にコンセンサスプロセスに関する情報)。
|
* `peer_status` - **(管理者専用)** 接続しているピア`rippled`サーバーに関する情報(特にコンセンサスプロセスに関する情報)。
|
||||||
@@ -354,8 +354,8 @@ labels:
|
|||||||
| `Field` | 型 | 説明 |
|
| `Field` | 型 | 説明 |
|
||||||
|:------------------------|:--------------------------|:-----------------------|
|
|:------------------------|:--------------------------|:-----------------------|
|
||||||
| `type` | 文字列 | `transaction`は、トランザクションの通知であることを示します。この通知はさまざまなストリームから送信される可能性があります。 |
|
| `type` | 文字列 | `transaction`は、トランザクションの通知であることを示します。この通知はさまざまなストリームから送信される可能性があります。 |
|
||||||
| `engine_result` | 文字列 | 文字列の[トランザクション結果コード](../../../protocol/transactions/transaction-results/transaction-results.md) |
|
| `engine_result` | 文字列 | 文字列の[トランザクション結果コード](../../../protocol/transactions/transaction-results/index.md) |
|
||||||
| `engine_result_code` | 数値 | 数値の[トランザクションレスポンスコード](../../../protocol/transactions/transaction-results/transaction-results.md)(該当する場合) |
|
| `engine_result_code` | 数値 | 数値の[トランザクションレスポンスコード](../../../protocol/transactions/transaction-results/index.md)(該当する場合) |
|
||||||
| `engine_result_message` | 文字列 | 人間が読み取れる形式のトランザクションレスポンスの説明 |
|
| `engine_result_message` | 文字列 | 人間が読み取れる形式のトランザクションレスポンスの説明 |
|
||||||
| `ledger_current_index` | 数値 - [レジャーインデックス][] | _(未検証のトランザクションのみ)_ このトランザクションが現在提案されている現在進行中の[レジャーバージョン](../../../../concepts/ledgers/index.md)のレジャーインデックス。 |
|
| `ledger_current_index` | 数値 - [レジャーインデックス][] | _(未検証のトランザクションのみ)_ このトランザクションが現在提案されている現在進行中の[レジャーバージョン](../../../../concepts/ledgers/index.md)のレジャーインデックス。 |
|
||||||
| `ledger_hash` | 文字列 - [ハッシュ][] | _(検証済みのトランザクションのみ)_ このトランザクションを含む レジャーバージョンの識別用ハッシュ。 |
|
| `ledger_hash` | 文字列 - [ハッシュ][] | _(検証済みのトランザクションのみ)_ このトランザクションを含む レジャーバージョンの識別用ハッシュ。 |
|
||||||
|
|||||||
@@ -272,7 +272,7 @@ Connecting to 127.0.0.1:5005
|
|||||||
| `tx_blob` | 文字列 | トランザクション全体の16進文字列表現 |
|
| `tx_blob` | 文字列 | トランザクション全体の16進文字列表現 |
|
||||||
| `tx_json` | オブジェクト | トランザクション全体のJSON表現 |
|
| `tx_json` | オブジェクト | トランザクション全体のJSON表現 |
|
||||||
|
|
||||||
**注意:** WebSocketのレスポンスに`"status":"success"`が含まれていても、これはコマンドが正常に受け付けられたことを示すものであり、トランザクションが正常に実行されたことを示しているわけでは _ありません_ 。トランザクションは、さまざまな状況で正常に処理されない可能性があります。例えば、ペイメントの2つのアカウントを接続するトラストラインの欠落や、トランザクション生成後のレジャーの状態の変化などです。問題が特にない場合も、トランザクションが含まれているバージョンのレジャーを閉鎖し検証するまでに数秒かかることがあります。詳細は、[トランザクションのレスポンスの完全なリスト](../../../protocol/transactions/transaction-results/transaction-results.md)を参照してください。トランザクションの結果は、検証済みバージョンのレジャーにトランザクションが表示されるまで、最終的なものと考えないでください。
|
**注意:** WebSocketのレスポンスに`"status":"success"`が含まれていても、これはコマンドが正常に受け付けられたことを示すものであり、トランザクションが正常に実行されたことを示しているわけでは _ありません_ 。トランザクションは、さまざまな状況で正常に処理されない可能性があります。例えば、ペイメントの2つのアカウントを接続するトラストラインの欠落や、トランザクション生成後のレジャーの状態の変化などです。問題が特にない場合も、トランザクションが含まれているバージョンのレジャーを閉鎖し検証するまでに数秒かかることがあります。詳細は、[トランザクションのレスポンスの完全なリスト](../../../protocol/transactions/transaction-results/index.md)を参照してください。トランザクションの結果は、検証済みバージョンのレジャーにトランザクションが表示されるまで、最終的なものと考えないでください。
|
||||||
|
|
||||||
**注意:** このコマンドの結果としてエラーメッセージが表示された場合、リクエストから取得されたシークレットキーがメッセージの中に記述されている可能性があります。(リクエストに含まれているものが署名済みのtx_blobである場合は問題ありません)。これらのエラーが他者から見えない状態であることを確認してください。
|
**注意:** このコマンドの結果としてエラーメッセージが表示された場合、リクエストから取得されたシークレットキーがメッセージの中に記述されている可能性があります。(リクエストに含まれているものが署名済みのtx_blobである場合は問題ありません)。これらのエラーが他者から見えない状態であることを確認してください。
|
||||||
|
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ curated_anchors:
|
|||||||
| `TYPES` | フィールドIDの作成と正規順序でのフィールドのソートのためのデータタイプからその[「タイプコード」](#タイプコード)へのマップ。1未満のコードは実際のデータには含まれません。10000を超えるコードは、他のオブジェクト内部ではシリアル化できない「トランザクション」などの特殊な「上位」オブジェクトタイプを表します。各タイプのシリアル化方法についての詳細は、[タイプリスト](#タイプリスト)を参照してください。 |
|
| `TYPES` | フィールドIDの作成と正規順序でのフィールドのソートのためのデータタイプからその[「タイプコード」](#タイプコード)へのマップ。1未満のコードは実際のデータには含まれません。10000を超えるコードは、他のオブジェクト内部ではシリアル化できない「トランザクション」などの特殊な「上位」オブジェクトタイプを表します。各タイプのシリアル化方法についての詳細は、[タイプリスト](#タイプリスト)を参照してください。 |
|
||||||
| `LEDGER_ENTRY_TYPES` | [レジャーオブジェクト](ledger-data/ledger-entry-types/index.md)から対応するデータタイプへのマップ。これはレジャー状態データと、処理されたトランザクションの[メタデータ](transactions/metadata.md)の「affected nodes」セクションに含まれます。 |
|
| `LEDGER_ENTRY_TYPES` | [レジャーオブジェクト](ledger-data/ledger-entry-types/index.md)から対応するデータタイプへのマップ。これはレジャー状態データと、処理されたトランザクションの[メタデータ](transactions/metadata.md)の「affected nodes」セクションに含まれます。 |
|
||||||
| `FIELDS` | トランザクション、レジャーオブジェクト、あるいはその他のデータに含まれる可能性があるすべてのフィールドを表すタプルからなるソート済み配列。各タプルの1番目のメンバーはフィールドの文字列名であり、2番目のメンバーはそのフィールドのプロパティーが含まれているオブジェクトです。(これらのフィールドの定義については、以下の「フィールドプロパティー」の表を参照してください。) |
|
| `FIELDS` | トランザクション、レジャーオブジェクト、あるいはその他のデータに含まれる可能性があるすべてのフィールドを表すタプルからなるソート済み配列。各タプルの1番目のメンバーはフィールドの文字列名であり、2番目のメンバーはそのフィールドのプロパティーが含まれているオブジェクトです。(これらのフィールドの定義については、以下の「フィールドプロパティー」の表を参照してください。) |
|
||||||
| `TRANSACTION_RESULTS` | [トランザクション結果コード](transactions/transaction-results/transaction-results.md)から対応する数値へのマップ。レジャーに含まれない結果タイプにはマイナスの値が含まれています。`tesSUCCESS`に数値0が含まれています。[`tec`クラスコード](transactions/transaction-results/tec-codes.md)は、レジャーに含まれている失敗を示しています。 |
|
| `TRANSACTION_RESULTS` | [トランザクション結果コード](transactions/transaction-results/index.md)から対応する数値へのマップ。レジャーに含まれない結果タイプにはマイナスの値が含まれています。`tesSUCCESS`に数値0が含まれています。[`tec`クラスコード](transactions/transaction-results/tec-codes.md)は、レジャーに含まれている失敗を示しています。 |
|
||||||
| `TRANSACTION_TYPES` | [トランザクションのタイプ](transactions/types/index.md)から対応する数値へのマップ。 |
|
| `TRANSACTION_TYPES` | [トランザクションのタイプ](transactions/types/index.md)から対応する数値へのマップ。 |
|
||||||
|
|
||||||
署名と送信のためにトランザクションをシリアル化するという目的から、`FIELDS`、`TYPES`、および`TRANSACTION_TYPES`フィールドが必要です。
|
署名と送信のためにトランザクションをシリアル化するという目的から、`FIELDS`、`TYPES`、および`TRANSACTION_TYPES`フィールドが必要です。
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ AccountDeleteトランザクションは、XRP Ledgerで[アカウント](../../
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:-----------|:------------|
|
|:-----------|:------------|
|
||||||
|
|||||||
@@ -126,7 +126,7 @@ R = B × (1 - t)
|
|||||||
|
|
||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:------------------------|:---------------------------------------------|
|
|:------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ AMMを表す[AMMエントリ][]と[特殊なAccountRootエントリ](../../ledge
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ _([AMM amendment][] {% not-enabled /%} が必要です)_
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
AMMCreateトランザクションでは、すべてのトランザクションで発生する可能性のあるエラーの他に、以下の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
AMMCreateトランザクションでは、すべてのトランザクションで発生する可能性のあるエラーの他に、以下の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ AMMDepositトランザクションは、以下のような[`Flags`フィール
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:------------------------|:---------------------------------------------|
|
|:------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ _([AMM amendment][] {% not-enabled /%}が必要です。)_
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:------------------------|:---------------------------------------------|
|
|:------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ AMMWithdrawトランザクションは、以下のように[`Flags`フィール
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:-------------------------|:---------------------------------------------|
|
|:-------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ Clawback機能はデフォルトで無効になっています。使用するに
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:-----------|:------------|
|
|:-----------|:------------|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ _([DID Amendment][] {% not-enabled /%} が必要です。)_
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーの他に、{% $frontmatter.seo.title %}トランザクションでは以下の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります:
|
すべてのトランザクションで発生する可能性のあるエラーの他に、{% $frontmatter.seo.title %}トランザクションでは以下の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります:
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ _([DID Amendment][] {% not-enabled /%} が必要です。)_
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ _([NonFungibleTokensV1_1 amendment][]により追加されました)_
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:-----------------------------------|:----------------------------------------|
|
|:-----------------------------------|:----------------------------------------|
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ _([NonFungibleTokensV1_1 amendment][]により追加されました)_
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:-------------------|:--------------------------------------------------------|
|
|:-------------------|:--------------------------------------------------------|
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ IDが[NFTokenOffer](../../ledger-data/ledger-entry-types/nftokenoffer.md)オブ
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:-------------------|:--------------------------------------------------------|
|
|:-------------------|:--------------------------------------------------------|
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ NFTokenCreateOfferタイプのトランザクションは、以下のように[`
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:---------------------------------|:------------------------------------------|
|
|:---------------------------------|:------------------------------------------|
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ NFTokenMint型のトランザクションでは、以下のように[`Flags`フ
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:------------------------------|:---------------------------------------------|
|
|:------------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -49,8 +49,8 @@ OfferCreate型のトランザクションについては、[`Flags`フィール
|
|||||||
| フラグ名 | 16進数 | 10進数 | 説明 |
|
| フラグ名 | 16進数 | 10進数 | 説明 |
|
||||||
|:----------------------|:-------------|:--------------|:-------------------|
|
|:----------------------|:-------------|:--------------|:-------------------|
|
||||||
| `tfPassive` | `0x00010000` | 65536 | 有効な場合、オファーはオファーが完全に約定するオファーを消費せず、代わりにレジャーのOfferオブジェクトになります。それはまだクロスしたオファーを消費します。 |
|
| `tfPassive` | `0x00010000` | 65536 | 有効な場合、オファーはオファーが完全に約定するオファーを消費せず、代わりにレジャーのOfferオブジェクトになります。それはまだクロスしたオファーを消費します。 |
|
||||||
| `tfImmediateOrCancel` | `0x00020000` | 131072 | オファーを[IOC注文](http://en.wikipedia.org/wiki/Immediate_or_cancel)として扱います。有効な場合、オファーはレジャーオブジェクトにはなりません。レジャー内の既存のオファーと約定させようとするだけです。即時にオファーがどのオファーとも約定しない場合、どの通貨とも取引せずに「正常に」実行します。この場合、トランザクションは`tesSUCCESS`の[結果コード](../transaction-results/transaction-results.md)を返しますが、レジャー内には、[Offerオブジェクト](../../ledger-data/ledger-entry-types/offer.md)を作成しません。 |
|
| `tfImmediateOrCancel` | `0x00020000` | 131072 | オファーを[IOC注文](http://en.wikipedia.org/wiki/Immediate_or_cancel)として扱います。有効な場合、オファーはレジャーオブジェクトにはなりません。レジャー内の既存のオファーと約定させようとするだけです。即時にオファーがどのオファーとも約定しない場合、どの通貨とも取引せずに「正常に」実行します。この場合、トランザクションは`tesSUCCESS`の[結果コード](../transaction-results/index.md)を返しますが、レジャー内には、[Offerオブジェクト](../../ledger-data/ledger-entry-types/offer.md)を作成しません。 |
|
||||||
| `tfFillOrKill` | `0x00040000` | 262144 | オファーを[FOK注文](http://en.wikipedia.org/wiki/Fill_or_kill)として扱います。レジャー内の既存のオファーのみを約定しようとします。またこれは、全`TakerPays`の数量が取得できる場合に限られます。[fix1578 amendment][]が有効な場合でオファーを配置した時に実行できない場合、トランザクションは`tecKILLED`の[結果コード](../transaction-results/transaction-results.md)を返します。そうでない場合は、トランザクションは、どの通貨とも取り引きせずにキャンセルされた場合でも`tesSUCCESS`の結果コードを返します。 |
|
| `tfFillOrKill` | `0x00040000` | 262144 | オファーを[FOK注文](http://en.wikipedia.org/wiki/Fill_or_kill)として扱います。レジャー内の既存のオファーのみを約定しようとします。またこれは、全`TakerPays`の数量が取得できる場合に限られます。[fix1578 amendment][]が有効な場合でオファーを配置した時に実行できない場合、トランザクションは`tecKILLED`の[結果コード](../transaction-results/index.md)を返します。そうでない場合は、トランザクションは、どの通貨とも取り引きせずにキャンセルされた場合でも`tesSUCCESS`の結果コードを返します。 |
|
||||||
| `tfSell` | `0x00080000` | 524288 | 取引所で`TakerPays`Amountよりも多く取得することになっても、`TakerGets` Amountを交換します。 |
|
| `tfSell` | `0x00080000` | 524288 | 取引所で`TakerPays`Amountよりも多く取得することになっても、`TakerGets` Amountを交換します。 |
|
||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|||||||
@@ -126,7 +126,7 @@ XRP Ledgerでは、ある通貨での入金額と別の通貨での出金額の
|
|||||||
|
|
||||||
[*tfLimitQuality*フラグ](#paymentのフラグ)を使用すると、実行する変換のクオリティについて下限を設定できます。このクオリティの制限は、宛先の`Amount`を`SendMax`の金額(通貨にかかわらず金額のみ)で除算することによって定義します。設定した場合、支払い処理エンジンは、クオリティの制限よりもクオリティ(為替レート)が低い(数値が小さい)パスの使用を回避します。
|
[*tfLimitQuality*フラグ](#paymentのフラグ)を使用すると、実行する変換のクオリティについて下限を設定できます。このクオリティの制限は、宛先の`Amount`を`SendMax`の金額(通貨にかかわらず金額のみ)で除算することによって定義します。設定した場合、支払い処理エンジンは、クオリティの制限よりもクオリティ(為替レート)が低い(数値が小さい)パスの使用を回避します。
|
||||||
|
|
||||||
tfLimitQualityフラグは、それ自体、トランザクションが成功する状況を減少させるものになります。具体的には、好ましくない変換が支払いの一部で使用されている場合、支払いにおける変換の*平均*的なクオリティが全体としてクオリティの制限と同一か、それ以上であっても、支払いが拒否されます。支払いがこの形で拒否される場合、[トランザクションの結果](../transaction-results/transaction-results.md)は`tecPATH_DRY`です。
|
tfLimitQualityフラグは、それ自体、トランザクションが成功する状況を減少させるものになります。具体的には、好ましくない変換が支払いの一部で使用されている場合、支払いにおける変換の*平均*的なクオリティが全体としてクオリティの制限と同一か、それ以上であっても、支払いが拒否されます。支払いがこの形で拒否される場合、[トランザクションの結果](../transaction-results/index.md)は`tecPATH_DRY`です。
|
||||||
|
|
||||||
次の例を考えてみます。100人民元(`Amount` = 100人民元)を最大20米ドル(`SendMax` = 20米ドル)と引き換えに相手方に送金しようとする場合、クオリティの制限は`5`です。あるトレーダーが15米ドルと引き換えに95人民元をオファーしているものの(米ドルあたり約`6.3`人民元の比率)、市場の次善のオファーが2ドルに対して5人民元であるとします(米ドルあたり`2.5`人民元の比率)。両方のオファーを受諾して相手方に100人民元を送金する場合、送信元が負担するコストは17米ドルであり、平均のクオリティは約`5.9`です。
|
次の例を考えてみます。100人民元(`Amount` = 100人民元)を最大20米ドル(`SendMax` = 20米ドル)と引き換えに相手方に送金しようとする場合、クオリティの制限は`5`です。あるトレーダーが15米ドルと引き換えに95人民元をオファーしているものの(米ドルあたり約`6.3`人民元の比率)、市場の次善のオファーが2ドルに対して5人民元であるとします(米ドルあたり`2.5`人民元の比率)。両方のオファーを受諾して相手方に100人民元を送金する場合、送信元が負担するコストは17米ドルであり、平均のクオリティは約`5.9`です。
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ PaymentChannelFundの例:
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:-----------|:------------|
|
|:-----------|:------------|
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ TicketCreateトランザクションは、1つまたは複数の[シーケンス
|
|||||||
|
|
||||||
## エラーケース
|
## エラーケース
|
||||||
|
|
||||||
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/transaction-results.md)が発生する可能性があります。
|
すべてのトランザクションで発生する可能性のあるエラーに加えて、{% $frontmatter.seo.title %}トランザクションでは、次の[トランザクション結果コード](../transaction-results/index.md)が発生する可能性があります。
|
||||||
|
|
||||||
| エラーコード | 説明 |
|
| エラーコード | 説明 |
|
||||||
|:--------------------------|:-------------------------------------------------|
|
|:--------------------------|:-------------------------------------------------|
|
||||||
|
|||||||
@@ -498,6 +498,6 @@ else:
|
|||||||
- 結果が0でない場合は `lsfDisableMaster` の値と等しく、 **マスターキーが正常に無効化されたこと** を示します。
|
- 結果が0でない場合は `lsfDisableMaster` の値と等しく、 **マスターキーが正常に無効化されたこと** を示します。
|
||||||
- 結果が0の場合は、そのアカウントのマスターキーが無効になっていないことを示します。
|
- 結果が0の場合は、そのアカウントのマスターキーが無効になっていないことを示します。
|
||||||
|
|
||||||
結果が予想と異なる場合は、前の手順で送信したトランザクションが正常に実行されたかどうかを確認してください。それは、その口座のトランザクション履歴([account_tx メソッド][])の中で最も新しいもので、結果コード `tesSUCCESS` がついているはずです。それ以外の[結果コード](../../../references/protocol/transactions/transaction-results/transaction-results.md)が表示された場合、そのトランザクションは正常に実行されませんでした。エラーの原因によっては、これらの手順を最初からやり直した方がよいかもしれません。
|
結果が予想と異なる場合は、前の手順で送信したトランザクションが正常に実行されたかどうかを確認してください。それは、その口座のトランザクション履歴([account_tx メソッド][])の中で最も新しいもので、結果コード `tesSUCCESS` がついているはずです。それ以外の[結果コード](../../../references/protocol/transactions/transaction-results/index.md)が表示された場合、そのトランザクションは正常に実行されませんでした。エラーの原因によっては、これらの手順を最初からやり直した方がよいかもしれません。
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
@@ -140,7 +140,7 @@ Connecting to 127.0.0.1:5005
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
[トランザクションの結果](../../../references/protocol/transactions/transaction-results/transaction-results.md)が[**tesSUCCESS**](../../../references/protocol/transactions/transaction-results/tes-success.md)であることを確認します。それ以外の場合、トランザクションは失敗しています。スタンドアロンモードまたは本番環境以外のネットワークで問題が発生した場合は、[マルチシグが有効であること](../../../infrastructure/testing-and-auditing/start-a-new-genesis-ledger-in-stand-alone-mode.md#新しいジェネシスレジャーの設定)を確認してください。
|
[トランザクションの結果](../../../references/protocol/transactions/transaction-results/index.md)が[**tesSUCCESS**](../../../references/protocol/transactions/transaction-results/tes-success.md)であることを確認します。それ以外の場合、トランザクションは失敗しています。スタンドアロンモードまたは本番環境以外のネットワークで問題が発生した場合は、[マルチシグが有効であること](../../../infrastructure/testing-and-auditing/start-a-new-genesis-ledger-in-stand-alone-mode.md#新しいジェネシスレジャーの設定)を確認してください。
|
||||||
|
|
||||||
**注記:** [MultiSignReserve Amendment][]が有効ではない場合は、SignerListのメンバーの増加に応じて、アドレスの[所有者準備金](../../../concepts/accounts/reserves.md#所有者準備金)のXRP額を増加する必要があります。アドレスに十分なXRPがないと、トランザクションは[tecINSUFFICIENT_RESERVE](../../../references/protocol/transactions/transaction-results/tec-codes.md)で失敗します。[MultiSignReserve Amendment][]が有効な場合は、SignerListの署名者の数に関係なく[所有者準備金](../../../concepts/accounts/reserves.md#所有者準備金)として必要なXRPは5 XRPです。関連項目: [SignerListと準備金](../../../references/protocol/ledger-data/ledger-entry-types/signerlist.md#signerlistと準備金)
|
**注記:** [MultiSignReserve Amendment][]が有効ではない場合は、SignerListのメンバーの増加に応じて、アドレスの[所有者準備金](../../../concepts/accounts/reserves.md#所有者準備金)のXRP額を増加する必要があります。アドレスに十分なXRPがないと、トランザクションは[tecINSUFFICIENT_RESERVE](../../../references/protocol/transactions/transaction-results/tec-codes.md)で失敗します。[MultiSignReserve Amendment][]が有効な場合は、SignerListの署名者の数に関係なく[所有者準備金](../../../concepts/accounts/reserves.md#所有者準備金)として必要なXRPは5 XRPです。関連項目: [SignerListと準備金](../../../references/protocol/ledger-data/ledger-entry-types/signerlist.md#signerlistと準備金)
|
||||||
|
|
||||||
@@ -177,7 +177,7 @@ xrpl.jsの[Wallet.sign()メソッド](https://js.xrpl.org/classes/Wallet.html#si
|
|||||||
- トランザクションの送信に必要なTest Net XRPが十分にあるか。送金できるXRPの額は、[必要準備金](../../concepts/accounts/reserves.md)によって制限されています。現時点では、20XRPに加えて、レジャー内に保有している各「オブジェクト」につき5XRPずつ追加となります。(Test Net Faucetを使用して新しいアドレスを生成した場合は、保有するオブジェクトはありません。)
|
- トランザクションの送信に必要なTest Net XRPが十分にあるか。送金できるXRPの額は、[必要準備金](../../concepts/accounts/reserves.md)によって制限されています。現時点では、20XRPに加えて、レジャー内に保有している各「オブジェクト」につき5XRPずつ追加となります。(Test Net Faucetを使用して新しいアドレスを生成した場合は、保有するオブジェクトはありません。)
|
||||||
- テストネットワークのサーバーに接続しているか。
|
- テストネットワークのサーバーに接続しているか。
|
||||||
|
|
||||||
他の可能性については、[トランザクション結果](../../references/protocol/transactions/transaction-results/transaction-results.md)の完全なリストを参照してください。
|
他の可能性については、[トランザクション結果](../../references/protocol/transactions/transaction-results/index.md)の完全なリストを参照してください。
|
||||||
|
|
||||||
{% interactive-block label="Submit" steps=$frontmatter.steps %}
|
{% interactive-block label="Submit" steps=$frontmatter.steps %}
|
||||||
|
|
||||||
@@ -137,7 +137,7 @@ Checkを変動金額で換金するためのトランザクションを準備す
|
|||||||
|
|
||||||
### エラー処理
|
### エラー処理
|
||||||
|
|
||||||
[](../../../../references/protocol/transactions/transaction-results/transaction-results.md)Checkの換金が`tec`クラスコードで失敗した場合は、[すべてのトランザクションレスポンスのリスト](../../../../references/protocol/transactions/transaction-results/transaction-results.md)でコードを確認し、適切に対処してください。CheckCashトランザクションでよく返される結果コードの一部を次に示します。
|
[](../../../../references/protocol/transactions/transaction-results/index.md)Checkの換金が`tec`クラスコードで失敗した場合は、[すべてのトランザクションレスポンスのリスト](../../../../references/protocol/transactions/transaction-results/index.md)でコードを確認し、適切に対処してください。CheckCashトランザクションでよく返される結果コードの一部を次に示します。
|
||||||
|
|
||||||
| 結果コード | 意味 | 対処 |
|
| 結果コード | 意味 | 対処 |
|
||||||
|-------------|---------|----------------|
|
|-------------|---------|----------------|
|
||||||
@@ -128,7 +128,7 @@ print(cancel_after)
|
|||||||
|
|
||||||
`FinishAfter`の時刻が経過した後で資金のリリースを実行する[EscrowFinishトランザクション][]に[署名して送信](../../../../concepts/transactions/index.md#トランザクションへの署名とトランザクションの送信)します。トランザクションの`Owner`フィールドにEscrowCreateトランザクションの`Account`アドレスを設定し、`OfferSequence` にEscrowCreateトランザクションの`Sequence`番号を設定します。`Condition`フィールドと`Fulfillment`フィールドに、ステップ1で生成した条件値とフルフィルメント値をそれぞれ16進数で設定します。フルフィルメントのサイズ(バイト数)に基づいて`Fee`([トランザクションコスト](../../../../concepts/transactions/transaction-cost.md))の値を設定します。条件付きEscrowFinishでは、少なくとも330 drop(XRP)と、フルフィルメントのサイズで16バイトごとに10 dropが必要です。
|
`FinishAfter`の時刻が経過した後で資金のリリースを実行する[EscrowFinishトランザクション][]に[署名して送信](../../../../concepts/transactions/index.md#トランザクションへの署名とトランザクションの送信)します。トランザクションの`Owner`フィールドにEscrowCreateトランザクションの`Account`アドレスを設定し、`OfferSequence` にEscrowCreateトランザクションの`Sequence`番号を設定します。`Condition`フィールドと`Fulfillment`フィールドに、ステップ1で生成した条件値とフルフィルメント値をそれぞれ16進数で設定します。フルフィルメントのサイズ(バイト数)に基づいて`Fee`([トランザクションコスト](../../../../concepts/transactions/transaction-cost.md))の値を設定します。条件付きEscrowFinishでは、少なくとも330 drop(XRP)と、フルフィルメントのサイズで16バイトごとに10 dropが必要です。
|
||||||
|
|
||||||
**注記:** EscrowCreateトランザクションに`FinishAfter`フィールドが含まれている場合、Escrowの条件として正しいフルフィルメントを指定しても、この時刻よりも前の時点ではこのトランザクションを実行できません。前に閉鎖されたレジャーの閉鎖時刻が`FinishAfter`の時刻よりも前である場合、EscrowFinishトランザクションは[結果コード](../../../../references/protocol/transactions/transaction-results/transaction-results.md)`tecNO_PERMISSION`で失敗します。
|
**注記:** EscrowCreateトランザクションに`FinishAfter`フィールドが含まれている場合、Escrowの条件として正しいフルフィルメントを指定しても、この時刻よりも前の時点ではこのトランザクションを実行できません。前に閉鎖されたレジャーの閉鎖時刻が`FinishAfter`の時刻よりも前である場合、EscrowFinishトランザクションは[結果コード](../../../../references/protocol/transactions/transaction-results/index.md)`tecNO_PERMISSION`で失敗します。
|
||||||
|
|
||||||
Escrowが有効期限切れの場合は、[Escrowの取消し](cancel-an-expired-escrow.md)だけが可能です。
|
Escrowが有効期限切れの場合は、[Escrowの取消し](cancel-an-expired-escrow.md)だけが可能です。
|
||||||
|
|
||||||
@@ -343,7 +343,7 @@ WS_HANDLERS["transaction"] = log_tx
|
|||||||
|
|
||||||
- **`validated`フィールド**は、トランザクションの結果が[最終的である](../../concepts/transactions/finality-of-results/index.md)ことを示します。これは、`accounts`をサブスクライブする場合に常に当てはまりますが、`accounts_proposed`または`transactions_proposed`ストリーム _も_ サブスクライブしている場合は、サーバーは未確認のトランザクションに関して同様のメッセージを同じ接続で送信します。予防策として、`validated`フィールドを常に確認することをお勧めします。
|
- **`validated`フィールド**は、トランザクションの結果が[最終的である](../../concepts/transactions/finality-of-results/index.md)ことを示します。これは、`accounts`をサブスクライブする場合に常に当てはまりますが、`accounts_proposed`または`transactions_proposed`ストリーム _も_ サブスクライブしている場合は、サーバーは未確認のトランザクションに関して同様のメッセージを同じ接続で送信します。予防策として、`validated`フィールドを常に確認することをお勧めします。
|
||||||
|
|
||||||
- **`meta.TransactionResult`フィールド**は、[トランザクションの結果](../../references/protocol/transactions/transaction-results/transaction-results.md)です。結果が`tesSUCCESS`でない場合は、トランザクションは失敗したため、値を送信できません。
|
- **`meta.TransactionResult`フィールド**は、[トランザクションの結果](../../references/protocol/transactions/transaction-results/index.md)です。結果が`tesSUCCESS`でない場合は、トランザクションは失敗したため、値を送信できません。
|
||||||
|
|
||||||
- **`transaction.Account`** フィールドはトランザクションの送信元です。他の人が送信したトランザクションのみを探している場合は、このフィールドがあなたのアドレスと一致するトランザクションを無視できます(自身に対するクロスカレンシー支払いが _可能である_ 点に注意してください)。
|
- **`transaction.Account`** フィールドはトランザクションの送信元です。他の人が送信したトランザクションのみを探している場合は、このフィールドがあなたのアドレスと一致するトランザクションを無視できます(自身に対するクロスカレンシー支払いが _可能である_ 点に注意してください)。
|
||||||
|
|
||||||
@@ -508,6 +508,6 @@ $("#tx_read").click((event) => {
|
|||||||
- **リファレンス:**
|
- **リファレンス:**
|
||||||
- [トランザクションのタイプ](../../references/protocol/transactions/types/index.md)
|
- [トランザクションのタイプ](../../references/protocol/transactions/types/index.md)
|
||||||
- [トランザクションのメタデータ](../../references/protocol/transactions/metadata.md) - メタデータフォーマットとメタデータに表示されるフィールドの概要
|
- [トランザクションのメタデータ](../../references/protocol/transactions/metadata.md) - メタデータフォーマットとメタデータに表示されるフィールドの概要
|
||||||
- [トランザクションの結果](../../references/protocol/transactions/transaction-results/transaction-results.md) - トランザクションのすべての結果コードを掲載した表一覧
|
- [トランザクションの結果](../../references/protocol/transactions/transaction-results/index.md) - トランザクションのすべての結果コードを掲載した表一覧
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ public:
|
|||||||
- [`LedgerFormats.cpp`](https://github.com/XRPLF/rippled/blob/master/src/ripple/protocol/impl/LedgerFormats.cpp)
|
- [`LedgerFormats.cpp`](https://github.com/XRPLF/rippled/blob/master/src/ripple/protocol/impl/LedgerFormats.cpp)
|
||||||
- [`TxFormats.cpp`](https://github.com/XRPLF/rippled/blob/master/src/ripple/protocol/impl/TxFormats.cpp)
|
- [`TxFormats.cpp`](https://github.com/XRPLF/rippled/blob/master/src/ripple/protocol/impl/TxFormats.cpp)
|
||||||
|
|
||||||
-` rippled` はトランザクションの結果を結果コードで表します。[トランザクションの結果](../../docs/references/protocol/transactions/transaction-results/transaction-results.md)をご覧ください。
|
-` rippled` はトランザクションの結果を結果コードで表します。[トランザクションの結果](../../docs/references/protocol/transactions/transaction-results/index.md)をご覧ください。
|
||||||
|
|
||||||
```c++
|
```c++
|
||||||
CreateCheck::preflight(PreflightContext const& ctx)
|
CreateCheck::preflight(PreflightContext const& ctx)
|
||||||
|
|||||||
@@ -1111,7 +1111,7 @@ XRP Ledgerの分散型取引所において、オファーの掛け合わせの
|
|||||||
|
|
||||||
署名者は資金供給のあるアドレスでも資金供給のないアドレスでも可能です。署名者リストのうち資金供給のあるアドレスは、レギュラーキー(定義済みの場合)またはマスターキー(無効でない場合)を使用して署名できます。資金供給のないアドレスは、マスターキーを使用して署名できます。マルチシグトランザクションは、レギュラーキーで署名されたトランザクションと同じ権限を持ちます。
|
署名者は資金供給のあるアドレスでも資金供給のないアドレスでも可能です。署名者リストのうち資金供給のあるアドレスは、レギュラーキー(定義済みの場合)またはマスターキー(無効でない場合)を使用して署名できます。資金供給のないアドレスは、マスターキーを使用して署名できます。マルチシグトランザクションは、レギュラーキーで署名されたトランザクションと同じ権限を持ちます。
|
||||||
|
|
||||||
SignerListを持つアドレスは、レギュラーキーが定義されていなくてもマスターキーを無効にすることができます。また、SignerListを持つアドレスは、マスターキーが無効な場合でもレギュラーキーを削除することができます。`tecMASTER_DISABLED`トランザクション結果コードは`tecNO_ALTERNATIVE_KEY`に名前が変更されます。`tecNO_REGULAR_KEY`トランザクション結果コードは廃止となり、`tecNO_ALTERNATIVE_KEY`に代わります。さらに、この修正は以下の新しい[トランザクション結果コード](../docs/references/protocol/transactions/transaction-results/transaction-results.md)を追加します。
|
SignerListを持つアドレスは、レギュラーキーが定義されていなくてもマスターキーを無効にすることができます。また、SignerListを持つアドレスは、マスターキーが無効な場合でもレギュラーキーを削除することができます。`tecMASTER_DISABLED`トランザクション結果コードは`tecNO_ALTERNATIVE_KEY`に名前が変更されます。`tecNO_REGULAR_KEY`トランザクション結果コードは廃止となり、`tecNO_ALTERNATIVE_KEY`に代わります。さらに、この修正は以下の新しい[トランザクション結果コード](../docs/references/protocol/transactions/transaction-results/index.md)を追加します。
|
||||||
|
|
||||||
* `temBAD_SIGNER`
|
* `temBAD_SIGNER`
|
||||||
* `temBAD_QUORUM`
|
* `temBAD_QUORUM`
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
# Create AMM
|
# Create AMM
|
||||||
|
|
||||||
Code samples for the [Create an Automated Market Maker tutorial](../../docs/tutorials/tasks/use-tokens/create-an-automated-market-maker.md), showing how to make set up a new AMM.
|
Code samples for the [Create an Automated Market Maker tutorial](../../docs/tutorials/how-tos/use-tokens/create-an-automated-market-maker.md), showing how to make set up a new AMM.
|
||||||
|
|||||||
29
blog/2024/get-ready-for-amm.md
Normal file
29
blog/2024/get-ready-for-amm.md
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
# Get Ready for AMM
|
||||||
|
|
||||||
|
The [AMM Amendment](/resources/known-amendments#amm) to the XRP Ledger protocol, which adds Automated Market Maker functionality, is on track to become enabled on Mainnet on 2024-03-22. If it maintains support from a supermajority of validators and becomes enabled as expected, this represents the culmination of a 2-year project to bring AMM to the XRPL, starting from the XLS-30 draft specification proposed by Aanchal Malhotra and David Schwartz of Ripple and incorporating the work and feedback of numerous contributors in the XRPL community during that time.
|
||||||
|
|
||||||
|
Any server that is currently working on Mainnet should continue to work after AMM gets enabled, since the Clawback amendment from the same release went live on 2024-02-08. However, it's still a good idea to update to the latest version, [`rippled` 2.1.0](./rippled-2.1.0.md), to take advantage of performance improvements, bug fixes, and to be ready for other amendments that are currently open for voting.
|
||||||
|
|
||||||
|
<!-- BREAK -->
|
||||||
|
|
||||||
|
## Background
|
||||||
|
|
||||||
|
The XRP Ledger has included a central limit order book decentralized exchange (CLOB DEX) since its inception, but other blockchains largely moved in the direction of facilitating currency exchanges through Automated Market Makers (AMMs), often using a "constant product" algorithm. In both systems, users offer some of their assets for exchange on-ledger, and the blockchain matches those with users trying to acquire specific assets; the users providing the assets take on _currency risk_, the possibility that exchange rates will move not in their favor. In the CLOB DEX, users explicitly set the price they're willing to exchange, whereas in an AMM a mathematical formula sets the price based on the supply and demand of currencies involved. In both cases, the market works most efficiently when there is a high volume being supplied and exchanged.
|
||||||
|
|
||||||
|
Advantages of a CLOB DEX include fine-grained control over amounts and prices, and unlike with an AMM, the offered funds aren't locked up while waiting for a match. (For example, using the CLOB DEX, one trader can offer up the same $100 for EUR, CAD, JPY, and so on, giving some or all of it to whoever comes first.) Advantages of an AMM include the simplicity of not needing to manually update exchange rates or add new offers as volume flows back and forth. (For example, if the flows between two assets are mostly one-sided, the price to exchange via the AMM will get steadily more expensive to reflect the imbalance of supply and demand, whereas in the CLOB DEX the traders would have to explicitly cancel their old offers and place new ones at higher prices.)
|
||||||
|
|
||||||
|
The AMM amendment adds Automated Market Makers that are designed to synergize with the CLOB DEX to bring traders the flexibility to provide liquidity in whatever method suits them best. Currency trades can automatically use a combination of the AMM and CLOB DEX to achieve the best rate. Also, unlike the AMMs on other blockchains, the XRP Ledger's AMM comes with a fee auction mechanism where liquidity providers can bid on the opportunity to trade against the AMM with reduced fees.
|
||||||
|
|
||||||
|
## Action Needed
|
||||||
|
|
||||||
|
If you run a tool that parses full ledgers or transaction metadata, you need to be ready for AMM-related data types to start appearing on Mainnet after the amendment becomes enabled. New data to look out for include 6 new AMM-related [transaction types](../../docs/references/protocol/transactions/types/index.md), a new [AMM ledger entry type](../../docs/references/protocol/ledger-data/ledger-entry-types/amm.md), a new `AMMID` field in some `AccountRoot` ledger entries, and several new [transaction result codes](../../docs/references/protocol/transactions/transaction-results/index.md) that the new transaction types can produce.
|
||||||
|
|
||||||
|
## Using AMM
|
||||||
|
|
||||||
|
If you want to use AMM after the amendment goes live, the first step is to [Create an Automated Maker](../../docs/tutorials/how-tos/use-tokens/create-an-automated-market-maker.md) for the currency pair you want to trade. Only the first user for any given currency pair needs to do this, though; other users can deposit to the existing AMM to get in on the action.
|
||||||
|
|
||||||
|
There are no special steps to use an AMM when trading currencies on the XRP Ledger. If you follow the standard steps to [Trade in the DEX](../../docs/tutorials/how-tos/use-tokens/trade-in-the-decentralized-exchange.md), and there's an AMM for the currency pair you're trading, your transaction automatically uses the AMM when doing so produces a better rate than consuming orders from the order book.
|
||||||
|
|
||||||
|
## Further Reading
|
||||||
|
|
||||||
|
For an overview of how the XRP Ledger's AMM works in greater detail, see [What Is An Automated Market Maker?](../../docs/concepts/tokens/decentralized-exchange/automated-market-makers.md).
|
||||||
@@ -5,6 +5,7 @@
|
|||||||
- group: '2024'
|
- group: '2024'
|
||||||
expanded: false
|
expanded: false
|
||||||
items:
|
items:
|
||||||
|
- page: 2024/get-ready-for-amm.md
|
||||||
- page: 2024/verifyed.md
|
- page: 2024/verifyed.md
|
||||||
- page: 2024/how-to-mint-nfts.md
|
- page: 2024/how-to-mint-nfts.md
|
||||||
- page: 2024/rippled-2.1.0.md
|
- page: 2024/rippled-2.1.0.md
|
||||||
|
|||||||
@@ -609,7 +609,7 @@
|
|||||||
[random method]: /docs/references/http-websocket-apis/public-api-methods/utility-methods/random.md
|
[random method]: /docs/references/http-websocket-apis/public-api-methods/utility-methods/random.md
|
||||||
[random メソッド]: /docs/references/http-websocket-apis/public-api-methods/utility-methods/random.md
|
[random メソッド]: /docs/references/http-websocket-apis/public-api-methods/utility-methods/random.md
|
||||||
[randomメソッド]: /docs/references/http-websocket-apis/public-api-methods/utility-methods/random.md
|
[randomメソッド]: /docs/references/http-websocket-apis/public-api-methods/utility-methods/random.md
|
||||||
[result code]: /docs/references/protocol/transactions/transaction-results/transaction-results.md
|
[result code]: /docs/references/protocol/transactions/transaction-results/index.md
|
||||||
[ripple-lib]: https://github.com/XRPLF/xrpl.js
|
[ripple-lib]: https://github.com/XRPLF/xrpl.js
|
||||||
[ripple_path_find command]: /docs/references/http-websocket-apis/public-api-methods/path-and-order-book-methods/ripple_path_find.md
|
[ripple_path_find command]: /docs/references/http-websocket-apis/public-api-methods/path-and-order-book-methods/ripple_path_find.md
|
||||||
[ripple_path_find method]: /docs/references/http-websocket-apis/public-api-methods/path-and-order-book-methods/ripple_path_find.md
|
[ripple_path_find method]: /docs/references/http-websocket-apis/public-api-methods/path-and-order-book-methods/ripple_path_find.md
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Accounts in the XRP Ledger are identified by an address in the XRP Ledger's [base58][] format. The address is derived from the account's master [public key](https://en.wikipedia.org/wiki/Public-key_cryptography), which is in turn derived from a secret key. An address is represented as a string in JSON and has the following characteristics:
|
Accounts in the XRP Ledger are identified by an address in the XRP Ledger's [base58](../../references/protocol/data-types/base58-encodings.md) format. The address is derived from the account's master [public key](https://en.wikipedia.org/wiki/Public-key_cryptography), which is in turn derived from a secret key. An address is represented as a string in JSON and has the following characteristics:
|
||||||
|
|
||||||
* Between 25 and 35 characters in length
|
* Between 25 and 35 characters in length
|
||||||
* Starts with the character `r`
|
* Starts with the character `r`
|
||||||
|
|||||||
@@ -3,5 +3,5 @@
|
|||||||
| `AffectedNodes` | Array | List of [ledger entries](../references/protocol/ledger-data/ledger-entry-types/index.md) that were created, deleted, or modified by this transaction, and specific changes to each. |
|
| `AffectedNodes` | Array | List of [ledger entries](../references/protocol/ledger-data/ledger-entry-types/index.md) that were created, deleted, or modified by this transaction, and specific changes to each. |
|
||||||
| `DeliveredAmount` | [Currency Amount][] | _(May be omitted)_ For a [partial payment](../concepts/payment-types/partial-payments.md), this field records the amount of currency actually delivered to the destination. To avoid errors when reading transactions, instead use the `delivered_amount` field, which is provided for all Payment transactions, partial or not. |
|
| `DeliveredAmount` | [Currency Amount][] | _(May be omitted)_ For a [partial payment](../concepts/payment-types/partial-payments.md), this field records the amount of currency actually delivered to the destination. To avoid errors when reading transactions, instead use the `delivered_amount` field, which is provided for all Payment transactions, partial or not. |
|
||||||
| `TransactionIndex` | Unsigned Integer | The transaction's position within the ledger that included it. This is zero-indexed. (For example, the value `2` means it was the 3rd transaction in that ledger.) |
|
| `TransactionIndex` | Unsigned Integer | The transaction's position within the ledger that included it. This is zero-indexed. (For example, the value `2` means it was the 3rd transaction in that ledger.) |
|
||||||
| `TransactionResult` | String | A [result code](../references/protocol/transactions/transaction-results/transaction-results.md) indicating whether the transaction succeeded or how it failed. |
|
| `TransactionResult` | String | A [result code](../references/protocol/transactions/transaction-results/index.md) indicating whether the transaction succeeded or how it failed. |
|
||||||
| [`delivered_amount`](../references/protocol/transactions/metadata.md#delivered_amount) | [Currency Amount][] | _(Omitted for non-Payment transactions)_ The [Currency Amount][] actually received by the `Destination` account. Use this field to determine how much was delivered, regardless of whether the transaction is a [partial payment](../concepts/payment-types/partial-payments.md). See [this description](../references/protocol/transactions/metadata.md#delivered_amount) for details. |
|
| [`delivered_amount`](../references/protocol/transactions/metadata.md#delivered_amount) | [Currency Amount][] | _(Omitted for non-Payment transactions)_ The [Currency Amount][] actually received by the `Destination` account. Use this field to determine how much was delivered, regardless of whether the transaction is a [partial payment](../concepts/payment-types/partial-payments.md). See [this description](../references/protocol/transactions/metadata.md#delivered_amount) for details. |
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ _Figure 3: Transactions Applied to Ledger Version_
|
|||||||
|
|
||||||
The set of transactions included in a ledger instance are recorded in that ledger and allow audits of the XRP Ledger history. If an account balance is different in ledger N+1 than it was in ledger N, then ledger N+1 contains the transaction(s) responsible for the change.
|
The set of transactions included in a ledger instance are recorded in that ledger and allow audits of the XRP Ledger history. If an account balance is different in ledger N+1 than it was in ledger N, then ledger N+1 contains the transaction(s) responsible for the change.
|
||||||
|
|
||||||
Transactions that appear in a validated ledger may have succeeded in changing the ledger, or may have been processed without doing the requested action. Successful transactions have the **`tesSUCCESS`** [result code](../../references/protocol/transactions/transaction-results/transaction-results.md) which indicates the requested changes are applied to the ledger. Failed transactions in the ledger have **`tec`** class result codes.<a href="#footnote_1" id="from_footnote_1"><sup>1</sup></a>
|
Transactions that appear in a validated ledger may have succeeded in changing the ledger, or may have been processed without doing the requested action. Successful transactions have the **`tesSUCCESS`** [result code](../../references/protocol/transactions/transaction-results/index.md) which indicates the requested changes are applied to the ledger. Failed transactions in the ledger have **`tec`** class result codes.<a href="#footnote_1" id="from_footnote_1"><sup>1</sup></a>
|
||||||
|
|
||||||
All transactions included in a ledger destroy some XRP as a [transaction cost](../transactions/transaction-cost.md), regardless of whether they had a **`tes`** or **`tec`** code. The exact amount of XRP to destroy is defined by the signed transaction instructions.
|
All transactions included in a ledger destroy some XRP as a [transaction cost](../transactions/transaction-cost.md), regardless of whether they had a **`tes`** or **`tec`** code. The exact amount of XRP to destroy is defined by the signed transaction instructions.
|
||||||
|
|
||||||
|
|||||||
@@ -74,6 +74,6 @@ Here are some scenarios that could cause the detector to issue false positive me
|
|||||||
- [Reliable Transaction Submission](../transactions/reliable-transaction-submission.md)
|
- [Reliable Transaction Submission](../transactions/reliable-transaction-submission.md)
|
||||||
- [Understanding Log Messages](../../infrastructure/troubleshooting/understanding-log-messages.md)
|
- [Understanding Log Messages](../../infrastructure/troubleshooting/understanding-log-messages.md)
|
||||||
- **References:**
|
- **References:**
|
||||||
- [Transaction Results](../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [Transaction Results](../../references/protocol/transactions/transaction-results/index.md)
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ The basis of any financial system is transferring value. The quickest and simple
|
|||||||
- [Monitor Incoming Payments with WebSocket](../../tutorials/http-websocket-apis/build-apps/monitor-incoming-payments-with-websocket.md)
|
- [Monitor Incoming Payments with WebSocket](../../tutorials/http-websocket-apis/build-apps/monitor-incoming-payments-with-websocket.md)
|
||||||
- **References:**
|
- **References:**
|
||||||
- [Payment transaction][]
|
- [Payment transaction][]
|
||||||
- [Transaction Results](../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [Transaction Results](../../references/protocol/transactions/transaction-results/index.md)
|
||||||
- [account_info method][] - for checking XRP balances
|
- [account_info method][] - for checking XRP balances
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ Partial Payments have the following limitations:
|
|||||||
- Direct XRP-to-XRP payments cannot be partial payments; this case returns the [result code][] `temBAD_SEND_XRP_PARTIAL`.
|
- Direct XRP-to-XRP payments cannot be partial payments; this case returns the [result code][] `temBAD_SEND_XRP_PARTIAL`.
|
||||||
- However, cross-currency payments that involve XRP as one of the currencies _can_ be partial payments.
|
- However, cross-currency payments that involve XRP as one of the currencies _can_ be partial payments.
|
||||||
|
|
||||||
[result code]: ../../references/protocol/transactions/transaction-results/transaction-results.md
|
[result code]: ../../references/protocol/transactions/transaction-results/index.md
|
||||||
|
|
||||||
### The `delivered_amount` Field
|
### The `delivered_amount` Field
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ Any other transaction result is potentially not final. In that case, the transac
|
|||||||
|
|
||||||
## How can non-final results change?
|
## How can non-final results change?
|
||||||
|
|
||||||
When you initially submit a transaction, the `rippled` server tentatively applies that transaction to its current open ledger, then returns the tentative [transaction results](../../../references/protocol/transactions/transaction-results/transaction-results.md) from doing so. However, the transaction's final result may be very different than its tentative results, for several reasons:
|
When you initially submit a transaction, the `rippled` server tentatively applies that transaction to its current open ledger, then returns the tentative [transaction results](../../../references/protocol/transactions/transaction-results/index.md) from doing so. However, the transaction's final result may be very different than its tentative results, for several reasons:
|
||||||
|
|
||||||
- The transaction may be delayed until a later ledger version, or may never be included in a validated ledger. For the most part, the XRP Ledger follows a principle that all valid transactions should be processed as soon as possible. However, there are exceptions, including:
|
- The transaction may be delayed until a later ledger version, or may never be included in a validated ledger. For the most part, the XRP Ledger follows a principle that all valid transactions should be processed as soon as possible. However, there are exceptions, including:
|
||||||
|
|
||||||
@@ -55,6 +55,6 @@ When you initially submit a transaction, the `rippled` server tentatively applie
|
|||||||
## See Also
|
## See Also
|
||||||
|
|
||||||
- [Look up Transaction Results](look-up-transaction-results.md)
|
- [Look up Transaction Results](look-up-transaction-results.md)
|
||||||
- [Transaction Results Reference](../../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [Transaction Results Reference](../../../references/protocol/transactions/transaction-results/index.md)
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ The following example shows a successful transaction, as returned by the [tx met
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
This example shows an [AccountSet transaction][] sent by the [account](../../accounts/index.md) with address `rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn`, using [Sequence number][] 376. The transaction's [identifying hash][] is `017DED8F5E20F0335C6F56E3D5EE7EF5F7E83FB81D2904072E665EEA69402567` and its [result](../../../references/protocol/transactions/transaction-results/transaction-results.md) is `tesSUCCESS`. The transaction was included in ledger version 46447423, which has been validated, so these results are final.
|
This example shows an [AccountSet transaction][] sent by the [account](../../accounts/index.md) with address `rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn`, using [Sequence number][] 376. The transaction's [identifying hash][] is `017DED8F5E20F0335C6F56E3D5EE7EF5F7E83FB81D2904072E665EEA69402567` and its [result](../../../references/protocol/transactions/transaction-results/index.md) is `tesSUCCESS`. The transaction was included in ledger version 46447423, which has been validated, so these results are final.
|
||||||
|
|
||||||
|
|
||||||
### Case: Not Included in a Validated Ledger
|
### Case: Not Included in a Validated Ledger
|
||||||
@@ -75,7 +75,7 @@ If the transaction's failure is not final, it may still become included in a _fu
|
|||||||
|
|
||||||
### Case: Included in a Validated Ledger
|
### Case: Included in a Validated Ledger
|
||||||
|
|
||||||
If the transaction _is_ included in a validated ledger, then the [transaction metadata](../../../references/protocol/transactions/metadata.md) contains a full report of all changes that were made to the ledger state as a result of processing the transaction. The metadata's `TransactionResult` field contains a [transaction result code](../../../references/protocol/transactions/transaction-results/transaction-results.md) that summarizes the outcome:
|
If the transaction _is_ included in a validated ledger, then the [transaction metadata](../../../references/protocol/transactions/metadata.md) contains a full report of all changes that were made to the ledger state as a result of processing the transaction. The metadata's `TransactionResult` field contains a [transaction result code](../../../references/protocol/transactions/transaction-results/index.md) that summarizes the outcome:
|
||||||
|
|
||||||
- The code `tesSUCCESS` indicates that the transaction was, more or less, successful.
|
- The code `tesSUCCESS` indicates that the transaction was, more or less, successful.
|
||||||
- A `tec`-class code indicates that the transaction failed, and its only effects on the ledger state are to destroy the XRP [transaction cost](../transaction-cost.md) and possibly perform some bookkeeping like removing [expired Offers](../../tokens/decentralized-exchange/offers.md#offer-expiration) and [closed payment channels](../../payment-types/payment-channels.md#payment-channel-lifecycle).
|
- A `tec`-class code indicates that the transaction failed, and its only effects on the ledger state are to destroy the XRP [transaction cost](../transaction-cost.md) and possibly perform some bookkeeping like removing [expired Offers](../../tokens/decentralized-exchange/offers.md#offer-expiration) and [closed payment channels](../../payment-types/payment-channels.md#payment-channel-lifecycle).
|
||||||
@@ -450,6 +450,6 @@ Most other transactions create a specific type of ledger entry and [adjust the s
|
|||||||
- **References:**
|
- **References:**
|
||||||
- [Ledger Entry Types Reference](../../../references/protocol/ledger-data/ledger-entry-types/index.md) - All possible fields of all types of ledger entries
|
- [Ledger Entry Types Reference](../../../references/protocol/ledger-data/ledger-entry-types/index.md) - All possible fields of all types of ledger entries
|
||||||
- [Transaction Metadata](../../../references/protocol/transactions/metadata.md) - Summary of the metadata format and fields that appear in metadata
|
- [Transaction Metadata](../../../references/protocol/transactions/metadata.md) - Summary of the metadata format and fields that appear in metadata
|
||||||
- [Transaction Results](../../../references/protocol/transactions/transaction-results/transaction-results.md) - Tables of all possible result codes for transactions.
|
- [Transaction Results](../../../references/protocol/transactions/transaction-results/index.md) - Tables of all possible result codes for transactions.
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -143,7 +143,7 @@ The process to exploit a vulnerable system follows a series of steps like the fo
|
|||||||
- **References:**
|
- **References:**
|
||||||
- [Basic Data Types - Hashes](../../../references/protocol/data-types/basic-data-types.md#hashes)
|
- [Basic Data Types - Hashes](../../../references/protocol/data-types/basic-data-types.md#hashes)
|
||||||
- [Transaction Common Fields - Global Flags](../../../references/protocol/transactions/common-fields.md#global-flags)
|
- [Transaction Common Fields - Global Flags](../../../references/protocol/transactions/common-fields.md#global-flags)
|
||||||
- [Transaction Results](../../../references/protocol/transactions/transaction-results/transaction-results.md)
|
- [Transaction Results](../../../references/protocol/transactions/transaction-results/index.md)
|
||||||
- [Serialization Format](../../../references/protocol/binary-format.md)
|
- [Serialization Format](../../../references/protocol/binary-format.md)
|
||||||
|
|
||||||
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
{% raw-partial file="/docs/_snippets/common-links.md" /%}
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ Sending a transaction to the XRP Ledger involves several steps:
|
|||||||
3. Submit a transaction to an XRP Ledger server (usually a [`rippled` instance](../networks-and-servers/index.md)). If the transaction is properly formed, the server provisionally applies the transaction to its current version of the ledger and relays the transaction to other members of the peer-to-peer network.
|
3. Submit a transaction to an XRP Ledger server (usually a [`rippled` instance](../networks-and-servers/index.md)). If the transaction is properly formed, the server provisionally applies the transaction to its current version of the ledger and relays the transaction to other members of the peer-to-peer network.
|
||||||
4. The [consensus process](../consensus-protocol/index.md) determines which provisional transactions get included in the next validated ledger.
|
4. The [consensus process](../consensus-protocol/index.md) determines which provisional transactions get included in the next validated ledger.
|
||||||
5. The servers apply those transactions to the previous ledger in a canonical order and share their results.
|
5. The servers apply those transactions to the previous ledger in a canonical order and share their results.
|
||||||
6. If enough [trusted validators](../networks-and-servers/rippled-server-modes.md#validators) created the exact same ledger, that ledger is declared _validated_ and the [results of the transactions](../../references/protocol/transactions/transaction-results/transaction-results.md) in that ledger are immutable.
|
6. If enough [trusted validators](../networks-and-servers/rippled-server-modes.md#validators) created the exact same ledger, that ledger is declared _validated_ and the [results of the transactions](../../references/protocol/transactions/transaction-results/index.md) in that ledger are immutable.
|
||||||
|
|
||||||
See [Send XRP](../../tutorials/how-tos/send-xrp.md) for an interactive tutorial in sending XRP payments.
|
See [Send XRP](../../tutorials/how-tos/send-xrp.md) for an interactive tutorial in sending XRP payments.
|
||||||
|
|
||||||
|
|||||||
@@ -131,7 +131,7 @@ The `Fee` field is one of the things that can be [auto-filled](../../references/
|
|||||||
|
|
||||||
## Transaction Costs and Failed Transactions
|
## Transaction Costs and Failed Transactions
|
||||||
|
|
||||||
Since the purpose of the transaction cost is to protect the XRP Ledger peer-to-peer network from excessive load, it should apply to any transaction that gets distributed to the network, regardless of whether or not that transaction succeeds. However, to affect the shared global ledger, a transaction must be included in a validated ledger. Thus, `rippled` servers try to include failed transactions in ledgers, with [`tec` status codes](../../references/protocol/transactions/transaction-results/transaction-results.md) ("tec" stands for "Transaction Engine - Claimed fee only").
|
Since the purpose of the transaction cost is to protect the XRP Ledger peer-to-peer network from excessive load, it should apply to any transaction that gets distributed to the network, regardless of whether or not that transaction succeeds. However, to affect the shared global ledger, a transaction must be included in a validated ledger. Thus, `rippled` servers try to include failed transactions in ledgers, with [`tec` status codes](../../references/protocol/transactions/transaction-results/index.md) ("tec" stands for "Transaction Engine - Claimed fee only").
|
||||||
|
|
||||||
The transaction cost is only debited from the sender's XRP balance when the transaction actually becomes included in a validated ledger. This is true whether the transaction is considered successful or fails with a `tec` code.
|
The transaction cost is only debited from the sender's XRP balance when the transaction actually becomes included in a validated ledger. This is true whether the transaction is considered successful or fails with a `tec` code.
|
||||||
|
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ Within the transaction queue, transactions are ranked so that transactions payin
|
|||||||
|
|
||||||
The precise order of transactions in the queue decides which transactions get added to the next in-progress ledger version in cases where there are more transactions in the queue than the expected size of the next ledger version. The order of the transactions **does not affect the order the transactions are executed within a validated ledger**. In each validated ledger version, the transaction set for that version executes in [canonical order](../consensus-protocol/consensus-structure.md#calculate-and-share-validations).
|
The precise order of transactions in the queue decides which transactions get added to the next in-progress ledger version in cases where there are more transactions in the queue than the expected size of the next ledger version. The order of the transactions **does not affect the order the transactions are executed within a validated ledger**. In each validated ledger version, the transaction set for that version executes in [canonical order](../consensus-protocol/consensus-structure.md#calculate-and-share-validations).
|
||||||
|
|
||||||
**Note:** When `rippled` queues a transaction, the provisional [transaction response code](../../references/protocol/transactions/transaction-results/transaction-results.md) is `terQUEUED`. This means that the transaction is likely to succeed in a future ledger version. As with all provisional response codes, the outcome of the transaction is not final until the transaction is either included in a validated ledger, or [rendered permanently invalid](finality-of-results/index.md).
|
**Note:** When `rippled` queues a transaction, the provisional [transaction response code](../../references/protocol/transactions/transaction-results/index.md) is `terQUEUED`. This means that the transaction is likely to succeed in a future ledger version. As with all provisional response codes, the outcome of the transaction is not final until the transaction is either included in a validated ledger, or [rendered permanently invalid](finality-of-results/index.md).
|
||||||
|
|
||||||
|
|
||||||
## See Also
|
## See Also
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ The `streams` parameter provides access to the following default streams of info
|
|||||||
- `peer_status` - **(Admin only)** Information about connected peer `rippled` servers, especially with regards to the consensus process.
|
- `peer_status` - **(Admin only)** Information about connected peer `rippled` servers, especially with regards to the consensus process.
|
||||||
- `transactions` - Sends a message whenever a transaction is included in a closed ledger.
|
- `transactions` - Sends a message whenever a transaction is included in a closed ledger.
|
||||||
- `transactions_proposed` - Sends a message whenever a transaction is included in a closed ledger, as well as some transactions that have not yet been included in a validated ledger and may never be. Not all proposed transactions appear before validation.
|
- `transactions_proposed` - Sends a message whenever a transaction is included in a closed ledger, as well as some transactions that have not yet been included in a validated ledger and may never be. Not all proposed transactions appear before validation.
|
||||||
**Note:** [Even some transactions that don't succeed are included](../../../protocol/transactions/transaction-results/transaction-results.md) in validated ledgers, because they take the anti-spam transaction fee.
|
**Note:** [Even some transactions that don't succeed are included](../../../protocol/transactions/transaction-results/index.md) in validated ledgers, because they take the anti-spam transaction fee.
|
||||||
- `server` - Sends a message whenever the status of the `rippled` server (for example, network connectivity) changes.
|
- `server` - Sends a message whenever the status of the `rippled` server (for example, network connectivity) changes.
|
||||||
- `validations` - Sends a message whenever the server receives a validation message, regardless of if the server trusts the validator. (An individual `rippled` declares a ledger validated when the server receives validation messages from at least a quorum of trusted validators.)
|
- `validations` - Sends a message whenever the server receives a validation message, regardless of if the server trusts the validator. (An individual `rippled` declares a ledger validated when the server receives validation messages from at least a quorum of trusted validators.)
|
||||||
|
|
||||||
@@ -361,8 +361,8 @@ Transaction stream messages have the following fields:
|
|||||||
| `Field` | Type | Description |
|
| `Field` | Type | Description |
|
||||||
|:------------------------|:--------------------------|:-----------------------|
|
|:------------------------|:--------------------------|:-----------------------|
|
||||||
| `type` | String | `transaction` indicates this is the notification of a transaction, which could come from several possible streams. |
|
| `type` | String | `transaction` indicates this is the notification of a transaction, which could come from several possible streams. |
|
||||||
| `engine_result` | String | String [Transaction result code](../../../protocol/transactions/transaction-results/transaction-results.md) |
|
| `engine_result` | String | String [Transaction result code](../../../protocol/transactions/transaction-results/index.md) |
|
||||||
| `engine_result_code` | Number | Numeric [transaction response code](../../../protocol/transactions/transaction-results/transaction-results.md), if applicable. |
|
| `engine_result_code` | Number | Numeric [transaction response code](../../../protocol/transactions/transaction-results/index.md), if applicable. |
|
||||||
| `engine_result_message` | String | Human-readable explanation for the transaction response |
|
| `engine_result_message` | String | Human-readable explanation for the transaction response |
|
||||||
| `ledger_current_index` | Number - [Ledger Index][] | _(Unvalidated transactions only)_ The ledger index of the current in-progress [ledger version](../../../../concepts/ledgers/index.md) for which this transaction is currently proposed. |
|
| `ledger_current_index` | Number - [Ledger Index][] | _(Unvalidated transactions only)_ The ledger index of the current in-progress [ledger version](../../../../concepts/ledgers/index.md) for which this transaction is currently proposed. |
|
||||||
| `ledger_hash` | String - [Hash][] | _(Validated transactions only)_ The identifying hash of the ledger version that includes this transaction |
|
| `ledger_hash` | String - [Hash][] | _(Validated transactions only)_ The identifying hash of the ledger version that includes this transaction |
|
||||||
|
|||||||
@@ -293,8 +293,8 @@ The response follows the [standard format][], with a successful result containin
|
|||||||
|
|
||||||
| `Field` | Type | Description |
|
| `Field` | Type | Description |
|
||||||
|:------------------------|:--------|:-----------------------------------------|
|
|:------------------------|:--------|:-----------------------------------------|
|
||||||
| `engine_result` | String | Text [result code](../../../protocol/transactions/transaction-results/transaction-results.md) indicating the preliminary result of the transaction, for example `tesSUCCESS` |
|
| `engine_result` | String | Text [result code](../../../protocol/transactions/transaction-results/index.md) indicating the preliminary result of the transaction, for example `tesSUCCESS` |
|
||||||
| `engine_result_code` | Integer | Numeric version of the [result code](../../../protocol/transactions/transaction-results/transaction-results.md). **Not recommended.** |
|
| `engine_result_code` | Integer | Numeric version of the [result code](../../../protocol/transactions/transaction-results/index.md). **Not recommended.** |
|
||||||
| `engine_result_message` | String | Human-readable explanation of the transaction's preliminary result |
|
| `engine_result_message` | String | Human-readable explanation of the transaction's preliminary result |
|
||||||
| `tx_blob` | String | The complete transaction in hex string format |
|
| `tx_blob` | String | The complete transaction in hex string format |
|
||||||
| `tx_json` | Object | The complete transaction in JSON format |
|
| `tx_json` | Object | The complete transaction in JSON format |
|
||||||
@@ -308,7 +308,7 @@ The response follows the [standard format][], with a successful result containin
|
|||||||
| `open_ledger_cost` | String | _(Omitted in sign-and-submit mode)_ The current [open ledger cost](../../../../concepts/transactions/transaction-cost.md#open-ledger-cost) before processing this transaction. Transactions with a lower cost are likely to be [queued](../../../../concepts/transactions/transaction-queue.md). |
|
| `open_ledger_cost` | String | _(Omitted in sign-and-submit mode)_ The current [open ledger cost](../../../../concepts/transactions/transaction-cost.md#open-ledger-cost) before processing this transaction. Transactions with a lower cost are likely to be [queued](../../../../concepts/transactions/transaction-queue.md). |
|
||||||
| `validated_ledger_index` | Integer | _(Omitted in sign-and-submit mode)_ The [ledger index][] of the newest validated ledger at the time of submission. This provides a lower bound on the ledger versions that the transaction can appear in as a result of this request. (The transaction could only have been validated in this ledger version or earlier if it had already been submitted before.) |
|
| `validated_ledger_index` | Integer | _(Omitted in sign-and-submit mode)_ The [ledger index][] of the newest validated ledger at the time of submission. This provides a lower bound on the ledger versions that the transaction can appear in as a result of this request. (The transaction could only have been validated in this ledger version or earlier if it had already been submitted before.) |
|
||||||
|
|
||||||
**Warning:** Even if the WebSocket response has `"status":"success"`, indicating that the command was successfully received, that does _not_ indicate that the transaction executed successfully. Many situations can prevent a transaction from processing successfully, such as a lack of trust lines connecting the two accounts in a payment, or changes in the state of the ledger since the time the transaction was constructed. Even if nothing is wrong, it may take several seconds to close and validate the ledger version that includes the transaction. See the [full list of transaction responses](../../../protocol/transactions/transaction-results/transaction-results.md) for details, and do not consider the transaction's results final until they appear in a validated ledger version.
|
**Warning:** Even if the WebSocket response has `"status":"success"`, indicating that the command was successfully received, that does _not_ indicate that the transaction executed successfully. Many situations can prevent a transaction from processing successfully, such as a lack of trust lines connecting the two accounts in a payment, or changes in the state of the ledger since the time the transaction was constructed. Even if nothing is wrong, it may take several seconds to close and validate the ledger version that includes the transaction. See the [full list of transaction responses](../../../protocol/transactions/transaction-results/index.md) for details, and do not consider the transaction's results final until they appear in a validated ledger version.
|
||||||
|
|
||||||
**Caution:** If this command results in an error message, the message can contain the secret key from the request. (This can only happen in sign-and-submit mode.) Make sure that these errors are not visible to others.
|
**Caution:** If this command results in an error message, the message can contain the secret key from the request. (This can only happen in sign-and-submit mode.) Make sure that these errors are not visible to others.
|
||||||
|
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ The following table defines the top-level fields from the definitions file:
|
|||||||
| `TYPES` | Map of data types to their ["type code"](#type-codes) for constructing field IDs and sorting fields in canonical order. Codes below 1 should not appear in actual data; codes above 10000 represent special "high-level" object types such as "Transaction" that cannot be serialized inside other objects. See the [Type List](#type-list) for details of how to serialize each type. |
|
| `TYPES` | Map of data types to their ["type code"](#type-codes) for constructing field IDs and sorting fields in canonical order. Codes below 1 should not appear in actual data; codes above 10000 represent special "high-level" object types such as "Transaction" that cannot be serialized inside other objects. See the [Type List](#type-list) for details of how to serialize each type. |
|
||||||
| `LEDGER_ENTRY_TYPES` | Map of [ledger objects](ledger-data/ledger-entry-types/index.md) to their data type. These appear in ledger state data, and in the "affected nodes" section of processed transactions' [metadata](transactions/metadata.md). |
|
| `LEDGER_ENTRY_TYPES` | Map of [ledger objects](ledger-data/ledger-entry-types/index.md) to their data type. These appear in ledger state data, and in the "affected nodes" section of processed transactions' [metadata](transactions/metadata.md). |
|
||||||
| `FIELDS` | A sorted array of tuples representing all fields that may appear in transactions, ledger objects, or other data. The first member of each tuple is the string name of the field and the second member is an object with that field's properties. (See the "Field properties" table below for definitions of those fields.) |
|
| `FIELDS` | A sorted array of tuples representing all fields that may appear in transactions, ledger objects, or other data. The first member of each tuple is the string name of the field and the second member is an object with that field's properties. (See the "Field properties" table below for definitions of those fields.) |
|
||||||
| `TRANSACTION_RESULTS` | Map of [transaction result codes](transactions/transaction-results/transaction-results.md) to their numeric values. Result types not included in ledgers have negative values; `tesSUCCESS` has numeric value 0; [`tec`-class codes](transactions/transaction-results/tec-codes.md) represent failures that are included in ledgers. |
|
| `TRANSACTION_RESULTS` | Map of [transaction result codes](transactions/transaction-results/index.md) to their numeric values. Result types not included in ledgers have negative values; `tesSUCCESS` has numeric value 0; [`tec`-class codes](transactions/transaction-results/tec-codes.md) represent failures that are included in ledgers. |
|
||||||
| `TRANSACTION_TYPES` | Map of all [transaction types](transactions/types/index.md) to their numeric values. |
|
| `TRANSACTION_TYPES` | Map of all [transaction types](transactions/types/index.md) to their numeric values. |
|
||||||
|
|
||||||
For purposes of serializing transactions for signing and submitting, the `FIELDS`, `TYPES`, and `TRANSACTION_TYPES` fields are necessary.
|
For purposes of serializing transactions for signing and submitting, the `FIELDS`, `TYPES`, and `TRANSACTION_TYPES` fields are necessary.
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ The transaction cost always applies when a transaction is included in a validate
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:-----------|:------------|
|
|:-----------|:------------|
|
||||||
|
|||||||
@@ -126,7 +126,7 @@ As a special case, during the final (20th) interval of the auction slot, the ref
|
|||||||
|
|
||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:------------------------|:---------------------------------------------|
|
|:------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ Since each AMM instance involves an AccountRoot ledger entry, an AMM ledger entr
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ Normally, an [AMMWithdraw transaction][] automatically deletes an AMM and all as
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, AMMCreate transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, AMMCreate transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ You must specify **exactly one** of these flags, plus any [global flags](../comm
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:------------------------|:---------------------------------------------|
|
|:------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ Vote on the trading fee for an [Automated Market Maker](../../../../concepts/tok
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:------------------------|:---------------------------------------------|
|
|:------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ You must specify **exactly one** of these flags, plus any [global flags](../comm
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:------------------------|:---------------------------------------------|
|
|:------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ Clawback is disabled by default. To use clawback, you must send an [AccountSet t
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:-----------|:------------|
|
|:-----------|:------------|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ Delete the [DID ledger entry](../../ledger-data/ledger-entry-types/did.md) assoc
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ You must include either `Data`, `DIDDocument`, or `URI` when you submit the `DID
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:--------------------|:---------------------------------------------|
|
|:--------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ In brokered mode, the offers referenced by `NFTokenBuyOffer` and `NFTokenSellOff
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:-----------------------------------|:----------------------------------------|
|
|:-----------------------------------|:----------------------------------------|
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ _(Added by the [NonFungibleTokensV1_1 amendment][].)_
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:-------------------|:--------------------------------------------------------|
|
|:-------------------|:--------------------------------------------------------|
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ The transaction fails with an error if one of the IDs points to an object that d
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:-------------------|:--------------------------------------------------------|
|
|:-------------------|:--------------------------------------------------------|
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ Transactions of the NFTokenCreateOffer type support additional values in the [`F
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:---------------------------------|:------------------------------------------|
|
|:---------------------------------|:------------------------------------------|
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ This transaction assumes that the issuer, `rNCFjv8Ek5oDrNiMJ3pw6eLLFtMjZLJnf2`,
|
|||||||
|
|
||||||
## Error Cases
|
## Error Cases
|
||||||
|
|
||||||
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/transaction-results.md):
|
Besides errors that can occur for all transactions, {% $frontmatter.seo.title %} transactions can result in the following [transaction result codes](../transaction-results/index.md):
|
||||||
|
|
||||||
| Error Code | Description |
|
| Error Code | Description |
|
||||||
|:------------------------------|:---------------------------------------------|
|
|:------------------------------|:---------------------------------------------|
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ Transactions of the OfferCreate type support additional values in the [`Flags` f
|
|||||||
| Flag Name | Hex Value | Decimal Value | Description |
|
| Flag Name | Hex Value | Decimal Value | Description |
|
||||||
|:----------------------|:-------------|:--------------|:----------------------|
|
|:----------------------|:-------------|:--------------|:----------------------|
|
||||||
| `tfPassive` | `0x00010000` | 65536 | If enabled, the Offer does not consume Offers that exactly match it, and instead becomes an Offer object in the ledger. It still consumes Offers that cross it. |
|
| `tfPassive` | `0x00010000` | 65536 | If enabled, the Offer does not consume Offers that exactly match it, and instead becomes an Offer object in the ledger. It still consumes Offers that cross it. |
|
||||||
| `tfImmediateOrCancel` | `0x00020000` | 131072 | Treat the Offer as an [Immediate or Cancel order](http://en.wikipedia.org/wiki/Immediate_or_cancel). The Offer never creates an [Offer object][] in the ledger: it only trades as much as it can by consuming existing Offers at the time the transaction is processed. If no Offers match, it executes "successfully" without trading anything. In this case, the transaction still uses the [result code](../transaction-results/transaction-results.md) `tesSUCCESS`. |
|
| `tfImmediateOrCancel` | `0x00020000` | 131072 | Treat the Offer as an [Immediate or Cancel order](http://en.wikipedia.org/wiki/Immediate_or_cancel). The Offer never creates an [Offer object][] in the ledger: it only trades as much as it can by consuming existing Offers at the time the transaction is processed. If no Offers match, it executes "successfully" without trading anything. In this case, the transaction still uses the [result code](../transaction-results/index.md) `tesSUCCESS`. |
|
||||||
| `tfFillOrKill` | `0x00040000` | 262144 | Treat the offer as a [Fill or Kill order](http://en.wikipedia.org/wiki/Fill_or_kill). The Offer never creates an [Offer object][] in the ledger, and is canceled if it cannot be fully filled at the time of execution. By default, this means that the owner must receive the full `TakerPays` amount; if the `tfSell` flag is enabled, the owner must be able to spend the entire `TakerGets` amount instead. |
|
| `tfFillOrKill` | `0x00040000` | 262144 | Treat the offer as a [Fill or Kill order](http://en.wikipedia.org/wiki/Fill_or_kill). The Offer never creates an [Offer object][] in the ledger, and is canceled if it cannot be fully filled at the time of execution. By default, this means that the owner must receive the full `TakerPays` amount; if the `tfSell` flag is enabled, the owner must be able to spend the entire `TakerGets` amount instead. |
|
||||||
| `tfSell` | `0x00080000` | 524288 | Exchange the entire `TakerGets` amount, even if it means obtaining more than the `TakerPays` amount in exchange. |
|
| `tfSell` | `0x00080000` | 524288 | Exchange the entire `TakerGets` amount, even if it means obtaining more than the `TakerPays` amount in exchange. |
|
||||||
|
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ The XRP Ledger defines the "quality" of a currency exchange as the ratio of the
|
|||||||
|
|
||||||
The [`tfLimitQuality` flag](#payment-flags) allows you to set a minimum quality of conversions that you are willing to take. This limit quality is defined as the destination `Amount` divided by the `SendMax` amount (the numeric amounts only, regardless of currency). When set, the payment processing engine avoids using any paths whose quality (conversion rate) is worse (numerically lower) than the limit quality.
|
The [`tfLimitQuality` flag](#payment-flags) allows you to set a minimum quality of conversions that you are willing to take. This limit quality is defined as the destination `Amount` divided by the `SendMax` amount (the numeric amounts only, regardless of currency). When set, the payment processing engine avoids using any paths whose quality (conversion rate) is worse (numerically lower) than the limit quality.
|
||||||
|
|
||||||
By itself, the `tfLimitQuality` flag reduces the number of situations in which a transaction can succeed. Specifically, it rejects payments where some part of the payment uses an unfavorable conversion, even if the overall *average* quality of conversions in the payment is equal or better than the limit quality. If a payment is rejected in this way, the [transaction result](../transaction-results/transaction-results.md) is `tecPATH_DRY`.
|
By itself, the `tfLimitQuality` flag reduces the number of situations in which a transaction can succeed. Specifically, it rejects payments where some part of the payment uses an unfavorable conversion, even if the overall *average* quality of conversions in the payment is equal or better than the limit quality. If a payment is rejected in this way, the [transaction result](../transaction-results/index.md) is `tecPATH_DRY`.
|
||||||
|
|
||||||
Consider the following example. If I am trying to send you 100 Chinese Yuan (`Amount` = 100 CNY) for 20 United States dollars (`SendMax` = 20 USD) or less, then the limit quality is `5`. Imagine one trader is offering ¥95 for $15 (a ratio of about `6.3` CNY per USD), but the next best offer in the market is ¥5 for $2 (a ratio of `2.5` CNY per USD). If I were to take both offers to send you 100 CNY, then it would cost me 17 USD, for an average quality of about `5.9`.
|
Consider the following example. If I am trying to send you 100 Chinese Yuan (`Amount` = 100 CNY) for 20 United States dollars (`SendMax` = 20 USD) or less, then the limit quality is `5`. Imagine one trader is offering ¥95 for $15 (a ratio of about `6.3` CNY per USD), but the next best offer in the market is ¥5 for $2 (a ratio of `2.5` CNY per USD). If I were to take both offers to send you 100 CNY, then it would cost me 17 USD, for an average quality of about `5.9`.
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user