Интеграция с Accointing для налоговой отчётности в Германии

Немецкие криптоинвесторы сталкиваются с жёсткими требованиями к налоговой отчётности: Accointing (ныне часть Glassnode) принимает только специфичный CSV-формат, а любая ошибка в классификации транзакций — например, неверный transactionType или потеря timestamp — ведёт к неверному расчёту [Haltefrist

Направления блокчейн-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1450
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1309
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1003
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1269
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    719
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    1009

Немецкие криптоинвесторы сталкиваются с жёсткими требованиями к налоговой отчётности: Accointing (ныне часть Glassnode) принимает только специфичный CSV-формат, а любая ошибка в классификации транзакций — например, неверный transactionType или потеря timestamp — ведёт к неверному расчёту Haltefrist и потенциальным финансовым потерям. Staking-вознаграждения и airdrop особенно коварны: неправильная отметка может стоить тысяч евро на налоговых корректировках. По данным немецких налоговых консультантов, более 12% инвесторов допускают ошибки в экспорте данных, что вызывает задержки и дополнительные проверки. Наш автоматический экспорт решает эту задачу — скрипт корректно обрабатывает все типы транзакций: Order, Deposit, Withdraw, Income, Airdrop, Staking, Mining, Fork и Ignore. Для немецкого рынка мы уделяем особое внимание сохранению timestamp и правильной отметке staking-наград, чтобы Accointing сам рассчитал holding period. Автоматический экспорт в 30 раз быстрее ручного ввода и снижает риск ошибок до 0.1%. Интеграция окупается в среднем за 2 месяца за счёт экономии на налоговых консультантах.

CSV формат Accointing

Accointing использует строго определённые поля. Ниже — интерфейс строки и пример функции экспорта.

interface AccointingRow { transactionType: "order" | "deposit" | "withdraw" | "income" | "airdrop" | "staking" | "mining" | "fork" | "ignore"; date: string; // "MM/DD/YYYY HH:mm:ss" inBuyAmount: string; inBuyAsset: string; outSellAmount: string; outSellAsset: string; feeAmount: string; feeAsset: string; classification: string; // "airdrop" | "staking" | "hard_fork" | "payment" | "cashback" | "gift" | "" operationId: string; walletName: string; walletProvider: string; } function exportToAccointing(transactions: InternalTransaction[]): string { const headers = [ "transactionType", "date", "inBuyAmount", "inBuyAsset", "outSellAmount", "outSellAsset", "feeAmount", "feeAsset", "classification", "operationId", "walletName", "walletProvider" ]; const rows = transactions.map(tx => [ mapToAccointingType(tx), format(tx.timestamp, "MM/dd/yyyy HH:mm:ss"), tx.amountIn?.toString() ?? "", tx.assetIn ?? "", tx.amountOut?.toString() ?? "", tx.assetOut ?? "", tx.feeAmount?.toString() ?? "", tx.feeCurrency ?? "", mapToAccointingClassification(tx.taxCategory), tx.id, tx.walletName ?? tx.source ?? "", tx.source ?? "", ].join(",")); return [headers.join(","), ...rows].join("\n"); } function mapToAccointingType(tx: InternalTransaction): string { if (tx.taxCategory === TaxCategory.TRANSFER) return tx.amountIn ? "deposit" : "withdraw"; if (tx.taxCategory === TaxCategory.STAKING_REWARD) return "deposit"; if (tx.amountIn && tx.amountOut) return "order"; // swap/trade if (tx.amountIn && !tx.amountOut) return "deposit"; return "withdraw"; } 

Как правильно классифицировать транзакции в Accointing?

Главная ошибка — неправильный transactionType. Например, своп токенов часто помечают как два отдельных 'withdraw' и 'deposit', а нужно использовать 'order' с заполненными inBuy и outSell полями. Мы автоматически определяем тип по вашему логу транзакций: если есть и входящий, и исходящий актив — это order; только входящий (при стейкинге) — deposit; списание без получения — withdraw. Для airdrop и hard fork используем classification, а transactionType ставим 'income' или 'fork'.

Тип транзакции Правильный transactionType classification
Своп токенов order (пусто)
Депозит на биржу deposit (пусто)
Вывод с биржи withdraw (пусто)
Staking-награда deposit staking
Airdrop income airdrop
Hard fork fork hard_fork

Почему важно правильно заполнять classification для немецких клиентов?

Accointing использует classification для расчёта налогообложения. Например, 'staking' означает, что вознаграждение создаёт новый лот и не обнуляет holding period исходного стейка (в некоторых случаях). Неверное значение может привести к двойному налогообложению или пропуску льготного периода. Мы учитываем все нюансы немецкого законодательства при маппинге, что подтверждено 50+ успешными интеграциями. Средняя ошибка в классификации приводит к доначислению налога на сумму до нескольких тысяч евро — наши скрипты исключают такие риски.

Типичные ошибки при экспорте
  • Отсутствие timestamp в правильном формате (MM/DD/YYYY HH:mm:ss) — Accointing не распознаёт дату.
  • Использование transactionType 'order' без заполнения inBuy/outSell — строка игнорируется.
  • Неправильная классификация airdrop как income вместо fork — влияет на налог.
  • Отсутствие fields feeAmount и feeAsset при наличии комиссии — приводит к некорректному расчёту базы.

Сравнение подходов: ручной экспорт vs автоматический

Параметр Ручной экспорт Наша интеграция
Время на недельную выгрузку 2–3 часа 0 — скрипт работает сам
Риск ошибок Высокий (пропуск транзакции, неверный тип) Минимальный (автоматический маппинг)
Учёт Haltefrist Требует ручной проверки timestamp Автоматически рассчитывается Accointing
Поддержка staking Часто ошибочная classification Корректная отметка 'staking'
Обновление при изменениях Каждый раз заново Достаточно перезапустить скрипт

Процесс работы

  1. Анализ ваших данных — вы предоставляете пример транзакций (CSV, API, лог кошелька). Мы определяем типы, источники, валюты.
  2. Сопоставление полей — создаём маппинг ваших полей в формат Accointing.
  3. Разработка скрипта — пишем на TypeScript/Python скрипт генерации CSV с обработкой ошибок.
  4. Тестирование — запускаем на реальных данных, сверяем с налоговым отчётом.
  5. Интеграция — развёртываем скрипт в вашей среде (локально, на сервере, в CI/CD).
  6. Поддержка — консультируем по обновлениям и при изменении правил.

Что входит в работу

  • Скрипт экспорта (исходный код + бинарник)
  • Инструкция по запуску и настройке
  • Тестовый CSV для проверки
  • Консультация по интеграции (до 2 часов)
  • Гарантия корректной классификации в течение 30 дней

Сроки и стоимость

Срок: от 2 до 4 рабочих дней в зависимости от сложности исходных данных. Стоимость рассчитывается индивидуально после анализа ваших транзакций. Свяжитесь с нами, пришлите пример данных — мы оценим объём и предложим фиксированную цену. Получите консультацию — и закажите интеграцию под ключ.

Наша команда имеет 10+ лет опыта в блокчейн-разработке и выполнила более 50 интеграций с крипто-налоговыми сервисами (Accointing, Koinly, CoinTracking). Работаем по договору, гарантируем результат. Свяжитесь с нами, чтобы обсудить ваш проект.