Guides

Stellar op_no_destination: аккаунта получателя не существует

21 октября 2026 г.
5 мин чтения

Платёж Stellar отклонён с op_no_destination, op_no_trust или op_low_reserve? Что значит каждый код, зачем новому аккаунту 1 XLM и как платить правильно.

Схема платежа на новый адрес Stellar: Payment падает с op_no_destination, Create Account с 1 XLM срабатывает, затем линия доверия позволяет получать токены.
Почему Stellar отклоняет платежи на несозданные адреса и в каком порядке действовать. Открыть схему крупнее

op_no_destination значит, что вы пытались заплатить на адрес Stellar, который в сети никогда не создавался. В Stellar адрес появляется только после того, как кто-то пополнит его операцией Create Account с суммой не ниже минимального баланса — сейчас это 1 XLM. Обычная операция Payment создать аккаунт не может, поэтому сеть отклоняет платёж. Средства остаются у вас; комиссия в доли цента всё равно списывается, потому что транзакция попала в леджер. Решение — отправить XLM через Create Account (большинство кошельков делают это сами при отправке XLM) или попросить получателя сначала активировать адрес.

Почему аккаунты Stellar нужно создавать

Как и XRP Ledger, Stellar хранит каждый аккаунт как запись в леджере и требует, чтобы запись была обеспечена резервом в нативной монете. Правило простое: минимальный баланс = (2 + число подзаписей) × базовый резерв, а базовый резерв равен 0,5 XLM. Новому аккаунту без вложений нужен 1 XLM. Каждая линия доверия, открытый ордер, дополнительный подписант или запись данных добавляют подзапись и ещё 0,5 XLM. Калькулятор минимального баланса Stellar посчитает это для вашего аккаунта.

Ключ, созданный в кошельке, — это просто пара ключей; пока через Create Account не придёт 1 XLM, обозреватели показывают адрес как ненайденный. Поэтому некоторые кошельки при первом запуске пишут «Активируйте аккаунт» или «Пополните на 1 XLM».

Порядок, который работает

Для самого XLM путь короткий. Большинство кошельков — Lobstr, Freighter, Solar и другие — видят, что получателя нет, и сами переключают платёж на Create Account, если сумма не меньше 1 XLM. Если вы пишете скрипт на SDK, проверьте, загружается ли аккаунт получателя; если нет, используйте createAccount со стартовым балансом от 1 XLM вместо payment.

Для токена вроде USDC в Stellar условий два: аккаунт получателя должен существовать и иметь линию доверия к эмитенту актива. Без линии доверия платёж падает с op_no_trust. Получатель добавляет линию доверия в кошельке (минимальный баланс растёт на 0,5 XLM), затем вы отправляете токен.

Другие коды того же семейства

Коды результата платежей из Horizon (уровень операции, если не указано)
КодЗначениеЧто делать
op_no_destinationАккаунта получателя не существуетCreate Account с ≥ 1 XLM
op_low_reserveCreate Account со стартовым балансом ниже минимумаОтправить не меньше 1 XLM
op_no_trustУ получателя нет линии доверия к активуПолучатель добавляет линию
op_not_authorizedЭмитент требует авторизации линииПолучатель проходит авторизацию эмитента
op_underfundedУ отправителя нет суммы сверх своего минимумаОтправить меньше или пополнить
tx_insufficient_feeСтавка комиссии ниже текущей (уровень транзакции)Отправить с большей комиссией

Комиссии в Stellar маленькие и считаются в струпах (1 XLM = 10 000 000 stroops). Базовая комиссия — 100 струпов за операцию, 0,00001 XLM. При всплеске нагрузки ставка должна перебить другие транзакции за место в леджере; кошельки делают это автоматически.

Memo и адреса бирж

Биржи обычно принимают XLM на один общий адрес и узнают вас по memo. Забудете memo — платёж придёт, но не будет зачислен. В Stellar для этого есть соглашение SEP-29: аккаунт может опубликовать флаг config.memo_required, и совместимые кошельки откажутся отправлять на него без memo. Проверяют это не все кошельки, поэтому всегда копируйте memo вместе с адресом. Проверка memo и тега показывает, каким монетам и сетям он нужен, а статья про memo — как вернуть платёж, если вы его забыли.

Как проверить неудачную транзакцию

  1. Вставьте хеш транзакции в обозреватель Stellar, например StellarExpert. Хеши Stellar — 64 шестнадцатеричных символа; определитель хеша подскажет, где искать.
  2. Прочитайте результат: у неудачной транзакции tx_failed и код операции, например op_no_destination.
  3. Откройте адрес получателя. «Account not found» подтверждает, что он не создавался.
  4. Отправьте правильно: Create Account для XLM или дождитесь линии доверия получателя для токена.

Как потом вернуть резерв

1 XLM не тратится — он лежит на аккаунте как неприкосновенный минимум. Удаление линий доверия с нулевым балансом и отмена ордеров освобождают по 0,5 XLM. Базовый минимум возвращается слиянием аккаунта с другим через Account Merge: операция переводит весь остаток получателю и удаляет аккаунт из леджера.

Одна оговорка про слияние: получатель Account Merge должен уже существовать, а если это адрес биржи, слияние зачислят, только если биржа его поддерживает и вы указали memo. Если не уверены, сначала слейте аккаунт в свой существующий.

Частые вопросы

Сколько XLM нужно новому аккаунту Stellar?

Минимум 1 XLM: два базовых резерва по 0,5 XLM. Каждая линия доверия или ордер добавляет 0,5 XLM.

Я потерял XLM после op_no_destination?

Нет. Платёж не выполнился. Списана только комиссия — 100 струпов за операцию.

Почему нельзя отправить USDC в Stellar на новый адрес?

Получатель должен существовать и добавить линию доверия к эмитенту USDC до получения.

Что такое SEP-29?

Соглашение Stellar, по которому аккаунт может пометить себя как требующий memo, и совместимые кошельки не дадут отправить без него.

Можно вернуть 1 XLM?

Да, слив аккаунт в другой через Account Merge: всё отправится получателю, а аккаунт закроется.

Калькулятор минимального баланса StellarМинимальный баланс StellarLobstr: ваш адрес XLMXRP: аккаунт не активирован

Источники

Готовы обменять крипту?

Быстрые, прозрачные свопы — регистрация не нужна.

Начать обмен
Stellar op_no_destination: аккаунта получателя не существует | KOT.CASH