Связаться
  • WordPress
  • Payments
  • v1.0.0

Verifactu для WooCommerce — записи счетов AEAT и налоговый QR

Записи VERI*FACTU с цепочкой SHA-256, отправка в AEAT и налоговый QR в письмах. Pro — полные счета с NIF, корректировочные, аннулирование, PDF, экспорт.

Скачать Free
Pro · лицензия на год Чем больше сайтов, тем дешевле каждый
Совместимость
WooCommerce 7.0+ · WordPress 6.2+ · PHP 7.4+
Лицензия
один сайт, годовая
Триал
7 дней, без карты, один на сайт
Обновлено
сентябрь 2026
Или все 144 Pro-модулей в All Access — 4 990 ₴ / год

Что есть во Free,
а что даёт Pro

Бесплатная версия работает без ограничения по времени. Pro добавляет остальные функции из таблицы.

Функция Free Pro
Запись о счёте (registro de alta) на каждый оплаченный заказ ✔ ✔
Упрощённые счета F2 с собственными сериями и нумерацией по годам ✔ ✔
Цепочка SHA-256 по спецификации AEAT; записи неизменяемы ✔ ✔
Отправка в AEAT по SOAP вашим электронным сертификатом (.p12/.pfx) ✔ ✔
Очередь с автоповторами, если AEAT недоступна ✔ ✔
Исправление отклонённых записей (subsanación) одним кликом ✔ ✔
Налоговый QR «VERI*FACTU» в письмах, на странице благодарности и в кабинете ✔ ✔
Журнал записей с полным XML, хешем и ответом AEAT ✔ ✔
Тестовый портал и production с раздельными цепочками и счётчиками ✔ ✔
Классический и блочный чекаут WooCommerce, совместимость с HPOS ✔ ✔
Переводы: испанский и украинский ✔ ✔
Полные счета F1 с NIF / NIE / CIF покупателя — ✔
Поле NIF на классическом и блочном чекауте с проверкой — ✔
B2B в ЕС без НДС (E5 / N2) по VAT-номеру — ✔
Корректировочные счета из возвратов WooCommerce (R1 / R4 / R5) — ✔
Аннулирование (anulación) ошибочно выставленной записи — ✔
QR в PDF-счёте «PDF Invoices & Packing Slips» — ✔
Экспорт записей в CSV и XML для бухгалтера — ✔
Уведомления на почту об отклонённых записях и сбоях доставки — ✔

Как это выглядит

Налоговый QR-код VERI*FACTU на странице благодарности WooCommerce
Сразу после заказа покупатель видит блок «QR tributario:» с QR-кодом, надписью VERI*FACTU и номером счёта. Тот же блок добавляется в верх письма о заказе и на страницу заказа в «Мой аккаунт».
QR-код VERI*FACTU в PDF-счёте WooCommerce
С Pro тот же QR-код и легенда становятся в верх PDF-счёта плагина «PDF Invoices & Packing Slips». При желании плагин берёт номер счёта именно оттуда, чтобы нумерация не раздвоилась.
Поле NIF / VAT-номера на чекауте WooCommerce
Pro добавляет на чекаут поле NIF / NIE / CIF или VAT-номера ЕС — и на классическом, и на блочном чекауте. Контрольный символ проверяется сразу: с ошибочным NIF заказ не оформится.

Триал стартует, когда вы попросите

Свежая установка — бесплатная версия, ничего не включается само. Кнопка «Попробовать Pro 7 дней» → e-mail → ключ сразу в окне и письмом.

Один ключ — один сайт

Переносите магазин — отвяжите лицензию на старом домене и активируйте на новом сами. Если наш сервер недоступен, Pro работает ещё 14 дней. Для студий — ключи на 5, 25 сайтов или без ограничений.

Технические требования

  • WooCommerce 7.0+ с классическим или блочным чекаутом, совместимость с HPOS
  • WordPress 6.2+ · PHP 7.4+ с расширениями openssl и curl
  • Электронный сертификат эмитента, его представителя или сертификат печати (sello) — в формате .p12 / .pfx. Тот же сертификат работает и с тестовым порталом AEAT.
  • Магазин с испанским налогообложением: ставки НДС настроены в WooCommerce, валюта — евро.
  • Производитель ПО. RD 1007/2023 требует, чтобы в каждой записи был идентифицирован производитель программы, а сам производитель имел «declaración responsable». В этой сборке боевой режим (production) открывается после того, как идентификация производителя задана константами в wp-config.php; без этого плагин остаётся на тестовом портале AEAT и предупреждает об этом в настройках. Напишите нам — подскажем, как настроить это под вашу ситуацию.

История версий

v1.0.0 Текущая сентябрь 2026

Записи RegistroAlta на каждый оплаченный заказ, упрощённые счета F2 с собственными сериями, цепочка SHA-256 по спецификации AEAT, отправка SOAP с электронным сертификатом, очередь с…

Вместе с Verifactu для WooCommerce покупают

4 модуля одним заказом — на 40% дешевле, чем по отдельности

Набор «Старт магазина» Verifactu Nova Poshta Premium LiqPay Telegram-уведомления и Viber/SMS покупателям Нужно больше — все 144 модулей в All Access за 4 990 ₴.
3 490 ₴ / год вместо 5 860 ₴ поштучно
Купить набор →

Полное описание модуля

Verifactu для WooCommerce — плагин, который превращает магазин на WooCommerce в систему выставления счетов VERI*FACTU по испанским правилам. На каждый оплаченный заказ плагин создаёт запись о счёте (registro de alta), сцепляет её хешем SHA-256 с предыдущей, отправляет в веб-сервис Налогового агентства Испании (AEAT) вашим электронным сертификатом и добавляет налоговый QR-код с надписью «VERI*FACTU» в письмо покупателю, на страницу благодарности и в личный кабинет.

Правила борьбы с фальсификацией учёта (Real Decreto 1007/2023, Orden HAC/1177/2024) требуют, чтобы программа для выставления счетов создавала неизменяемую запись на каждый счёт. В режиме VERI*FACTU такая запись сразу уходит в AEAT, а покупатель может проверить счёт по QR-коду на сайте AEAT. Обязанность начинает действовать с 1 января 2027 года для компаний и с 1 июля 2027 года для остальных (Real Decreto-ley 15/2025).

Что получает админ

  • Метабокс на странице заказа — номер счёта, статус в AEAT и действия: отправить, исправить, аннулировать (Pro).
  • Заметки к заказу — плагин пишет в историю заказа, какой счёт выставлен и что ответила AEAT, включая код ошибки.
  • «Проверить соединение» — отдельная кнопка, которая доказывает, что AEAT принимает ваш сертификат, и при этом ничего не регистрирует.
  • Тест и production раздельно — свои цепочки записей и свои счётчики номеров, так что тестовые счета не портят боевую нумерацию.

Как это работает — шаг за шагом

  1. Заказ переходит в статус, который вы выбрали («Выполнен» или «В обработке»).
  2. Плагин выставляет счёт: берёт следующий номер из своей серии (например T2027-000001) и собирает запись RegistroAlta — упрощённую (F2) или, с Pro, полную (F1) с NIF покупателя.
  3. Разбивка налогов берётся из того, что WooCommerce реально начислил: испанский НДС (S1), экспорт без налога (освобождено, режим 02), дистанционные продажи в ЕС через OSS (N2, режим 17), внутренние строки по нулевой ставке. Для Канарских островов тип налога переключается на IGIC в настройках.
  4. Запись сцепляется хешем SHA-256 с предыдущей записью магазина — точно по спецификации AEAT. Цепочка защищена блокировкой, поэтому два одновременных заказа не сломают порядок.
  5. Запись уходит в AEAT по SOAP вашим электронным сертификатом. Плагин соблюдает время ожидания между отправками, которое указывает сама AEAT.
  6. Ответ раскладывается по записям: принято, принято с ошибками, отклонено — с кодом ошибки AEAT в журнале и в заметках заказа.
  7. Если AEAT недоступна, запись остаётся в очереди и повторяется с нарастающими паузами (2, 4, 8 минут… до 256 минут). Счёт и его QR-код действительны с момента создания записи.
  8. Отклонённая запись исправляется одним кликом: плагин создаёт новую сцепленную запись с флагами Subsanacion и RechazoPrevio именно такими, каких ждёт AEAT. Записи никогда не редактируются задним числом — исправление всегда новая запись.

Что под капотом

  • Хеш ровно по спецификации AEAT (документ о huella, v0.1.2): порядок полей, форматирование сумм, SHA-256 в верхнем регистре. Все три примера из документа AEAT воспроизводятся байт в байт.
  • Цепочка под замком: номер и предыдущий хеш берутся под блокировкой на уровне БД, поэтому параллельные заказы не дают дыр или дублей в цепочке.
  • Записи неизменяемы: ни одна запись не редактируется после создания. Исправление, корректировочный счёт и аннулирование — это всегда новая запись в цепочке.
  • QR по документу AEAT (v0.5.0): собственный энкодер ISO 18004 без внешних сервисов, URL ValidarQR на нужной среде, картинка в письмах отдаётся по подписанному URL — чужой счёт по ссылке не открыть.
  • Сертификат: приватный ключ перешифровывается ключом, производным от солей вашего сайта, и лежит в папке со случайным именем. Более надёжный вариант — константы в wp-config.php и файлы вне веб-корня; плагин поддерживает оба.
  • Очередь, которая не теряет записи: до 1000 записей за одну отправку, повторы с нарастанием, отдельный баннер в админке, если доставка стабильно не идёт.
  • Мок AEAT для стендов: константа CCVF_AEAT_MOCK даёт ответы по схеме AEAT, ничего не покидает сайт. В боевом режиме игнорируется.
  • Удаление не стирает налоговые данные: записи остаются после деинсталляции, если вы осознанно не задали CCVF_DELETE_DATA.

Как установить

  1. Плагины → Добавить новый → Загрузить плагин: выберите catcode-verifactu-for-woocommerce-1.0.0.zip и активируйте.
  2. WooCommerce → Verifactu → Настройки: NIF и название эмитента точно так, как зарегистрировано в AEAT, статус заказа для выставления счёта, серии счетов.
  3. Загрузите сертификат .p12/.pfx с паролем или пропишите CCVF_CERT_FILE, CCVF_KEY_FILE и CCVF_CERT_PASSWORD в wp-config.php.
  4. Оставаясь на «Тестовом портале», нажмите «Проверить соединение», включите «Создавать записи Verifactu» и проведите тестовый заказ.
  5. Когда тестовые записи принимаются, переходите на production.
  6. Для Pro: вставьте лицензионный ключ из письма после оплаты во вкладку «Лицензия» или запустите 7-дневный триал.

Вопросы
о модуле

Не нашли ответ? Напишите в Telegram — ответим в течение рабочего дня.

@catcode_support Настройка, совместимость, активация
Какой сертификат нужен?

Электронный сертификат эмитента (компании или самозанятого лица), его уполномоченного представителя или сертификат электронной печати (sello). Тот же сертификат подходит и для тестового портала AEAT.

Можно ли проверить работу без сертификата?

Да, на тестовом сайте: задайте CCVF_AEAT_MOCK в wp-config.php. Ни один запрос не покинет сайт, а ответы идут по схеме AEAT. В боевом режиме константа игнорируется.

Что будет, если AEAT недоступна?

Записи остаются в очереди и повторяются автоматически с нарастающими паузами. Счёт и его QR-код действительны с момента создания записи, а не с момента ответа налоговой.

AEAT отклонила запись — что делать?

Откройте WooCommerce → Verifactu, прочитайте ошибку, исправьте данные заказа или настройки и нажмите «Исправить и отправить». Новая запись с тем же номером счёта сцепляется в цепочку и уходит в AEAT.

Заменяет ли это программу моего бухгалтера?

Нет. Плагин создаёт и подаёт записи о счетах вашего интернет-магазина. Типовые налоговые настройки подходят обычному магазину на материковой Испании — сверьте их со своим налоговым консультантом.

Безопасно ли держать сертификат на сервере?

Приватный ключ хранится перешифрованным, в папке со случайным именем под uploads. На nginx добавьте правило, запрещающее wp-content/uploads/ccvf-*, или держите файлы вне веб-корня через константы в wp-config.php.

Что если я не хочу платить за Pro?

Упрощённые счета F2, цепочка, отправка в AEAT, исправление отклонённых записей и QR-код остаются бесплатными без ограничения по времени.

Не тот вариант, что искали?

Делаем кастомные модули под WordPress, WooCommerce, OpenCart и Shopify. Расскажите о задаче — подготовим оценку.

Заказать кастомный модуль