github grandvan709/yookassa-to-mynalog 2.6.0

3 hours ago

🆕 Новый функционал

  • YOOKASSA_NALOG_PROXY — поддержка SOCKS5-прокси для российских сервисов — для серверов вне РФ, у которых ФНС и/или ЮKassa блокируют зарубежные IP, добавлена возможность роутить трафик к api.yookassa.ru и lknpd.nalog.ru через российский SOCKS5-прокси. Telegram при этом продолжает работать через свой собственный TELEGRAM_PROXY (или напрямую) — потоки трафика изолированы. Использовать схему socks5h:// (с буквой h) — DNS-резолвинг будет на стороне прокси.

🔧 Улучшения

  • Защита от зависаний при сбоях API ЮKassa — вызовы Payment.list() и Refund.list() обёрнуты в asyncio.to_thread + asyncio.wait_for(timeout=120). Если SDK висит дольше 2 минут (вместо стандартных ~15 минут внутренних retry'ев), запрос прерывается и логируется явная ошибка таймаута.

  • Видимость ошибок API ЮKassa в уведомлениях — раньше при сбое получения платежей/возвратов скрипт молча сообщал "💤 Новых платежей не найдено". Теперь в Telegram и Email приходит явное "⚠️ Ошибка получения данных из ЮКассы" с типом и описанием ошибки.

  • Обновлён YooKassa SDK до версии 3.10.1 (с 3.9.0).

  • Информативное логирование ошибок авторизации — в логах теперь видно тип исключения (например, [ConnectTimeout], [SSLError]) вместо пустого сообщения.

⚙️ Новые переменные окружения

Переменная По умолчанию Описание
YOOKASSA_NALOG_PROXY SOCKS5-прокси для ЮKassa и ФНС. Формат: socks5h://user:pass@host:1080. Нужен для серверов вне РФ.

⚠️ Важно

  • Переменная YOOKASSA_NALOG_PROXY опциональна. Если ваш сервер находится в РФ — оставьте её пустой, всё будет работать как прежде.
  • Если ваш сервер за пределами РФ и вы видите ошибки ConnectTimeout к lknpd.nalog.ru или SSLError к api.yookassa.ru — настройте SOCKS5-прокси с российским IP и пропишите его в YOOKASSA_NALOG_PROXY.
  • Telegram-уведомления больше не подхватывают системную переменную HTTPS_PROXY (благодаря trust_env=False) — если для Telegram нужен прокси, используйте только TELEGRAM_PROXY.

Don't miss a new yookassa-to-mynalog release

NewReleases is sending notifications on new releases.