| Вопрос | Основное evidence | Типичная ошибка |
|---|---|---|
| Сколько требует reserve | Текущие server_state/server_info + OwnerCount | Использовать старую константу |
| Что создаёт OwnerCount | Полный paginated account_objects | Считать каждый UI-объект одной reserve entry |
| Можно ли удалить account | Deletion blockers + Sequence/sponsorship/NFT conditions | Решать только по OwnerCount=0 |
- Вопрос
- Сколько требует reserve
- Основное evidence
- Текущие server_state/server_info + OwnerCount
- Типичная ошибка
- Использовать старую константу
- Вопрос
- Что создаёт OwnerCount
- Основное evidence
- Полный paginated account_objects
- Типичная ошибка
- Считать каждый UI-объект одной reserve entry
- Вопрос
- Можно ли удалить account
- Основное evidence
- Deletion blockers + Sequence/sponsorship/NFT conditions
- Типичная ошибка
- Решать только по OwnerCount=0
Резерв — параметр validated network, а не замороженный депозит
Обычный reserve складывается из base reserve аккаунта и incremental owner reserve, умноженного на применимый owner count. На дату проверки 23 августа 2026 года официальная страница показывает для Mainnet 1 XRP base reserve и 0,2 XRP за owner item, но эти значения могут измениться через Fee Voting, а в другой сети отличаться. Перед действием читайте validated_ledger.reserve_base_xrp и reserve_inc_xrp либо соответствующие поля server_state.
OwnerCount объясняют конкретные ledger objects
Trust lines, offers, escrows, checks, payment channels, signer lists, tickets и другие entries могут увеличивать reserve. Но ledger rules содержат исключения, sponsorship и агрегированные объекты: например, NFT reserve связан со страницами, а не линейно с каждой картинкой. Поэтому значение OwnerCount из account_info сверяют с account_objects на том же validated ledger, проходят всю marker pagination и сохраняют тип, index и связанный актив каждого entry.
Закрывать объект нужно его протокольной операцией: отменить offer, завершить или отменить escrow в допустимом state, закрыть payment channel, удалить trust line только когда условия позволяют. Перевод XRP на другой адрес не удаляет owner directory. Если объект связан с issued token, сначала проверьте issuer и состояние trust line; эмитентские freeze/clawback полномочия — отдельный слой.
AccountDelete имеет больше условий, чем OwnerCount=0
| Gate | Что проверить | Если не пройден |
|---|---|---|
| Возраст Sequence | AccountRoot.Sequence + 255 ≤ текущий validated Ledger Index | Ждать новые validated ledgers; не повторять вслепую |
| Owner directory | Нет entries, блокирующих deletion | Удалить допустимые obligations соответствующими transactions |
| Sponsorship | SponsoringOwnerCount и SponsoringAccountCount равны нулю либо обработаны правилами | Перенести/закрыть sponsorship |
| NFT history | Выпущенные NFT сожжены и выполнена anti-remint age boundary | Не отправлять AccountDelete |
| Object count | Не более 1000 связанных objects | Сократить inventory до submit |
| Destination | Финансируемый адрес, не source; tag указан, если нужен | Исправить маршрут до подписи |
- Gate
- Возраст Sequence
- Что проверить
- AccountRoot.Sequence + 255 ≤ текущий validated Ledger Index
- Если не пройден
- Ждать новые validated ledgers; не повторять вслепую
- Gate
- Owner directory
- Что проверить
- Нет entries, блокирующих deletion
- Если не пройден
- Удалить допустимые obligations соответствующими transactions
- Gate
- Sponsorship
- Что проверить
- SponsoringOwnerCount и SponsoringAccountCount равны нулю либо обработаны правилами
- Если не пройден
- Перенести/закрыть sponsorship
- Gate
- NFT history
- Что проверить
- Выпущенные NFT сожжены и выполнена anti-remint age boundary
- Если не пройден
- Не отправлять AccountDelete
- Gate
- Object count
- Что проверить
- Не более 1000 связанных objects
- Если не пройден
- Сократить inventory до submit
- Gate
- Destination
- Что проверить
- Финансируемый адрес, не source; tag указан, если нужен
- Если не пройден
- Исправить маршрут до подписи
AccountDelete отправляет допустимый остаток на Destination, но не возвращает весь reserve: транзакция требует специальный повышенный cost не ниже текущего owner reserve за один item. Если транзакция попала в validated ledger и завершилась tec-кодом, cost всё равно может быть списан. Проверка должна происходить до подписи; fail_hard уменьшает риск ретрансляции определённых отказов, но не делает неготовый account удаляемым.
Decision tool: освободить reserve, оставить account или удалить
Безопасная последовательность
- 1Зафиксируйте account
Проверьте classic address, Mainnet/test network и контроль ключа; не вводите seed в explorer.
- 2Снимите snapshot
На одном validated ledger получите account_info, dynamic reserve fields и все страницы account_objects.
- 3Разберите obligations
Отметьте removable entries, внешние зависимости, sponsorship и blockers, которые пользователь сам удалить не может.
- 4Повторите после cleanup
Не выводите формулу по старому OwnerCount: перечитайте account_info/account_objects и текущий reserve.
- 5Соберите AccountDelete
Проверьте Destination/tag, Sequence-age, fee и ожидаемый остаток; подпишите только после независимой симуляции/preflight.
- 6Подтвердите результат
Сохраните transaction hash, validated result и новый balance Destination. Submitted не равно deleted.
DestinationTag может быть обязателен у биржевого или общего custody address. Ошибка здесь способна оставить перевод без автоматического зачисления даже при успешном AccountDelete, поэтому заранее сверяйте memo или destination tag по официальному каналу получателя.
После ошибки не создавайте второй account и не раскрывайте seed
Stop-сигналы
- кошелёк показывает фиксированный reserve без network и validated ledger;
- OwnerCount=0 называют гарантией AccountDelete;
- account_objects получен без marker pagination или только из open ledger;
- предлагают отправить остаток на незнакомый Destination для разблокировки;
- не объяснён специальный cost неудачной включённой AccountDelete;
- помощник просит seed, secret numbers или подпись непрозрачной transaction blob.
Если AccountDelete не прошёл, сначала прочитайте точный result code и metadata: tecHAS_OBLIGATIONS, tecTOO_SOON, tefTOO_BIG и ошибки Destination требуют разных действий. Не отправляйте повтор до нового validated snapshot. Подтверждение перевода остатка на Destination и факт удаления исходного AccountRoot тоже проверяют раздельно.
Удалённый XRPL account позже можно создать снова обычным funding payment; старый secret при этом не становится безопаснее. Если цель — уйти от скомпрометированного ключа, заранее создайте контролируемый Destination и проверьте модель публичного и приватного ключа, а не полагайтесь на само удаление как ротацию секрета.
Источники
Мы используем прямые ссылки и фиксируем дату проверки. Полный текст чужих материалов не перепечатывается.
- XRPL Docs — Reserves XRP Ledger · Проверено 23 августа 2026 г. в 21:15 GMT+5
- XRPL Docs — Deleting Accounts XRP Ledger · Проверено 23 августа 2026 г. в 21:15 GMT+5
- XRPL Protocol — AccountDelete XRP Ledger · Проверено 23 августа 2026 г. в 21:15 GMT+5
- XRPL API — account_objects XRP Ledger · Проверено 23 августа 2026 г. в 21:15 GMT+5
