Сам по себе просроченный криптосчет не доказывает, что деньги не были отправлены. Прежде чем просить клиента заплатить снова, отличите неиспользованный запрос на оплату от перевода, ожидающего подтверждения, и перевода, отправленного после срока. Проверьте запись о платеже у провайдера и саму транзакцию, прежде чем заменять счет или выполнять заказ.
Это руководство для продавцов, работающих с разовыми покупками. Оно помогает решить, что делать с просроченным запросом на оплату, но не описывает возврат неподдерживаемых переводов и не обещает, что любой запоздалый платеж удастся зачесть. Правила провайдеров различаются; таймер обратного отсчета не задает универсальных условий возврата.
Что истекает: срок запроса, а не блокчейна
На странице оплаты может быть указан срок действия рассчитанной суммы или платежных инструкций. Сеанс оплаты на стороне провайдера тоже может иметь свой срок действия. Ни один из этих таймеров не отменяет транзакцию, уже переданную в блокчейн.
Разделяйте три записи: заказ, запрос на оплату или счет и перевод. У одного заказа может быть несколько попыток оплаты. Создание нового запроса взамен старого не должно стирать сведения о предыдущей попытке, по которой еще могут поступить средства.
Например, в правилах одного из провайдеров, документации Cryptomus, указано: если срок счета истек после оплаты клиентом, но до подтверждения сетью, счет впоследствии может получить статус оплаченного. Если же просроченный счет не был оплачен, рекомендуется создать новый. Это полезное различие, но эти правила не подтверждают, как Yolfi обрабатывает запоздалые платежи.
Разберитесь с платежом, прежде чем предлагать повторную оплату
Уточните, подтвердил ли клиент реальный перевод, а не просто открыл кошелек. Вывод с биржи со статусом «в обработке» мог еще не попасть в блокчейн. И наоборот: устаревшая страница оплаты может не показывать перевод, который провайдер уже обнаружил.
| Что удалось проверить | Что это означает | Безопасный следующий шаг |
|---|---|---|
| Перевод не был отправлен, поступление не обнаружено | Старый запрос не использовался | Проверьте заказ и выдайте актуальные инструкции, если оплата еще нужна |
| Перевод ожидает обработки или подтверждения | Итог еще не определен | Не закрывайте обращение; пока не просите заплатить второй раз |
| Средства поступили после истечения срока | Поступление денег и принятие оплаты по заказу нужно рассмотреть отдельно | Следуйте документированному порядку провайдера для таких исключений |
| Провайдер подтвердил успешную оплату | Старый таймер не определяет, можно ли выполнить заказ | Сопоставьте платеж с заказом и выполните его один раз |
| Есть только снимок экрана или неподтвержденная ссылка на транзакцию | Оплата не проверена | Запросите сеть и хеш транзакции; разберитесь до зачета средств |
Хеш транзакции — это ключ для поиска, а не доказательство того, что именно этот клиент оплатил именно этот заказ. Проверьте актив, сеть, получателя, фактически поступившую сумму и необходимое состояние подтверждения. Не делайте вывод об успешном переводе токена только потому, что транзакция с другими действиями завершилась успешно. Если адрес назначения или сеть не совпадают, воспользуйтесь руководством по предотвращению платежей в неверной сети, а не просите клиента повторить ту же ошибку.
Пять шагов при просроченном счете
1. Приостановите повторную оплату на время сбора сведений
Назначьте ответственного за обращение и свяжите его с заказом и исходным счетом. Запросите выбранную сеть, хеш транзакции, если он есть, сумму и примерное время отправки с часовым поясом. Никогда не запрашивайте фразу восстановления или закрытый ключ. Храните только необходимые данные клиента в своей рабочей системе с ограниченным доступом.
Напишите прямо: «Пожалуйста, не отправляйте деньги повторно, пока мы проверяем первый перевод. Пришлите хеш транзакции и сеть или подтвердите, что вы не отправляли перевод». Это пример ответа службы поддержки, а не утверждение об автоматических уведомлениях Yolfi.
2. Проверьте запись провайдера и сам перевод независимо друг от друга
Узнайте текущий статус платежа через интерфейс продавца после входа в учетную запись или через документированную интеграцию. Проверьте, обнаружены ли средства, завершено ли подтверждение и указан ли у запроса момент истечения срока. Если запись провайдера и обозреватель блокчейна расходятся, оставьте обращение открытым и передайте его в поддержку провайдера по установленному порядку.
Для Yolfi актуальная документация по платежам различает PENDING, CONFIRMING, SUCCESS, EXPIRED, FAILED и CANCELLED. В ней указано, что одного isFullyPaid недостаточно для подтверждения платежа или окончательного расчета. Для выполнения заказа требуется платеж с status = SUCCESS или проверенное Webhook-событие payment.confirmed. Перенаправление на другую страницу или снимок экрана клиента таким подтверждением не являются.
Среди документированных временных меток — createdAt, detectedAt, paidAt и expiresAt; некоторые из них могут отсутствовать. Не придумывайте отсутствующие метки и не принимайте время нажатия клиентом кнопки отправки за время обнаружения платежа провайдером. Эти поля помогают разобраться в ситуации, но не описывают автоматический зачет запоздалого платежа Yolfi.
3. Разберитесь с исходной попыткой, прежде чем создавать замену
Если ничего не было отправлено или получено, а заказ по-прежнему требует оплаты, создайте актуальный запрос предусмотренным способом. Повторно проверьте цену, доступность товара и выбранный клиентом способ оплаты. Скажите клиенту пользоваться только новыми инструкциями, а не старым адресом или сохраненным QR-кодом.
Если перевод существует, не считайте, что замена счета автоматически перенесет его на новый счет. Сохраните обе ссылки на платежи. Если безопасное решение пока невозможно, сообщите клиенту, что платеж проверяется, вместо того чтобы помечать заказ неоплаченным и собирать оплату повторно.
4. Решите, что делать с подтвержденными запоздалыми средствами
На основании действующих правил провайдера и ваших условий продажи определите, можно ли зачесть полученные средства в счет заказа или их нужно вернуть. Запоздалый перевод сам по себе не сохраняет курс обмена, срок действия которого истек. Согласуйте с клиентом пересмотренную оценку или сумму; не меняйте цену молча после получения денег.
При недоплате или переплате следуйте памятке по расхождениям в сумме. Если уместен возврат и средства находятся под вашим контролем, воспользуйтесь памяткой по возвратам. Не считайте исходный адрес отправителя безопасным адресом для возврата и не обещайте автоматический возврат, которого нет в документации провайдера.
5. Закройте заказ с результатом, который можно проверить
Зафиксируйте исходную попытку, заменяющую попытку, если она была, подтвержденное поступление и окончательное решение. Отметьте фактический результат: заказ выполнен, отменен, средства зачтены или возвращены. Если обе попытки завершились успешно, передайте повторное поступление на проверку, а не выполняйте заказ дважды и не игнорируйте второй платеж.
Защитите выполнение заказа как от повторных уведомлений, так и от нескольких успешных попыток оплаты. Заказ должен быть выполнен один раз, даже если интеграция снова получит то же подтверждение. Используйте руководство по сверке платежей, чтобы связать подтверждения оплаты с записями заказов.
Сделайте следующую попытку оплаты понятнее
Показывайте срок действия активного запроса и часовой пояс, если эти данные доступны. Объясните, что после истечения срока клиенту следует прекратить использовать старые инструкции и связаться с вами, если деньги уже отправлены. Разделяйте состояния «ожидаем оплату» и «средства обнаружены, ожидаем подтверждения», если провайдер предоставляет такое различие.
Для многократной продажи товара по фиксированной цене платежные ссылки Yolfi дают возможность поделиться ссылкой для начала оплаты. Для заказа с динамически заданной суммой документация Checkout Session описывает краткосрочный сеанс с суммой, заданной сервером, который создает счет после выбора покупателем способа оплаты. Рассматривайте их как разные объекты, а не взаимозаменяемые таймеры.
Доступные активы и сети зависят от фактических настроек оплаты. Пользуйтесь актуальными инструкциями из действующего процесса оплаты, а не общим списком токенов. Это руководство не устанавливает фиксированный срок действия счета Yolfi, льготный период или автоматический возврат запоздалого платежа.
Частые вопросы
Означает ли просроченный счет, что криптовалюта потеряна?
Нет. Само истечение срока ничего не говорит о местонахождении средств. Перевод мог не быть отправлен, еще ожидать обработки или уже поступить, но не быть зачтенным по заказу. Проверьте транзакцию и запись провайдера, прежде чем объявлять результат. Для неподдерживаемого актива или сети восстановление средств не гарантируется.
Нужно ли клиенту сразу отправить деньги еще раз?
Нет, если первый перевод мог состояться. Сначала разберитесь с ним. Если перевод не отправлялся и исходный запрос не использовался, выдайте актуальные инструкции, предварительно убедившись, что заказ все еще требует оплаты.
Могут ли платежи в USDC или USDT тоже прийти с опозданием?
Да. Привязка цены стейблкоина к целевому значению не устраняет задержки кошелька, биржи или сети и не продлевает срок действия запроса на оплату. Следуйте действующим инструкциям и документированным правилам подтверждения провайдера.
Можно ли выполнить заказ по просроченному счету Yolfi на основании снимка экрана?
Нет. Документированное условие выполнения заказа — SUCCESS или проверенное Webhook-событие payment.confirmed, а не снимок экрана, перенаправление или отдельно взятое isFullyPaid. Если вопрос с запоздалым переводом не решен, разбирайтесь с ним предусмотренным способом, а не присваивайте ему выдуманный успешный статус.
Итог: сначала проверка, затем замена
Самый безопасный ответ на просроченный криптосчет — не немедленный повторный запрос оплаты. Выясните, существует ли перевод, проверьте его состояние, разберитесь с запоздалым поступлением по правилам провайдера и закройте заказ один раз. Если платеж не отправлялся, предоставьте новые инструкции через подходящий процесс оплаты по ссылке Yolfi и сохраните исходную ссылку в своих записях.
