Учёт крипто-транзакций превращается в головную боль, когда количество операций переваливает за тысячу в месяц. Ручное сопоставление каждой покупки с продажей по методам FIFO или LIFO — прямой путь к ошибкам и переплате налогов. В одном проекте клиент с 15 000 транзакций за год тратил 20 часов в неделю на ручной расчёт — после внедрения нашей системы этот показатель сократился до 2 часов. Экономия времени составила $15 000 в год по ставке бухгалтера $50/час. Мы разработали систему, которая автоматически классифицирует транзакции, вычисляет tax lots и реализованные gains/losses, избавляя бухгалтера от тонн рутины.
Согласно IRS Notice 2014-21, виртуальная валюта считается имуществом, поэтому каждая транзакция — налогооблагаемое событие. Наша система обеспечивает точность до 99.9% при условии корректного импорта.
Проблемы, которые решаем
Классификация типов транзакций. Обычная покупка, продажа, своп, перевод между своими кошельками, получение дохода от стейкинга — каждый тип требует разной налоговой обработки. Система анализирует адреса отправителя/получателя, контракты и метаданные, автоматически присваивая категорию (DISPOSAL, INCOME, NON_TAXABLE). Ошибка классификации может стоить $5 000 штрафа или переплаты — например, если своп ошибочно принять за две отдельные транзакции (продажа и покупка).
Определение fair market value. Цена актива может колебаться на 10% в течение дня. Наш сервис использует исторические данные CoinGecko с точностью до дня, а для высоколиквидных пар — до минуты. Это критично для транзакций, где сумма в USD не указана явно. Мы кэшируем цены в PostgreSQL, что позволяет обрабатывать до 10 000 транзакций в минуту.
Выбор метода cost basis. FIFO подходит не всем: если актив покупался по разным ценам и продавался частями, каждый метод даёт свою налоговую базу. Система поддерживает FIFO, LIFO, HIFO и Average Cost — можно переключиться в любой момент для сравнения. Например, при растущем рынке FIFO уменьшает налог на 15% по сравнению с LIFO.
Как мы это делаем
Ядро системы — PostgreSQL с расширенной схемой под крипто-учёт. Таблица tax_lots хранит порции активов с cost basis, а механизм LotAccountingService на TypeScript последовательно списывает лоты согласно выбранному методу. В одном из проектов для клиента с 15 000 транзакций за год мы внедрили FIFO, что сократило ручной труд бухгалтера с 20 часов в неделю до 2.
Пример расчёта FIFO на TypeScript
class LotAccountingService { async processDisposal(params: { userId: string; asset: string; amount: number; proceedsUSD: number; timestamp: Date; method: "FIFO" | "LIFO" | "HIFO" | "AVG_COST"; }): Promise<RealizedGain[]> { const lots = await this.db.getAvailableLots(params.userId, params.asset, params.method); const gains: RealizedGain[] = []; let remaining = params.amount; for (const lot of lots) { if (remaining <= 0) break; const used = Math.min(lot.remaining, remaining); const costBasis = (used / lot.originalAmount) * lot.totalCostUSD; const proceeds = (used / params.amount) * params.proceedsUSD; gains.push({ lotId: lot.id, amountDisposed: used, proceedsUSD: proceeds, costBasisUSD: costBasis, gainLossUSD: proceeds - costBasis, acquiredAt: lot.acquiredAt, isLongTerm: this.isLongTerm(lot.acquiredAt, params.timestamp), }); await this.db.reduceLotAmount(lot.id, used); remaining -= used; } if (remaining > 0) { await this.db.flagForReview(params.userId, params.asset, remaining); } return gains; } } Помимо этого, мы интегрировали PriceConversionService, который кэширует исторические цены и подставляет их в каждую транзакцию. Код запускается в production на Kubernetes, что позволяет обрабатывать до 10 000 транзакций в минуту.
Почему правильный метод cost basis критичен?
Выбор между FIFO, LIFO и HIFO может изменить налог на десятки тысяч долларов. Например, при растущем рынке FIFO даёт меньшую прибыль (и налог), а LIFO — большую. Наша система позволяет симулировать все методы и выбрать оптимальный перед подачей декларации. В одном кейсе клиент сэкономил $12 000, переключившись с LIFO на HIFO.
Как система справляется с тысячами транзакций?
Процесс работы:
- Аналитика — изучаем типы ваших операций, интеграции с биржами, требования юрисдикции.
- Проектирование схемы БД — настраиваем таблицы
transactions,tax_lots,realized_gainsпод ваш кейс. - Реализация — пишем код классификации, конвертации цен, алгоритмы списания лотов.
- Тестирование — прогоняем на исторических данных (до 50 000 транзакций), сверяем с ручными расчётами.
- Деплой и обучение — выкатываем на вашу инфраструктуру, обучаем бухгалтера работе с системой.
Сравнение методов cost basis
| Метод | Описание | Когда выгоден |
|---|---|---|
| FIFO | Первым купил — первым продал | При растущем рынке (меньше налог) |
| LIFO | Последним купил — первым продал | При падающем рынке (фиксация убытков) |
| HIFO | Продаётся самый дорогой лот | Максимизация cost basis, минимизация прибыли |
| AVG_COST | Средневзвешенная стоимость всех лотов | Простота расчёта, подходит для стейблкоинов |
Типичные ошибки и как их избежать
| Ошибка | Последствия | Решение |
|---|---|---|
| Пропущенные транзакции | Некорректные gains, доначисление налогов | Система помечает отсутствие лотов через flagForReview; всегда сверяйте итоговое количество транзакций с биржей |
| Неправильная классификация переводов | Двойной налог на перевод между своими кошельками | Автоматическое определение self-transfer по совпадению адресов |
| Игнорирование комиссий сети | Занижение cost basis, переплата налога | Каждая комиссия (gas) учитывается как расход, добавляется к cost basis |
| Неверный метод cost basis | Налог выше необходимого на 20% и более | Система позволяет симулировать все методы и выбрать оптимальный |
Что входит в результат
- Реляционная схема PostgreSQL с таблицами транзакций, лотов и gains.
- REST API на TypeScript для импорта, классификации и расчётов.
- Интеграция с CoinGecko, биржами (API или CSV).
- Документация по деплою, конфигурации и использованию.
- Обучение вашей команды (2 часа онлайн).
- Гарантия 12 месяцев на код и бесплатные фиксы багов.
Сроки и стоимость
Разработка MVP занимает от 3 до 6 недель в зависимости от количества источников данных. Стоимость рассчитывается индивидуально после аудита ваших процессов. Для получения предварительной оценки и демонстрации прототипа свяжитесь с нами. Мы работаем на рынке более 5 лет и выполнили 20+ проектов по автоматизации крипто-учёта.
Закажите разработку системы учёта крипто-транзакций — получите точность и экономию времени, которые окупаются уже в первый налоговый период. Проверьте, как автоматизация в 50 раз быстрее ручного расчёта, на бесплатной консультации.







