Перейти к содержимому

Сделано для нашего бизнеса.

MTD VAT для Odoo

Модуль для отправки деклараций по НДС Великобритании в HMRC из Odoo Community. Он в разработке и проходит проверку в песочнице HMRC; для реальных деклараций пока недоступен.

Расскажите, что нужно Все кейсы

Задача

По правилам Making Tax Digital декларации по НДС отправляются в HMRC через программу. В Odoo Community встроенного способа нет, поэтому бизнес выгружает цифры и пользуется отдельной программой-посредником. Мы хотели готовить и отправлять декларацию там же, где ведётся учёт.

Что мы сделали

В песочнице HMRC модуль:

  • получает из HMRC ваши периоды по НДС (обязательства);
  • рассчитывает графы 1–9 по вашим проведённым записям;
  • отправляет декларацию после того, как вы подтвердите юридическое заявление, и сохраняет квитанцию HMRC;
  • сверяет цифры, которые есть у HMRC, и показывает начисления и платежи.
Периоды НДС, полученные из HMRC. Песочница HMRC — тестовые данные.
Периоды НДС, полученные из HMRC. Песочница HMRC — тестовые данные.
Поля 1–9 рассчитаны по проведённым записям. Песочница HMRC — тестовые данные.
Поля 1–9 рассчитаны по проведённым записям. Песочница HMRC — тестовые данные.
Квитанция HMRC сохраняется вместе с декларацией. Песочница HMRC — тестовые данные.
Квитанция HMRC сохраняется вместе с декларацией. Песочница HMRC — тестовые данные.

Технологии

Модуль отправляет декларации по НДС через официальный сервис HMRC Making Tax Digital. Он входит в систему так, как требует HMRC, и передаёт сведения о безопасности, которые HMRC запрашивает у каждого подключения. Ключи доступа хранятся в зашифрованном виде. Весь процесс проверен в песочнице HMRC; для реальных деклараций модуль пока недоступен.

Для технических специалистов: Python (Odoo 19 Community); HMRC VAT (MTD) API с OAuth 2.0; заголовки HMRC для предотвращения мошенничества (fraud prevention headers); небольшой прокси для входа на нашем сервере, на чистом Python; коммерческая лицензия на каждую базу клиента.

Что было сложного

  • Заголовки для предотвращения мошенничества. HMRC требует с каждым запросом сведения об устройстве и подключении пользователя: часть берётся из браузера, часть с сервера. Первая проверка валидатором HMRC показала, что нет порта клиента: веб-сервер перед Odoo его не передавал. Когда стал передавать, валидатор ответил VALID_HEADERS.
  • Секрет HMRC не хранится в базах клиентов. Вход и токены идут через наш собственный прокси-сервер, поэтому в Odoo клиента нашего секрета приложения нет. Токены хранятся зашифрованными, ключ — вне базы данных.
  • Точные цифры. Мы проверили графы на тестовом квартале из 16 документов со всеми ставками НДС Великобритании: декларация модуля совпала с нашим отдельным отчётом по НДС по каждой графе.

Результат и статус

В разработке. Полная цепочка — подключение к HMRC, получение периодов, отправка декларации, сверка цифр — пройдена в песочнице HMRC. Запрос в HMRC на боевой доступ рассматривается; пока он не выдан, модуль для реальных деклараций недоступен.

Код

Не открытый код: коммерческая лицензия на базу клиента.

Нужно что-то похожее?

Расскажите — а если хотите узнать, когда MTD VAT для Odoo станет доступен, напишите об этом в сообщении.

Расскажите, что нужно