Перейти до вмісту

Система рахунків-фактур

Модуль рахунків-фактур генерує документи продажу безпосередньо у WooCommerce. Підтримує чотири типи документів, автоматичну нумерацію та PDF.

Стандартний рахунок-фактура ПДВ, що містить:

  • дані продавця та покупця (включно з NIP обох сторін)
  • позиції з назвою, кількістю, ціною нетто, ставкою ПДВ, сумою ПДВ та ціною брутто
  • підсумок із розбивкою за ставками ПДВ
  • номер рахунка-фактури, дату виставлення та дату продажу
  • термін і форму оплати

Коригувальний рахунок-фактура

Section titled “Коригувальний рахунок-фактура”

Коригувальний документ до раніше виставленого рахунка-фактури. Містить:

  • номер і дату коригованого рахунка-фактури
  • позиції до та після коригування
  • різницю вартості
  • причину коригування

Коригувальний рахунок-фактуру можна виставити з панелі замовлення або через REST API.

Спрощений документ продажу для фізичних осіб (без NIP покупця). Містить позиції з цінами брутто та підсумок.

Документ зовнішнього відпуску, що додається до відправлення. Містить перелік продуктів, кількості та можливі примітки до замовлення. Не містить цін.

Перейдіть до WooCommerce > Налаштування > Polski > Модулі PRO > Рахунки-фактури.

ПолеОпис
Назва компаніїПовна назва компанії продавця
NIPІдентифікаційний податковий номер продавця
АдресаВулиця, номер, поштовий індекс, місто
Номер банківського рахункуНомер рахунку для переказів
Контактна електронна поштаАдреса електронної пошти, що відображається на рахунку-фактурі

Плагін пропонує кілька стратегій нумерації рахунків-фактур:

СтратегіяФорматПриклад
РічнаFV/{numer}/{rok}FV/1/2026
МісячнаFV/{numer}/{miesiąc}/{rok}FV/1/04/2026
БезперервнаFV/{numer}FV/1
Власний шаблонВизначається користувачемFV/2026/04/001

Доступні токени для власного формату:

  • {numer} - порядковий номер рахунка-фактури (зі скиданням відповідно до стратегії)
  • {rok} - рік (чотири цифри)
  • {miesiac} - місяць (дві цифри)
  • {dzien} - день (дві цифри)
  • {id_zamowienia} - ID замовлення WooCommerce

Плагін може автоматично генерувати рахунок-фактуру після зміни статусу замовлення на “Виконано” (completed). Увімкніть опцію Автоматична генерація рахунка-фактури в налаштуваннях модуля.

Також можна налаштувати автоматичне надсилання PDF рахунка-фактури як вкладення до електронного листа WooCommerce “Замовлення виконано”.

PDF рахунків-фактур генеруються за допомогою бібліотеки TCPDF. Шаблон PDF містить:

  • логотип компанії (необов’язково, налаштовується в параметрах)
  • дані продавця та покупця
  • таблицю позицій зі стовпцями ПДВ
  • підсумок із розбивкою за ставками ПДВ
  • нижній колонтитул із даними компанії

Плагін використовує шрифт DejaVu Sans, який підтримує польські діакритичні знаки. Додаткове налаштування не потрібне.

Статус рахунка-фактури

Section titled “Статус рахунка-фактури”

Кожний рахунок-фактура проходить через цикл статусів:

Draft (Чернетка) → Issued (Виставлений) → Sent (Надісланий) → Paid (Оплачений)
→ Cancelled (Скасований)
СтатусОпис
DraftРахунок-фактура створений, але ще не виставлений. Можна редагувати
IssuedРахунок-фактура виставлений з присвоєним номером. Не можна редагувати
SentРахунок-фактура надісланий клієнту (електронною поштою або до KSeF)
PaidРахунок-фактура оплачений
CancelledРахунок-фактура скасований. Потрібне виставлення коригування

В адміністративній панелі замовлення WooCommerce модуль додає мета-бокс “Рахунки-фактури” з такими функціями:

  • Виставити рахунок-фактуру - генерує рахунок-фактуру на основі даних замовлення
  • Завантажити PDF - завантажує рахунок-фактуру у форматі PDF
  • Надіслати клієнту - надсилає рахунок-фактуру електронною поштою
  • Виставити коригування - створює коригувальний рахунок-фактуру
  • Історія - перелік усіх документів, пов’язаних із замовленням

Кожна позиція рахунка-фактури містить детальні дані ПДВ:

  • ціна нетто за одиницю
  • ставка ПДВ (23%, 8%, 5%, 0%, зв., нп., оо.)
  • сума ПДВ за одиницю
  • вартість нетто
  • вартість брутто

Плагін автоматично визначає ставку ПДВ із конфігурації WooCommerce Tax. Підтримує кілька ставок ПДВ на одному рахунку-фактурі з коректним підсумком.

Модуль надає ендпоінти REST API для програмного управління рахунками-фактурами.

Список рахунків-фактур

Section titled “Список рахунків-фактур”
GET /wp-json/polski-pro/v1/invoices

Параметри запиту:

ПараметрТипОпис
order_idintФільтр за ID замовлення
statusstringФільтр за статусом (draft, issued, sent, paid, cancelled)
typestringФільтр за типом (invoice, correction, receipt, packing_slip)
date_fromstringДата від (YYYY-MM-DD)
date_tostringДата до (YYYY-MM-DD)
per_pageintКількість результатів на сторінку (за замовчуванням 20)
pageintНомер сторінки

Створення рахунка-фактури

Section titled “Створення рахунка-фактури”
POST /wp-json/polski-pro/v1/invoices
{
"order_id": 123,
"type": "invoice",
"auto_number": true
}
GET /wp-json/polski-pro/v1/invoices/{id}/pdf

Повертає PDF-файл як application/pdf із заголовком Content-Disposition: attachment.

Виставлення коригування

Section titled “Виставлення коригування”
POST /wp-json/polski-pro/v1/invoices/{id}/correction
{
"reason": "Zmiana danych nabywcy",
"items": [
{
"product_id": 45,
"quantity": 1,
"net_price": 100.00,
"vat_rate": 23
}
]
}
GET /wp-json/polski-pro/v1/invoices/stats

Повертає статистику рахунків-фактур: загальна кількість, значення нетто/брутто, розбивка за статусами.

Дія, що викликається перед генерацією рахунка-фактури.

/**
* @param int $order_id ID замówienia
* @param string $type Typ dokumentu (invoice, correction, receipt, packing_slip)
*/
do_action('polski_pro/invoices/before_generate', int $order_id, string $type);

Приклад:

add_action('polski_pro/invoices/before_generate', function (int $order_id, string $type): void {
if ($type === 'invoice') {
// Logowanie generowania faktury
error_log("Generowanie faktury dla zamówienia #{$order_id}");
}
}, 10, 2);

Фільтрує формат номера рахунка-фактури.

/**
* @param string $number Wygenerowany numer faktury
* @param string $type Typ dokumentu
* @param int $order_id ID zamówienia
*/
apply_filters('polski_pro/invoices/number_format', string $number, string $type, int $order_id): string;

Приклад:

add_filter('polski_pro/invoices/number_format', function (string $number, string $type, int $order_id): string {
if ($type === 'correction') {
return 'KOR/' . $number;
}
return $number;
}, 10, 3);

Фільтрує дані, що передаються до шаблону PDF.

/**
* @param array $data Dane faktury (seller, buyer, items, totals)
* @param int $invoice_id ID faktury
*/
apply_filters('polski_pro/invoices/pdf_content', array $data, int $invoice_id): array;

Приклад:

add_filter('polski_pro/invoices/pdf_content', function (array $data, int $invoice_id): array {
$data['footer_note'] = 'Dziękujemy za zakupy!';
return $data;
}, 10, 2);

Найпоширеніші проблеми

Section titled “Найпоширеніші проблеми”

PDF генерує порожні сторінки

Section titled “PDF генерує порожні сторінки”
  1. Перевірте, чи встановлено розширення PHP mbstring
  2. Переконайтеся, що каталог wp-content/uploads/polski-pro/invoices/ має права на запис (755)
  3. Перевірте, чи заповнені дані продавця в налаштуваннях

Нумерація скидається відповідно до обраної стратегії - річна скидається 1 січня, місячна - 1-го числа кожного місяця. Якщо потрібна безперервна нумерація, виберіть стратегію “Безперервна”.

Відсутність ПДВ на позиціях

Section titled “Відсутність ПДВ на позиціях”

Перевірте конфігурацію WooCommerce Tax. Плагін бере ставки ПДВ із податкових налаштувань WooCommerce. Переконайтеся, що ставки правильно налаштовані для Польщі.

Ця сторінка має виключно інформаційний характер і не є юридичною консультацією. Перед впровадженням зверніться до юриста. Polski for WooCommerce - це програмне забезпечення з відкритим кодом (GPLv2), що надається без гарантій.