Skip to content

Translation. Original: offline/automatyczne-okreslanie-trybu-offline.md

Автоматичне визначення режиму відправлення offline

04.10.2025

У випадку рахунків, що надсилаються як online (offlineMode: false), система KSeF може призначити їм режим offline - на основі порівняння дати виставлення з датою прийняття до обробки.

Алгоритм механізму

Для рахунків, що надсилаються як offlineMode: false, система порівнює:

  • дату виставлення рахунку (issueDate, наприклад, P_1 для рахунку відповідно до FA(3)),
  • дату прийняття рахунку в системі KSeF для подальшої обробки (invoicingDate).

Правила:

  • Якщо календарний день з issueDate є раніший ніж календарний день з invoicingDate (порівняння за датою, а не за годиною), система автоматично позначає рахунок як offline, навіть якщо він не був так задекларований.
  • Якщо день issueDate і день invoicingDate однакові, рахунок залишається online.

Значення invoicingDate залежить від режиму відправлення:

  • пакетна сесія - invoicingDate це момент відкриття сесії (дорівнює dateCreated, що повертається в статусі сесії - GET /sessions/{referenceNumber}),
  • інтерактивна сесія - invoicingDate це момент надсилання рахунку.

Це означає, що якщо, наприклад, рахунок було виставлено 2025-10-03 (P_1), а надіслано 2025-10-04 о 00:00:01, то незважаючи на offlineMode: false він буде позначений як рахунок offline.

Приклади

Пакетна сесія відкрита о 23:59:59 3 жовтня: Навіть якщо пакет буде надіслано після опівночі, рахунки залишаться online – оскільки invoicingDate це 3 жовтня (дата відкриття сесії).

Інтерактивна сесія розпочата о 23:59:59 3 жовтня, а рахунки були надіслані після опівночі: Якщо P_1 = 2025-10-03, система позначить їх як offline – оскільки день P_1 є раніший ніж день надсилання.

Пов'язані документи