К содержимому

Основы криптоплатежей

Недоплата, переплата и поздний платёж: что происходит и что делать

Что делает CryptoLike, если клиент заплатил меньше, больше, позже срока или не успел оплатить: статусы, вебхуки и следующий шаг для каждого случая.

Главное

  • Недоплата: платёж остаётся открытым для доплаты на тот же адрес до истечения срока; remaining_amount показывает, сколько не хватает.
  • Переплата: платёж получает статус paid, вся сумма зачисляется вам, а overpaid_amount показывает излишек.
  • Поздний платёж: средства после закрытия платежа всё равно зачисляются, с late_payment: true и событием invoice.late_payment; статус не меняется.
  • Истёкший платёж: срок прошёл, подтверждённых переводов нет. Создайте новый платёж.

Криптоперевод отправляет плательщик, а не списывает продавец, поэтому пришедшая сумма не всегда совпадает с суммой счёта и не всегда приходит вовремя. CryptoLike обрабатывает такие случаи в рамках тех же шести статусов платежа и сообщает о каждом подписанным вебхуком. Разбираем недоплату, переплату, поздний и истёкший платёж: что видит плательщик, что получает ваш сервер и что делать дальше.

Недоплата, переплата, опоздание и истечение срока в одной таблице

CryptoLike обрабатывает каждое отклонение по-своему: недоплата оставляет платёж открытым, переплата всё равно его завершает, поздний перевод зачисляется без смены статуса, а истечение срока закрывает платёж. Одни и те же строки статусов видны в API, на странице оплаты и в вебхуках, поэтому логика заказа может ветвиться по одному полю.

Случай Статус Какое поле смотреть Вебхук Плательщик видит Ваш следующий шаг
Меньше суммы, срок не истёк underpaid remaining_amount invoice.underpaid «Получена часть суммы … Отправьте оставшиеся … на тот же адрес.» Дождаться доплаты
Меньше суммы, срок истёк underpaid (конечный) paid_amount, remaining_amount invoice.expired «Срок платежа истёк, получена часть суммы … Свяжитесь с продавцом, чтобы решить вопрос.» Отгрузить за полученную сумму, запросить остаток или вернуть деньги
Больше суммы paid overpaid_amount invoice.paid «Платёж подтверждён. Излишек зачислен продавцу.» Отгрузить; рассчитаться с клиентом за излишек
Средства после закрытия платежа не меняется late_payment: true invoice.late_payment — Выполнить заказ или вернуть деньги
К сроку ничего не подтверждено expired expired_at invoice.expired «Срок платежа истёк. Создайте новый платёж.» Создать новый платёж, если клиент всё ещё хочет оплатить

Источник: модель статусов CryptoLike и контракт вебхуков, по состоянию на 2026-09-24.

Что происходит при недоплате?

Если подтверждённая сумма меньше суммы к оплате, платёж CryptoLike переходит в underpaid, а вам приходит invoice.underpaid. Платёж остаётся открытым: плательщик может отправить недостающую часть на тот же адрес до ttl_expires_at, и доплата, которая покрывает остаток, переводит платёж в paid. Поле remaining_amount всегда показывает, сколько не хватает.

Страница оплаты показывает плательщику точный остаток: «Получена часть суммы: 40 из 50 USDT. Отправьте оставшиеся 10 USDT на тот же адрес.» Ссылка «открыть в кошельке» у недоплаченного платежа уже содержит остаток, а не исходную сумму; в Bitcoin и Litecoin — и QR-код. Ещё до подтверждений страница показывает обнаруженную сумму рядом с суммой к оплате, так что недостача видна сразу, как только перевод появился в сети.

Небольшая недостача не всегда означает недоплату: если она в пределах допуска на недоплату, заданного для вашего аккаунта, — по умолчанию 0,5 % суммы, — платёж считается paid. Короткое определение — в глоссарии, в статье недоплаченный платёж.

Что будет, если срок истёк, а оплачена только часть?

Когда срок истекает, недоплаченный платёж CryptoLike становится конечным: статус остаётся underpaid, заполняется expired_at, а вам приходит invoice.expired со статусом underpaid в данных. Полученная часть уже зачислена на ваш баланс. Плательщик видит, что срок истёк и получена только часть суммы, и просьбу связаться с продавцом.

Решение за вами, вариантов три:

  • Отгрузить за полученную сумму, если разница для вас приемлема.
  • Запросить остаток отдельным платежом на недостающую сумму — например, счётом в криптовалюте из кабинета. Плагин магазина не откроет второй платёж для заказа, по которому уже пришли средства: такие заказы уходят в статус проверки, и решение принимает человек.
  • Вернуть деньги — выплатой с вашего баланса на адрес, который укажет клиент.

Что происходит при переплате?

Отдельного статуса для переплаты в CryptoLike нет. Платёж становится paid, вся полученная сумма зачисляется на ваш баланс, а invoice.paid несёт overpaid_amount больше нуля. Если следующий перевод на тот же адрес увеличит излишек, invoice.paid придёт снова с новым overpaid_amount. Плательщик видит «Платёж подтверждён. Излишек зачислен продавцу.»

Что делать: отгрузите заказ как обычно, затем рассчитайтесь с клиентом за излишек — верните его выплатой или, если вы договорились, учтите в следующем заказе. Плагины магазинов добавляют к заказу заметку о переплате. Короткое определение — в глоссарии, в статье платёж с переплатой.

Что происходит, если платёж пришёл поздно?

Поздний платёж — это перевод, подтверждённый после того, как платёж CryptoLike закрылся: истёк, был отменён или окончательно недоплачен. Средства всё равно зачисляются на ваш баланс, у платежа появляется late_payment: true, а вам приходит invoice.late_payment. Статус не меняется: истёкший платёж остаётся expired, поэтому автоматически ничего не отгружается.

Частая причина поздних платежей — перевод, отправленный под самый конец срока: платёж закрывается как expired, пока перевод ещё набирает подтверждения, и средства приходят поздним платежом, когда порог достигнут. Почему это ожидание в разных сетях разное, объясняет статья о подтверждениях криптоплатежа.

Что делать: уточните, нужен ли клиенту заказ. Если да — выполните его, если нет — верните деньги выплатой. Плагины магазинов никогда не помечают такие заказы оплаченными сами — они переводят их в статус проверки, чтобы решили вы.

Что значит «срок платежа истёк» и как это исправить?

Истёкший платёж CryptoLike — это платёж, срок которого прошёл, а подтверждённых переводов не было. Статус expired закрывает платёж: оплатить его со страницы оплаты уже нельзя, а вам приходит invoice.expired. Плательщик видит «Срок платежа истёк. Создайте новый платёж.» Исправляется это новым платежом — из оформления заказа в магазине, новым счётом или новой ссылкой на оплату.

Срок задаётся для каждого платежа полем ttl_seconds, от 60 секунд до 30 дней, или берётся из настроек аккаунта. Сразу после срока платёж может до 30 с показывать seconds_left = 0, прежде чем закроется; страница показывает, что срок истекает. Если деньги всё же придут на истёкший платёж, они не потеряются: их зачислят как поздний платёж. Короткое определение — в глоссарии, в статье истёкший платёж.

Как вернуть деньги клиенту?

Возврат в CryptoLike — это выплата: вы отправляете сумму с доступного баланса на адрес, который укажет клиент, в кабинете или через POST /v1/withdrawals. Сначала запросите расчёт — он покажет комиссию платформы, зарезервированную комиссию сети и итоговое списание до подтверждения. Актуальные ставки — на странице тарифов.

Перед отправкой:

  1. Сверьте с клиентом адрес и сеть. Возврат уходит в сети того актива, который вы отправляете; перевод на неверный адрес отменить нельзя.
  2. Добавьте адрес в белый список, если для аккаунта включён белый список адресов выплат; иначе выплата будет отклонена. Новый адрес становится доступным через 24 часа после добавления, поэтому добавляйте его заранее.
  3. Передайте свой payout_id, например номер заказа, чтобы повтор запроса никогда не заплатил дважды.

Для выплат нужен верифицированный аккаунт. Через API нужен ещё ключ с правом withdraw, в кабинете — свежий код 2FA.

Как сократить недоплаты и поздние платежи?

Большинство недоплат в CryptoLike возникает, когда плательщик отправляет не ту сумму, что показана на странице, а большинство поздних платежей — когда срок слишком короткий для сети. Несколько настроек и простых привычек сокращают и то и другое без каких-либо изменений в вашей интеграции.

  • Показывайте точную сумму и сеть. Страница оплаты это делает; если вы выводите сумму где-то ещё, берите payer_amount — он уже включает комиссию платформы, если её несёт плательщик.
  • Напоминайте о комиссии биржи за вывод. При оплате с биржевого аккаунта сумма, которая придёт, должна совпадать с суммой на странице уже после комиссии самой биржи.
  • Дайте сети достаточно времени. Выбирайте ttl_seconds с учётом времени подтверждения актива; активы и их пороги — в каталоге монет.
  • Подпишитесь на все события invoice.*. Участия человека требуют invoice.underpaid, invoice.late_payment и invoice.reverted; список — в документации по вебхукам. Оплаченный платёж может вернуться в underpaid, если реорганизация блокчейна откатит один из его подтверждённых переводов, — см. статью почему «обнаружен» ≠ «оплачен».

Другие ответы о статусах и выплатах — на странице вопросов и ответов.

Вопросы и ответы

Может ли клиент доплатить недоплаченный платёж?

Да, до истечения срока. Клиент отправляет недостающую сумму на тот же адрес; страница оплаты показывает остаток. Когда доплата подтверждена, платёж становится paid, а вам приходит invoice.paid.

Зачисляется ли переплата на мой баланс?

Да, зачисляется вся полученная сумма. Платёж в статусе paid, а overpaid_amount в invoice.paid и в GET /v1/invoices/{id} показывает излишек, чтобы вы могли рассчитаться с клиентом.

Что будет с деньгами, отправленными после истечения срока?

Они зачисляются на ваш баланс как поздний платёж: у платежа появляется late_payment: true, вам приходит invoice.late_payment, а статус остаётся expired. Решите с клиентом, выполнять заказ или вернуть деньги.

Может ли недоплаченный платёж стать expired?

Нет. После срока недоплаченный платёж остаётся underpaid и становится конечным; вам приходит invoice.expired со статусом underpaid. Статус expired — только для платежей, по которым ничего не подтверждено.

Как вернуть клиенту деньги в криптовалюте?

Отправьте выплату с баланса на адрес, который укажет клиент, — в кабинете или через POST /v1/withdrawals. Сначала проверьте расчёт, заранее добавьте адрес в белый список, если этого требует аккаунт (новый адрес доступен через 24 часа), и передайте payout_id, чтобы повтор не заплатил дважды.

Термины на странице

Читать дальше

Начните с тестового платежа

Создайте аккаунт, попросите у поддержки доступ к тестовой среде и посмотрите, как платёж проходит путь от pending до paid в тестовой сети.