mirror of
https://github.com/XRPLF/xrpl-dev-portal.git
synced 2025-11-20 11:45:50 +00:00
AccountDelete tx ref (1st pass)
This commit is contained in:
@@ -58,13 +58,24 @@ Some addresses have special meaning, or historical uses, in the XRP Ledger. In m
|
||||
| rrrrrrrrrrrrrrrrrrrn5RM1rHd | NaN Address | Previous versions of [ripple-lib](https://github.com/ripple/ripple-lib) generated this address when encoding the value [NaN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NaN) using the XRP Ledger's [base58][] string encoding format. | Yes |
|
||||
|
||||
|
||||
## Permanence of Accounts
|
||||
## Deletion of Accounts
|
||||
|
||||
Once created, an account exists in the XRP Ledger's data tree forever. This is because the current sequence number for a transaction must be tracked forever, so that old transactions cannot be processed a second time.
|
||||
The [DeletableAccounts amendment](known-amendments.html#deletableaccounts) :not_enabled: makes it possible to delete accounts. If the DeletableAccounts amendment is not enabled, every funded account must remain in the XRP Ledger's data tree forever.
|
||||
|
||||
To be deleted, an account must meet the following requirements:
|
||||
|
||||
- The account's `Sequence` number plus 256 must be less than the current [Ledger Index][].
|
||||
- The account must not be linked to any of the following types of [ledger objects](ledger-object-types.html) (as a sender or receiver):
|
||||
- `Escrow`
|
||||
- `PayChannel`
|
||||
- `RippleState`
|
||||
- `Check` :not_enabled:
|
||||
- The account must own less than 1000 objects in the ledger.
|
||||
- The [AccountDelete transaction][] must pay a special [transaction cost][] equal to at least the [owner reserve](reserves.html) for one item (currently 5 XRP).
|
||||
|
||||
Unlike Bitcoin and many other crypto-currencies, each new version of the XRP Ledger's public ledger chain contains the full state of the ledger, which increases in size with each new account. It is thus best to avoid creating new accounts unless entirely necessary. Institutions who send and receive value on behalf of many users can use [**Source Tags** and **Destination Tags**](become-an-xrp-ledger-gateway.html#source-and-destination-tags) to distinguish payments from and to their customers while only using one (or a handful) of accounts in the XRP Ledger.
|
||||
|
||||
Unlike Bitcoin and many other crypto-currencies, each new version of the XRP Ledger's public ledger chain contains the full state of the ledger, which increases in size with each new account. For that reason, Ripple discourages creating new accounts unless entirely necessary. Institutions who send and receive value on behalf of many users can use [**Source Tags** and **Destination Tags**](become-an-xrp-ledger-gateway.html#source-and-destination-tags) to distinguish payments from and to their customers while only using one (or a handful) of accounts in the XRP Ledger.
|
||||
|
||||
You cannot spend or transfer the [reserve requirement](reserves.html) of 20 XRP, so this amount is locked up with each new account. (This XRP _can_ be destroyed to pay for [transaction costs](transaction-cost.html) but cannot be sent to other accounts.) If the reserve requirement were to decrease, some of that XRP could become available again. For more information on how the reserve requirement could change, see [Fee Voting](fee-voting.html).
|
||||
|
||||
|
||||
## Transaction History
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
# AccountDelete
|
||||
|
||||
[[Source]](https://github.com/ripple/rippled/blob/develop/src/ripple/app/tx/impl/DeleteAccount.cpp "Source")
|
||||
|
||||
_Requires the [DeletableAccounts amendment](known-amendments.html#deletableaccounts) :not_enabled:_
|
||||
|
||||
An AccountDelete transaction deletes an [account from the XRP Ledger](accountroot.html) if possible, sending its XRP to a specified destination account. See [Deletion of Accounts](accounts.html#deletion-of-accounts) for the requirements to delete an account.
|
||||
|
||||
## Example {{currentpage.name}} JSON
|
||||
|
||||
```json
|
||||
{
|
||||
"TransactionType": "AccountDelete",
|
||||
"Account" : "rf1BiGeXwwQoi8Z2ueFYTEXSwuJYfV2Jpn",
|
||||
... TODO
|
||||
}
|
||||
```
|
||||
|
||||
{% include '_snippets/tx-fields-intro.md' %}
|
||||
<!--{# fix md highlighting_ #}-->
|
||||
|
||||
| Field | JSON Type | [Internal Type][] | Description |
|
||||
|:-----------------|:-----------------|:------------------|:-------------------|
|
||||
| `Destination` | String - [Address][] | Account | The address of an account to receive any leftover XRP after deleting the sending account. Must be a funded account in the ledger, and must not be the sending account. |
|
||||
| `DestinationTag` | Number | UInt32 | _(Optional)_ Arbitrary [destination tag](source-and-destination-tags.html) that identifies the a hosted recipient or other information to the recipient of the deleted account's leftover XRP. |
|
||||
|
||||
<!--{# common link defs #}-->
|
||||
{% include '_snippets/rippled-api-links.md' %}
|
||||
{% include '_snippets/tx-type-links.md' %}
|
||||
{% include '_snippets/rippled_versions.md' %}
|
||||
@@ -4798,6 +4798,19 @@ pages:
|
||||
targets:
|
||||
- ja
|
||||
|
||||
- md: references/rippled-api/transaction-formats/transaction-types/accountdelete.md
|
||||
html: accountdelete.html
|
||||
funnel: Docs
|
||||
doc_type: References
|
||||
supercategory: rippled API
|
||||
category: Transaction Formats
|
||||
subcategory: Transaction Types
|
||||
blurb: Delete an account.
|
||||
status: not_enabled
|
||||
targets:
|
||||
- en
|
||||
- ja
|
||||
|
||||
- md: references/rippled-api/transaction-formats/transaction-types/checkcancel.md
|
||||
html: checkcancel.html
|
||||
funnel: Docs
|
||||
|
||||
Reference in New Issue
Block a user