Przejdź do głównej zawartości

Kody QR

Faktury wystawione w trybie offline muszą zawierać dwa kody QR zgodnie z dokumentacją techniczną CIRFMF (Centralna Informacja o Rachunkach i Fakturach Ministerstwa Finansów).

KOD I jest zawsze obecny na każdej fakturze (zarówno online, jak i offline). Umożliwia weryfikację autentyczności faktury.

PoleOpis
NIP wystawcyNumer identyfikacji podatkowej sprzedawcy
Data wystawieniaData z pola P_1
Numer KSeFNumer nadany przez KSeF (online) lub tymczasowy identyfikator (offline)
Hash SHA-256Skrót kryptograficzny treści faktury

Odbiorca faktury skanuje KOD I i jest przekierowany na stronę weryfikacji KSeF:

ŚrodowiskoURL weryfikacji
Testhttps://qr-test.ksef.mf.gov.pl/verify
Demohttps://qr-demo.ksef.mf.gov.pl/verify
Produkcjahttps://qr.ksef.mf.gov.pl/verify

Portal potwierdza autentyczność faktury i wyświetla jej dane.

KOD II jest obecny wyłącznie na fakturach offline. Zawiera podpis cyfrowy gwarantujący, że faktura została wystawiona przez uprawniony podmiot mimo niedostępności KSeF.

PoleOpis
Podpis ECDSA P-256Podpis cyfrowy danych faktury kluczem prywatnym certyfikatu offline
Identyfikator certyfikatuNumer seryjny certyfikatu offline
Dane fakturyZakodowane kluczowe dane (NIP, data, kwota)
  1. System tworzy kanoniczny ciąg danych faktury (NIP, data, kwota, hash XML)
  2. Podpisuje go kluczem prywatnym ECDSA P-256 z certyfikatu offline
  3. Koduje podpis i dane w formacie QR

Oba kody QR drukowane są na wizualizacji PDF faktury:

┌──────────────────────────────────┐
│ FAKTURA VAT │
│ │
│ (dane faktury) │
│ │
│ ┌──────┐ ┌──────┐ │
│ │ QR │ │ QR │ │
│ │ KOD I│ │KOD II│ │
│ └──────┘ └──────┘ │
│ Weryfikacja Podpis │
│ offline │
└──────────────────────────────────┘
  • KOD I — po lewej stronie, z etykietą “Weryfikacja”
  • KOD II — po prawej stronie, z etykietą “Podpis offline” (tylko tryb offline)

Dla faktur online (wysłanych bezpośrednio do KSeF) PDF zawiera tylko KOD I.

Kody QR generowane są automatycznie przez PDF Sidecar (Node.js). Proces:

  1. API przesyła dane faktury i certyfikat offline do PDF Sidecar
  2. Sidecar generuje KOD I (hash + dane) i KOD II (podpis ECDSA)
  3. Kody QR wstawiane są do szablonu PDF
  4. Gotowy PDF zapisywany jest w MinIO

Nie jest wymagana żadna konfiguracja — wystarczy wgrany certyfikat offline.