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

KSeF E-Invoicing для WooCommerce — е-фактуры FA(3) в польский KSeF прямо из заказов

Структурированные е-фактуры FA(3) для польского KSeF из заказов WooCommerce: отправка напрямую в API KSeF 2.0 вашим токеном, без SaaS-подписки. Номер KSeF и UPO — в заказе, поле NIP на чекауте, очередь с повторами, TEST/DEMO/PROD. Pro — корректирующие фактуры из возвратов, покупатели из ЕС и вне ЕС, B2C, валюты с курсом NBP, QR-код KSeF для клиента.

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

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

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

Функция Free Pro
Фактура FA(3) (схема 1-0E) из заказа: продавец, покупатель с NIP, товары, доставка, сборы, НДС по ставкам, оплата ✔ ✔
Ставки 23/22/8/7/5/4/3 %, 0 % KR, освобождение zw с основанием, np, обратное начисление (oo); НДС из налогов WooCommerce, фиксированная ставка в ценах или продавец без НДС ✔ ✔
Автовыставление, когда заказ становится «Выполнен» или «В обработке»; кнопка «Issue KSeF invoice» в заказе ✔ ✔
Прямая отправка в API KSeF 2.0 вашим токеном KSeF: онлайн-сессия, шифрование AES-256, без сторонних сервисов ✔ ✔
Номер KSeF и официальное UPO в заказе, скачивание XML и UPO ✔ ✔
Поле NIP на классическом и блочном чекауте с проверкой контрольной суммы; название компании рядом, если WooCommerce его скрывает ✔ ✔
Очередь с автоматическими повторами: KSeF недоступен — фактуры ждут и уходят позже ✔ ✔
Защита от дубликатов: потерянный ответ не создаёт вторую фактуру, чужой номер KSeF никогда не привязывается к заказу ✔ ✔
Причины отказов текстом KSeF, «Regenerate and send» после исправления, «Discard» ✔ ✔
Среды TEST, DEMO и PRODUCTION с отдельными счётчиками номеров ✔ ✔
Свой формат номера: {YYYY}/{MM}/{DD}/{N}, сброс ежемесячно, ежегодно или никогда ✔ ✔
Журнал фактур в админке, «Check the connection to KSeF», токен в базе зашифрован ✔ ✔
Языки плагина: English, polski ✔ ✔
Корректирующие фактуры (KOR) из возвратов WooCommerce — по позициям или суммой, с номером KSeF оригинала — ✔
Покупатели из других стран ЕС (VAT UE, 0 % WDT) и вне ЕС (экспорт, 0 % EX) — ✔
Фактуры потребителям (B2C) в KSeF по вашему выбору — ✔
Валюты EUR, USD и другие с курсом NBP и НДС в злотых в XML — ✔
Номер KSeF и QR-код проверки (KOD I) в письме клиенту, в аккаунте и на печатной фактуре — ✔
Массовое «Issue KSeF invoice» для прошлых заказов, CSV-реестр для бухгалтера, уведомления об отклонённых фактурах — ✔

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

Поле NIP и название компании для фактуры на блочном чекауте WooCommerce
Блочный чекаут: в «Additional order information» — поле NIP и, пока WooCommerce скрывает «Компанию», поле названия фирмы. NIP без названия компании не проходит: «Company name (for a VAT invoice) is required».
Ошибка «The NIP is not valid» на классическом чекауте WooCommerce
Классический чекаут: NIP с неверной контрольной суммой останавливает заказ — «The NIP is not valid. Check the 10 digits.»
Блок «Invoice in KSeF» с QR-кодом и номером KSeF в заказе покупателя в «Мой аккаунт»
Pro: в «Мой аккаунт» → заказ покупатель видит блок «Invoice in KSeF» — QR-код KOD I, номер фактуры, номер KSeF и ссылку на печатную фактуру.

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

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

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

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

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

  • WooCommerce 8.0+ с классическим или блочным чекаутом, совместимость с HPOS
  • WordPress 6.2+ · PHP 7.4+ с OpenSSL (без сторонних библиотек)
  • Токен KSeF для NIP продавца из Aplikacja Podatnika KSeF той среды, в которой работаете (TEST, DEMO или PRODUCTION). При переходе с TEST на PRODUCTION токен нужно заменить.
  • Налоги WooCommerce с польскими ставками (23 %, 8 %, 5 % …) или режим фиксированной ставки либо zw. Ставки не из польского перечня (например, OSS 19 %) фактуру не дают — модуль объяснит почему.
  • Валюта магазина — PLN для Free; другие валюты с курсом NBP — в Pro.
  • Языки плагина: английский и польский. На украинский и русский интерфейс не переведён — плагин сделан для польских магазинов.

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

v1.0.1 Текущая 24 сентября 2026

Pro-версия включается рядом с активной бесплатной копией с WordPress.org без предупреждений PHP и не берёт свой код из папки бесплатной копии.

v1.0.0 Первый релиз сентябрь 2026

FA(3) 1-0E, API KSeF 2.0 с токеном KSeF, очередь с повторами, UPO, защита от дубликатов, поле NIP и название компании на классическом и блочном чекауте, TEST/DEMO/PRODUCTION; английский и польский.

Вместе с KSeF E-Invoicing для WooCommerce покупают

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

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

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

KSeF E-Invoicing для WooCommerce — плагин для магазинов в Польше, которые выставляют фактуры компаниям. С 2026 года польские плательщики НДС передают фактуры B2B через Национальную систему е-фактур (Krajowy System e-Faktur, KSeF). Плагин превращает заказ WooCommerce в структурированную фактуру в официальном формате FA(3) и отправляет её прямо в API KSeF 2.0 — без бухгалтерского SaaS посередине и без ежемесячной подписки. Номер KSeF и официальное подтверждение приёма (UPO) сохраняются в заказе.

Что нужно от вас. Токен KSeF для NIP вашей компании: его генерируют в Aplikacja Podatnika KSeF выбранной среды (раздел «Tokeny», права на выставление и просмотр фактур). Честно о проверке: модуль проверен на официальной тестовой среде KSeF Министерства финансов — фактуры приняты с реальными номерами KSeF и UPO, а каждый XML валиден по официальной XSD-схеме FA(3). В DEMO и PRODUCTION мы его ещё не запускали: там тот же API, но нужна настоящая компания. Попробуйте на своём NIP в 7-дневном триале Pro — если KSeF ответит иначе, чем на тесте, исправим оперативно.

Ответственность за содержание фактуры остаётся за магазином: модуль строит FA(3) из данных заказа WooCommerce (ставки, адреса, NIP). Налоговые решения — когда 0 % KR, WDT или EX, кассовый метод, тип корректировки — сделаны по описаниям полей схемы и документации Министерства финансов; перед переходом на PRODUCTION стоит показать настройки вашему бухгалтеру.

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

У покупателя на чекауте появляется поле «NIP (for a VAT invoice)». Заполнять его необязательно: без NIP заказ оформляется как обычный, и фактура в KSeF не создаётся. Если NIP введён, модуль проверяет контрольную сумму — ошибочный номер останавливает заказ с пояснением. Принимаются записи «5265877635», «526-587-76-35» и «PL5265877635».

В WooCommerce 11 поле «Компания» по умолчанию скрыто, и фактура ушла бы на имя человека. Поэтому, пока поле WooCommerce скрыто, модуль показывает рядом с NIP своё поле «Company name (for a VAT invoice)»: с NIP оно обязательно, а название фирмы идёт в фактуру как покупатель. Включите поле «Компания» в настройках WooCommerce — модуль будет работать с ним.

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

  • WooCommerce → KSeF: вкладки «Invoices», «Settings» и «Licence».
  • Токен KSeF хранится в базе зашифрованным ключами, производными от секретных солей сайта; в форме видны лишь последние символы. Можно задать его и константой CCKSEF_TOKEN в wp-config.php.
  • «Check the connection to KSeF» проходит полную аутентификацию и пишет, с каким NIP и в какой среде всё работает, или показывает ошибку KSeF текстом (например, 450 для неверного токена).
  • Среда — TEST, DEMO или PRODUCTION; пока включены TEST или DEMO, вверху страницы висит напоминание, что фактуры не имеют юридической силы.
  • Продавец (Podmiot1): NIP, название, адрес, контакты, KRS / REGON / BDO в подвале фактуры.
  • Нумерация: формат вроде FV/{YYYY}/{MM}/{N}, сброс ежемесячно, ежегодно или никогда, отдельные счётчики для каждой среды; занятые номера пропускаются.
  • НДС: из налогов WooCommerce, фиксированная ставка, включённая в цены, или продавец, освобождённый от НДС (zw с основанием).
  • Журнал фактур: номер, заказ, покупатель с NIP, сумма, статус, номер KSeF или текст отказа; фильтр по статусу и поиск.
  • Блок «KSeF invoice» в заказе: номер фактуры, статус, номер KSeF, QR-код, ссылки на детали, XML и UPO. Для заказа без фактуры — кнопка «Issue KSeF invoice».
  • Заметки заказа: «создано и поставлено в очередь», «принято, номер KSeF …» или причина отказа.
  • «Send queued invoices now» отправляет очередь сразу, включая фактуры, ожидающие повтора.

Отклонённую фактуру видно сразу: в журнале, в заказе и в уведомлении вверху админки. Рядом — текст KSeF на польском, как его вернуло Министерство финансов, и полный XML FA(3). После исправления (дата, данные покупателя, ставка) — кнопка «Regenerate and send»; фактура, которая так и не попала в KSeF, отменяется кнопкой «Discard».

Номер уже занят другой программой. Если на том же NIP вы выставляете фактуры ещё и в другой программе с таким же шаблоном номера, KSeF откажет во второй фактуре с тем же номером. Модуль сверяет файл по SHA-256 с UPO оригинала: свой файл (например, когда потерялся ответ KSeF) принимается с его номером KSeF, а чужой — никогда. Такая фактура становится «Rejected by KSeF» с пояснением и номером KSeF чужого документа; измените формат номера (например, префикс SKLEP/) и нажмите «Regenerate and send» — фактура получит новый номер.

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

  1. Настройка. WooCommerce → KSeF → Settings: среда, NIP и адрес продавца, токен KSeF, «Check the connection to KSeF».
  2. Чекаут. Покупатель-компания вводит NIP (и название фирмы, если поле «Компания» скрыто). Неверный NIP не пройдёт.
  3. Статус заказа. Заказ становится «Выполнен» (или «В обработке» — как выберете) — модуль строит фактуру FA(3) со следующим номером и ставит её в очередь.
  4. Отправка. Action Scheduler сразу открывает онлайн-сессию KSeF, шифрует фактуру и отправляет её; крон каждые 5 минут — страховка.
  5. Статус KSeF. Модуль опрашивает KSeF: принято — номер KSeF в заказе, через минуту-две подтягивается UPO; отклонено — текст причины в журнале и в заказе.
  6. Сбои. KSeF недоступен, 429 или 503 — фактура ждёт и повторяется сама; тот же XML байт в байт, поэтому второй фактуры не будет.
  7. Возвраты (Pro). Возврат WooCommerce по позициям или суммой даёт корректирующую фактуру KOR с номером KSeF оригинала; она ждёт, пока оригинал получит номер.
  8. Клиент (Pro). Письмо «Your invoice is in KSeF» с номером KSeF и QR-кодом KOD I, блок в «Мой аккаунт» и печатная фактура.

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

  • FA(3), схема 1-0E — порядок элементов строго по XSD Министерства финансов; восемь типов документов (B2B с несколькими ставками, zw, ЕС в EUR, B2C, экспорт, KOR с номером KSeF и без, минимальный) валидны по официальной схеме.
  • API KSeF 2.0 без сторонних библиотек: аутентификация токеном (RSA-OAEP SHA-256), онлайн-сессия до 20 фактур, AES-256-CBC, опрос статуса, UPO. Access- и refresh-токены кешируются; 401 — повторная аутентификация, 21470 (смена ключа МФ) — ключи перечитываются.
  • XML не меняется после создания. Повтор — тот же файл байт в байт, поэтому потерянный ответ KSeF даёт 440 с оригинальным номером, а не вторую фактуру.
  • Дубликат 440 принимается только для собственного файла: SkrotDokumentu из UPO оригинала сравнивается с SHA-256 нашего XML. Сравнить не удалось — повтор до 24 часов, а не «принято наугад».
  • Нумерация с блокировкой (MySQL GET_LOCK): два заказа в одну и ту же секунду не получат одинаковый номер.
  • Курс NBP (Pro) — таблица A за последний рабочий день перед датой продажи; в XML — KursWaluty и НДС в злотых (P_14_xW).
  • Печатная фактура (Pro) — информационная копия: для фактуры в EUR на печати нет суммы НДС в злотых, она есть в XML, переданном в KSeF.
  • Офлайн-режимы KSeF (offline24, аварийный, KOD II) не реализованы: когда KSeF недоступен, фактуры ждут в очереди.
  • Удаление плагина убирает токен, кеш токенов и кроны; реестр фактур и счётчики остаются, чтобы нумерация продолжилась после переустановки. Константа CCKSEF_DELETE_DATA убирает всё.

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

  1. Плагины → Добавить новый → Загрузить плагин: выберите ksef-e-invoicing-for-woocommerce-1.0.1.zip и активируйте.
  2. WooCommerce → KSeF → Settings: включите «Issue KSeF invoices», выберите среду (начните с TEST), заполните NIP, название и адрес продавца.
  3. Сгенерируйте токен в Aplikacja Podatnika KSeF той же среды, вставьте его и нажмите «Check the connection to KSeF».
  4. Проверьте ставки налогов WooCommerce и формат номера (дайте магазину свой префикс, если есть другая программа фактурирования).
  5. Оформите тестовый заказ с NIP и переведите его в «Выполнен» — через минуту в заказе будет номер KSeF.
  6. Переходите на PRODUCTION — переключите среду и вставьте токен PRODUCTION.
  7. Для Pro: вставьте лицензионный ключ из письма после оплаты или запустите 7-дневный триал.

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

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

@catcode_support Настройка, совместимость, активация
Что нужно, чтобы начать?

Токен KSeF для NIP вашей компании. Его генерируют в Aplikacja Podatnika KSeF (раздел «Tokeny») с правами на выставление и просмотр фактур и вставляют в WooCommerce → KSeF → Settings. Отдельного договора или SaaS-аккаунта не нужно.

На чём модуль проверен?

На официальной тестовой среде KSeF Министерства финансов (TEST): аутентификация токеном, фактуры B2B, B2C, ЕС в EUR, корректирующие, отказ с пояснением, UPO, дубликаты — с реальными номерами KSeF. В DEMO и PRODUCTION модуль ещё не запускали: там тот же API, но нужны данные настоящей компании.

Я перехожу с TEST на PRODUCTION. Что поменять?

Токен. Токен KSeF действует только в той среде, где его сгенерировали, поэтому после переключения вставьте токен из Aplikacja Podatnika PRODUCTION. Счётчики номеров у каждой среды свои.

Я выставляю фактуры ещё и в другой программе на тот же NIP.

Дайте магазину свой формат номера, например SKLEP/{YYYY}/{MM}/{N}. Если другая программа уже заняла такой же номер, KSeF откажет, а модуль отметит фактуру как отклонённую с пояснением и не привяжет чужой номер KSeF к заказу. После смены формата — «Regenerate and send».

Идут ли в KSeF заказы потребителей?

Для фактур компаниям KSeF обязателен, для потребителей — нет. Free отправляет только заказы с NIP покупателя; Pro может отправлять и фактуры потребителям.

Что если KSeF не работает?

Фактуры остаются в очереди и отправляются автоматически, как только KSeF отвечает. Ничего не теряется, дважды не отправляется.

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

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

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