Учёт криптовалюты по реальному
P2P-курсу — Telegram-бот Kopilka
Большинство финансовых трекеров считают крипту по биржевому курсу — и врут на 3–5% по каждой операции. Kopilka хранит USDT и BTC как обычные валюты, а курс обмена берёт из твоей реальной P2P-сделки.
Почему стандартный учёт крипты не работает
Большинство финансовых трекеров — Spendee, Money Lover, CoinTracker, CoinStats — предлагают одинаковый подход: подключи аккаунт Binance, OKX или Coinbase через API-ключ, и приложение само подтянет балансы и сделки. Звучит удобно, на практике подходит только инвесторам, которые держат крипту на бирже как актив и хотят видеть PNL.
У тех, кто реально использует USDT и BTC как деньги, картина другая. Зарплата от иностранного клиента приходит в USDT на TRC-20 — на биржу не заходит. Половина обменивается через P2P на местный фиат: GEL, RUB, THB, AED, TRY. Остаток лежит в холодном кошельке или Trust Wallet. Биржевой аккаунт показывает баланс «0 USDT» при том, что у пользователя 5000 USDT в обороте. Учёт расходов в крипте через биржевой API в этом сценарии просто бесполезен.
Вторая проблема — API-ключи. Чтобы приложение видело балансы, ему нужен read-only доступ к аккаунту биржи. Это лишняя точка утечки: ключ хранится у третьей стороны, при компрометации сервиса попадает в чужие руки. Для повседневного учёта финансов это избыточный риск. Telegram-бот для учёта финансов не требует ничего подобного — ты сам пишешь операцию сообщением, бот сохраняет, не имея никаких внешних доступов.
Третья проблема — категории и контекст. Биржевой API отдаёт сырые транзакции: tx hash, сумма, монета, время. Из этого нельзя понять, что 200 USDT ушло на оплату хостинга, а ещё 200 USDT — это обмен на местный фиат для аренды. Все приложения, опирающиеся на API, заставляют размечать операции вручную постфактум — и большинство пользователей просто перестают это делать через пару недель. В Kopilka контекст ты задаёшь в момент записи, одной фразой: «200 USDT хостинг» — категория и смысл сохраняются вместе с суммой.
P2P-курс vs биржевой: разница в реальных деньгах
Биржевой курс USDT/RUB на Binance Spot сегодня — 92 рубля. Открой Binance P2P или любой обменник в Грузии, Сербии, Турции: курс будет 88 рублей за USDT. Разница 4% и она стабильна: P2P-курс почти всегда ниже биржевого на 2–5%, потому что P2P-продавец закладывает риск, спред и вывод. Это та самая реальная цена, по которой деньги меняют форму.
Если трекер считает 1000 USDT, лежащие у тебя в Trust Wallet, по курсу 92 — он показывает 92 000 рублей. Реально ты получишь 88 000 на P2P. Цифра «P2P-курс vs биржевой» — это не теоретическая разница: пользователь с оборотом 2000 USDT в месяц на бирже видит фантомные +8000 рублей, которых нет. Бюджет, построенный на такой цифре, всегда оптимистичнее реальности.
Kopilka не подтягивает курсы из ниоткуда. Когда пишешь «обменял 500 USDT на 44 000 THB», бот сохраняет именно этот курс — 88 THB за USDT — для этой операции. Если на следующей неделе курс будет 86, бот сохранит 86. История курсов P2P, по которым ты реально обменивал валюту, накапливается сама собой. Это и есть реальный курс обмена — без аппроксимаций.
Для отчёта за месяц бот считает не текущий биржевой курс, а средний курс твоих обменов за период. Если ты сдал 2000 USDT по разным курсам — 88, 89, 87, 90 — отчёт возьмёт средневзвешенный, и оценка остатка USDT в рублях будет совпадать с тем, что ты реально получишь, продав остаток сейчас. Этим Kopilka отличается от трекеров, которые в любую секунду берут котировку Binance Spot и подставляют в баланс: красивая цифра, которая не материализуется при реальном выводе.
USDT и BTC как обычные валюты
Главная идея Kopilka в учёте крипты — отказаться от деления на «фиат» и «крипту». В модели бота USDT — это валюта, как USD, EUR или GEL. BTC — валюта, как любая другая. Никаких отдельных «портфолио», «инвестиций», «трекинга монет». Просто валюта расходов и доходов.
Что это даёт. Можно тратить USDT напрямую, не конвертируя в фиат: «заплатил 50 USDT за хостинг», «отправил 200 USDT партнёру». Бот спишет с баланса USDT, как с любой другой валюты. Можно записать доход в BTC: «получил 0.003 BTC за консультацию» — бот добавит BTC на баланс. Можно держать траты в крипте и в фиате одновременно: в отчёте за месяц ты увидишь и «1200 USDT» расходов, и «3500 GEL» расходов — каждая валюта живёт отдельной строкой.
Конвертация в основную валюту делается опционально и в момент отчёта. Если выбрал базовую валюту USD, бот покажет суммарные расходы в USD, но возьмёт за основу средневзвешенный курс из твоих P2P-обменов за период. Это и есть «крипта в семейном бюджете» без искажений: сумма в долларах отражает то, что ты бы получил, обменяв остатки по тому же курсу, по которому уже обменивал.
Как записывать обмены в Kopilka
Обмены — самая частая операция в учёте крипты у релокантов и фрилансеров с зарубежным доходом. В Kopilka они пишутся одним сообщением, как обычная фраза.
Пример: «обменял 500 USDT на 15 миллионов VND». Бот распознаёт это как операцию конвертации: списывает 500 USDT с баланса USDT, добавляет 15 000 000 VND на баланс VND, сохраняет курс 30 000 VND за USDT для этой даты. Если потом ты обменяешь по другому курсу, бот сохранит обе сделки и их курсы — без принудительного усреднения.
Обмен крипты на крипту работает так же: «обменял 1000 USDT на 0.025 BTC». USDT -1000, BTC +0.025, сохранён курс 40 000 USDT за BTC. На вопрос «сколько BTC по какому курсу я набирал в этом году» бот ответит сразу — у него есть полная история. Это нельзя восстановить через биржевой API, потому что P2P и DEX-сделки туда не попадают.
Если в момент обмена была комиссия — пиши её отдельной операцией: «комиссия 5 USDT за обмен». Бот её учтёт как расход в категории «комиссии», она ляжет рядом с обменом по дате. Полная картина стоимости конвертации сохраняется без сложных формул.
Чтобы редактировать обмен задним числом — reply на сообщение бота с уточнением: «курс был 29 500», «это была сумма после комиссии», «удали». Бот перезапишет именно эту операцию, не трогая балансы других дней. Так же работают исправления для учёта USDT и BTC — если случайно записал BTC вместо ETH или перепутал направление обмена, поправить можно одной фразой.
Без подключения к биржам и кошелькам
Ни один шаг работы Kopilka не требует доступа к твоим криптокошелькам или биржевым аккаунтам. Бот не знает твой адрес TRC-20, не видит Binance, не делает запросов в API Coinbase. Учёт криптовалюты в Kopilka — это ручной ввод операций сообщениями, такой же, как для фиата. Преимущество — нулевая поверхность атаки на твои реальные активы.
Что бот хранит: текст операции, распарсенные сумму и валюту, категорию, дату, твой Telegram ID. Что не хранит: пароли, seed-фразы, ключи кошельков, ключи бирж. При компрометации БД злоумышленник получит историю транзакций, но не сможет вывести ни одной монеты из твоих кошельков — у бота просто нет такого доступа.
Это сознательный выбор. Альтернатива — подключать API-ключи бирж и парсить кошельки через ноды — даёт автоматизацию, но требует доверия инструменту в масштабе, который для повседневного учёта расходов в крипте избыточен. Ручной ввод за 3 секунды на каждую операцию — компромисс в пользу безопасности.
Сценарии: фрилансер, релокант, P2P-трейдер
Фрилансер с доходом в USDT. Получаешь оплату от клиентов в USDT раз в неделю, обмениваешь часть на местный фиат для жизни, часть оставляешь в USDT как подушку. В Kopilka пишешь: «получил 800 USDT от клиента» — доход. Через несколько дней: «обменял 400 USDT на 1100 GEL» — конвертация. Текущие расходы идут в GEL. В конце месяца отчёт показывает доход 800 USDT, расходы в GEL по категориям, остаток 400 USDT на балансе. Никакой фантомной «прибыли» от роста курса USDT, никаких API.
Релокант, живущий между странами. Уехал из России в Грузию, потом в Сербию, потом в Таиланд. На каждом этапе — местная валюта плюс USDT как резерв. Бот хранит балансы во всех валютах одновременно: RUB на старой карте, GEL на лари-счёте, THB на банковском счёте, USDT в Trust Wallet. Между странами переезжаешь — USDT перевозишь, обменивая через P2P на месте. Каждый обмен записывается в боте, история курсов накапливается — в любой момент видно, по какому курсу набирал THB полгода назад.
P2P-трейдер с систематическими обменами. Покупаешь USDT за рубли, продаёшь за лиры или дирхамы, зарабатываешь на спреде. Каждая сделка — операция в боте: «купил 1000 USDT за 89 000 RUB», «продал 1000 USDT за 33 500 TRY». Через месяц видишь чистый результат в любой базовой валюте — без подключения к Binance P2P или ручной таблицы. Учёт USDT и BTC ведётся наравне с фиатом, поэтому отчёт получается единым.
Чем отличается от Coinmarketcap, CoinTracker, Spendee
CoinMarketCap Portfolio, CoinTracker, CoinStats, Delta, Spendee — это разные инструменты с пересекающейся аудиторией, но другая философия. Они построены вокруг инвестиционного учёта: видеть стоимость портфолио в фиате на текущий момент, считать нереализованную прибыль, готовить отчёт для налоговой. Курсы подтягиваются с бирж, балансы — через API или ручной ввод «сколько у меня монет».
Kopilka решает другую задачу — повседневный учёт расходов в крипте и фиате вместе. Куда ушли деньги в этом месяце, сколько потратил на еду, сколько на аренду, какие категории растут, как меняется подушка. Биржевой курс здесь не нужен — нужен реальный курс обмена, по которому ты на самом деле меняешь монеты на жизнь. Поэтому бот не делает PNL по позициям, не считает капитализацию портфолио, не выдаёт прогноз. Он отвечает на вопрос «куда уходит USDT и сколько остаётся», а не «насколько вырос мой BTC за квартал».
Если задача — следить за инвестпортфелем, CoinTracker подойдёт лучше. Если задача — видеть честную картину расходов и доходов, где крипта в семейном бюджете живёт рядом с фиатом по реальным курсам, Kopilka даст её без подключений к биржам и без 200 строк CSV-импорта каждый месяц.
Учёт криптовалюты в Telegram — частые вопросы
USDT, BTC, ETH, USDC и любые токены с трёхбуквенным тикером — обрабатываются так же, как фиатные валюты. Если нужного тикера нет в распознавании, напиши в @kopilka_school: добавляем валюты по запросу за пару дней.
Нет. Учёт криптовалюты в Kopilka работает без API-ключей и без доступа к кошельку. Ты сам пишешь операции — «получил 200 USDT за заказ», «обменял 500 USDT на 45 000 THB». Бот не делает запросов ни в Binance, ни в Bybit, ни в твой Trust Wallet.
USDT и USDC — это отдельные валюты в учёте, не USD. Курс USDT к доллару не всегда равен 1: на P2P USDT может стоить 0.98 USD или 1.02 USD. Если приравнивать USDT к USD, теряется реальная картина. В Kopilka USDT хранится как самостоятельная валюта, конвертация — по твоему курсу обмена.
Бот не работает с NFT как с активом портфолио, но операции вокруг NFT записать можно: «потратил 0.05 ETH на gas», «продал NFT за 200 USDT». Это станет обычными расходом и доходом в ETH и USDT. Для портфолио NFT лучше отдельные инструменты.
Записывать как доход в нужной валюте: «получил 50 USDT стейкинг» или «airdrop 1000 ARB». Бот сохранит сумму, дату и категорию. Если хочешь различать обычный доход от пассивного — заведи отдельные категории «стейкинг» и «airdrop», бот их запомнит.
Так же, как любой обмен валют: «обменял 1000 USDT на 0.025 BTC». Бот вычтет 1000 USDT с баланса, добавит 0.025 BTC и сохранит курс обмена 40 000 USDT за BTC. Никакой автоматической подгрузки курса с биржи — учитывается то, что реально получил.
CoinTracker, CoinStats, Delta заточены под инвестиционный учёт: PNL, нереализованная прибыль, налоговая отчётность по сделкам. Kopilka — про повседневный учёт расходов в крипте: куда уходит USDT, сколько ушло на жизнь в этом месяце, какой курс P2P-обмена в среднем. Разные задачи.
Другие сценарии Kopilka
Начни учитывать USDT и BTC как обычные деньги
Без API-ключей, без подключения к биржам, по реальному P2P-курсу. Тридцать секунд на старт.