Якщо ваша фірма в Польщі досі виставляє фактури з таблиці, ви не унікальні. Excel протримався довше за багато впроваджень ERP, бо фактура раніше означала документ, який читає людина.
Це перестало бути правдою 1 квітня 2026 року, коли KSeF став обовʼязковим для всіх активних платників VAT. Залишився один виняток: до 31 грудня 2026 року можна виставляти фактури поза KSeF, якщо місячна вартість продажу брутто, задокументована такими фактурами, не перевищує 10 000 zł (пояснення Міністерства фінансів). Це пʼять місяців. Причому право виставляти поза системою втрачається починаючи з тієї фактури, якою ви перетнули поріг, а не з наступного місяця.
Це не текст про те, що Excel поганий. Це перелік конкретних місць, де він ламається, коли ви підключаєте його до KSeF.
KSeF приймає не таблиці, а XML у структурі FA(3)
Польський закон про VAT визначає fakturę ustrukturyzowaną (структуровану фактуру) точно: це фактура, виставлена за допомогою KSeF, якій система надала індивідуальний ідентифікаційний номер (ст. 2 п. 32a ustawy o VAT). Обидві умови мають виконатися одночасно. Файл, який не потрапив до KSeF, структурованою фактурою не є, навіть якщо виглядає бездоганно.
До всіх структурованих фактур, виставлених від 1 лютого 2026 року, застосовується структура FA(3) (інформаційна брошура Міністерства фінансів). Це ієрархічний XML-документ на кілька сотень полів, поділений на блоки Naglowek, Podmiot1 (продавець), Podmiot2 (покупець) і Fa, з вкладеними позиціями, закритими словниками значень і жорсткими правилами щодо того, яке поле в якому контексті допустиме.
Таблиця пласка. Немає вкладеності, немає типів, немає валідації за XSD. Так, можна написати макрос, який склеює XML із рядків. Тільки тоді у вас уже не таблиця, а власний парсер без підтримки, який мусить встигати за кожною зміною схеми з боку міністерства.
<Faktura xmlns="http://crd.gov.pl/wzor/2025/06/25/13775/">
<Naglowek>
<KodFormularza kodSystemowy="FA (3)" wersjaSchemy="1-0">FA</KodFormularza>
Namespace і версія схеми: це перші два рядки, на яких валиться зібраний вручну файл. KSeF перевіряє відповідність XML структурі xsd повністю автоматично і відхиляє документ без можливості виправити його на боці системи (Podręcznik KSeF 2.0, частина II). Відхилення означає, що фактура не була виставлена.
Нумерація: перше, що підриває таблицю
Ст. 106e ust. 1 pkt 2 ustawy o VAT вимагає послідовного номера в межах однієї або кількох серій, який однозначно ідентифікує фактуру. Номер KSeF цього обовʼязку не замінює: система надає його вже після прийняття документа, а ваш власний номер має існувати до відправлення.
У таблиці номер зазвичай береться з формули типу =MAX(A:A)+1. Поки користувач один, усе працює. Проблема починається з двох людей в одному файлі на спільному диску: обидва бачать те саме максимальне значення, обидва отримують той самий номер, одне збереження перезаписує інше, і зʼявляється «конфліктна копія». У нормальній системі надання номера є атомарною операцією: рядок лічильника блокується на час транзакції, тож два одночасні виставлення фізично не можуть отримати однаковий номер. У таблиці такого механізму немає і не буде.
Конкретний випадок із практики бухгалтерського бюро в Польщі: клієнт виставляв 12 фактур на місяць із файлу на спільному диску. У травні бухгалтерка і власник працювали паралельно. Результат: дві фактури з номером FV/2026/05/007 і необхідність коригування документа, який уже пройшов через KSeF.
Excel тихо псує дані, яких KSeF не пробачає
Таблиця спроєктована так, щоб вгадувати наміри користувача. Для фіскальних даних це вада, а не перевага.
NIP як число. Введений без апострофа, польський податковий номер втрачає провідні нулі, а на десяти цифрах здатен перескочити в наукову нотацію (
5,26E+09). NIP покупця має потрапити саме в полеNIP, бо лише тоді фактура буде правильно надана покупцеві всередині KSeF.Дати. Автоконвертація при імпорті CSV перетворює
2026-08-04на04.08.2026,08/04/2026або на порядкове число. FA(3) очікує формат ISO.Округлення. Підсумовування у форматі з плаваючою комою дає розбіжності в грошах. KSeF перевіряє узгодженість сум, тож різниця в один grosz між сумою позицій і підсумком дає відхилення.
Автозаміна. Коди товарів, внутрішні індекси та номери рахунків тихо перетворюються на дати або формули.
Комірки, що виконуються. Це не теорія: у файлі CSV значення, яке починається з
=,+,-або@, Excel трактує як формулу. Саме тому при експорті реєстрів у Biurko кожне таке значення отримує префікс-апостроф перед записом у файл. Таблиця з даними контрагентів, завантажена з ненадійного джерела, це вектор атаки, а не бухгалтерський документ.
Таблиця не збереже ні номер KSeF, ні UPO, ні статус відправлення
Виставлення фактури в KSeF не закінчується надсиланням файлу. Після прийняття документа система надає номер KSeF і робить доступним UPO. Саме UPO, а не ваша копія XML, є доказом того, що фактуру виставлено успішно.
Отже, десь має жити повний життєвий цикл документа: сесія, відправлення, проміжний статус, повтор після помилки, отримання UPO, перевірка підпису на UPO, архівація. Плюс винятковi режими: offline24 з обовʼязком надіслати фактуру найпізніше наступного робочого дня та tryb awaryjny (аварійний режим) із терміном 7 робочих днів від завершення аварії. У кожного свій дедлайн, який треба вміти відстежувати заздалегідь.
І ще одне: від 1 січня 2027 року номер KSeF має зʼявлятися в титулі платіжного переказу за фактуру. Номер, якого таблиця не зберегла, не потрапить ані в переказ, ані в подальше звіряння платежів.
Це машина станів, а не колонка. Колонка «відправлено ТАК/НІ», яку заповнюють вручну, перестає бути правдивою на другому тижні.
Коли Excel досі доречний
Чесно: у таблиці є нормальні застосування поруч із KSeF, просто не в ролі реєстру продажу.
Продаж нижче порогу 10 000 zł на місяць до 31 грудня 2026 року, за умови що хтось справді рахує наростаючий підсумок.
Фактури для споживачів (B2C), які не підпадають під обовʼязок надсилання до KSeF.
Прайси, розрахунки маржі, бюджети, сценарії. Тут Excel виграє в будь-якої системи.
Аналіз уже виставлених даних. Реєстр закупівель чи зведення продажу, вивантажені в XLSX для бухгалтера, це звичайний робочий процес.
Разова міграція: упорядкування бази контрагентів і товарів у таблиці перед перенесенням у систему.
Правило просте: Excel як вхід і вихід, а не як книга обліку. Якщо платити за програму поки що не готові, Міністерство фінансів надає безкоштовний Aplikację Podatnika KSeF у веб- та мобільній версіях (деталі на ksef.podatki.gov.pl). Він обмежений, але генерує коректний XML, і це наразі мінімум.
Контрольний список, перш ніж закрити таблицю востаннє
Перевірте, чи виняток узагалі ще ваш: порахуйте продаж брутто за фактурами окремо за кожен місяць 2026 року.
Вивантажте базу контрагентів і перевірте кожен NIP перед імпортом. Звертайте увагу на втрачені провідні нулі та наукову нотацію.
Зафіксуйте один формат нумерації на тип документа і перевірте поточний період на дублікати та пропуски.
Вирішіть, хто у фірмі має право виставляти фактури. У таблиці такого питання не існувало, KSeF перевіряє повноваження при кожному відправленні.
Налаштуйте автентифікацію до KSeF для фірми і протестуйте відправлення на середовищі demo, перш ніж робити це на продакшені.
Заплануйте архівацію UPO разом із XML. Візуалізація в PDF не є доказом виставлення.
Залиште Excel там, де він справді сильний: аналіз, а не виставлення.
Підсумок
Excel програє KSeF не тому, що він старий. Він програє, бо KSeF вимагає трьох речей, яких у таблиці немає структурно: жорсткої XML-структури, гарантії унікальності номера і стійкого стану документа після відправлення. Кожну можна обійти макросом. Жодну не вдасться обходити довго.
Biurko виставляє фактури одразу в структурі FA(3), стежить за безперервністю нумерації, завантажує та перевіряє UPO, а реєстри віддає назад у CSV і XLSX, якщо ваш бухгалтер віддає перевагу таблиці. Створіть безкоштовний акаунт на biurko.io і протестуйте відправлення на власних даних. Безкоштовний план постійний, це не пробний період.
FAQ
Чи можна виставляти фактури в Excel у 2026 році? Так, але тільки поза KSeF і тільки поки ви маєте на це право. До 31 грудня 2026 року це стосується платників, у яких місячна вартість продажу брутто за фактурами не перевищує 10 000 zł. Після перетину порогу обовʼязок KSeF діє починаючи з тієї фактури, якою поріг перевищено.
Чи можна імпортувати фактуру з Excel до KSeF? Безпосередньо ні. KSeF приймає виключно XML-файл, сумісний зі структурою FA(3). Таблиця може бути джерелом даних для програми, яка згенерує цей XML, але сам файл XLSX чи CSV система не прийме.
Чи замінює номер KSeF мою власну нумерацію фактур? Ні. Номер KSeF надає система після прийняття документа. Обовʼязок надати власний послідовний номер, що ідентифікує фактуру, випливає зі ст. 106e ust. 1 ustawy o VAT і залишається на боці виставника.
Що станеться, якщо KSeF відхилить мій XML-файл? Фактура не була виставлена. Система не виправляє документи на своєму боці: треба усунути причину відхилення і надіслати файл повторно. Номер KSeF і UPO ви отримаєте лише після успішного прийняття документа.
Чи потрібна платна програма, щоб виставляти фактури в KSeF? Ні. Міністерство фінансів надає безкоштовний Aplikację Podatnika KSeF у веб- та мобільній версіях. Платні інструменти виправдані при більшій кількості документів, обслуговуванні кількох фірм, масовому надсиланні та автоматичному отриманні UPO.
