{"id":14275,"url":"\/distributions\/14275\/click?bit=1&hash=bccbaeb320d3784aa2d1badbee38ca8d11406e8938daaca7e74be177682eb28b","title":"\u041d\u0430 \u0447\u0451\u043c \u0437\u0430\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0430\u0432\u0446\u044b \u0430\u0432\u0442\u043e?","buttonText":"\u0423\u0437\u043d\u0430\u0442\u044c","imageUuid":"f72066c6-8459-501b-aea6-770cd3ac60a6"}

Tyzenhaus — бот для упрощения взаимных долгов в Telegram-чатах

Как Splitwise, только проще и в Telegram.

Полуминутный ролик, описывающий суть:

Рассчитать долги за 30 секунд

Проблема

До вспышки уханьского коронавируса мы с друзьями, бывало, путешествовали. Типичные евротрипы, когда забукано 4 перелёта, 10 поездов и автобусов, 7 ночлегов в 3-х странах. С этими платежами проблем почти нет: обычно всё дублируется на электропочту, поднять историю и выяснить кто кому сколько должен не сложно.

Проблемы начинаются в пути. Купили перекусить в аэропорту — кто-то оплатил чей-то кофе. В сувенирной лавке отказались принимать карту — и вот уже я покупаю магнит кому-то за налик. В магазине купили продуктов — платил кто-то один. Взяли пиццу на всех — платил другой. Доехали до следующей страны — а там вообще не евро.

Бесконечный поток "потом сочтёмся".

Первый раз не сочлись. Разобрались с основными платежами, а на остальное забили. Во второй раз каждый был сам за себя, и это тоже не сработало. В третий раз мы сохраняли чеки, иногда подбивали промежуточные долги. В четвёртый — вопользовались какой-то прилагой, может даже Splitwise. Помню, она была далеко не идеальная и хотела подписку за снятие ограничений и сокрытие рекламы. На пятый раз я бы купил ту подписку, но проблема на некоторое время ушла в прошлое вместе с евротрипами и большими компаниями.

Но этим летом снова стала актуальной.

Проект

Я решил написать бота для решения этой проблемы. Ведь всё равно мы все сидим в Telegram!

Потратил пару сотен часов на разработку, логотип и "промо-видео" в расслабленном режиме по вечерам. Всё сам.

Ключевые моменты:

  • Это Telegram-бот
  • Его нужно добавить в чат и зарегистрировать в нём участников транзакций (ограничения Telegram Bot API не позволяют получить полный список участников)
  • Для транзакции нужно задать сумму, валюту, описание и, собственно, участников
  • Поддерживаются любые валюты
  • Tyzenhaus упрощает взаимные долги и сводит количество платежей для полного расчёта к минимуму
  • Есть русский и английский языки

Бот написан на Kotlin, запущен на бесплатном Heroku, поэтому иногда отвечает с ощутимой задержкой.

Планы на будущее

  • Добавить возможность быстрого сброса всех долгов в ноль
  • Добавить возможность вывода всех транзакций (платежей) и поиска по ним
  • Добавить возможность прикрепления чеков к транзакциям
  • Переехать на нормальный VPS
  • Прикрутить статистику и мониторинг
  • Сделать лендинг с подробностями (и документацией?)
  • Добавить возможность посылать багрепорты и суппорт-реквесты прямо через бота

Благодарю за внимание!

Ссылка на бота: https://t.me/TyzenhausBot

0
Комментарии
-3 комментариев
Раскрывать всегда