Przejdź do głównej treści
VeriFactu

Zadanie «Verifactu: Nightly Integrity Check»: co robi i na co patrzeć

Zadanie Verifactu: Nightly Integrity Check działa raz dziennie, po instalacji jest aktywne i dla każdego aktywnego łańcucha przelicza skrót wszystkich jego rekordów, a następnie porównuje go z zapisanym. Jeśli któryś się nie zgadza, zatrzymuje się w tym miejscu i wysyła alert o zerwaniu łańcucha. Tutaj znajdziesz, co robi przy każdym przebiegu i na co spojrzeć, gdy wydaje się, że nic nie robi.

FlexigoTech · Odpowiada: Víctor Gómez · Aktualizacja: 5 listopada 2026

Najważniejsze

Moduł
VeriFactu
Wersje
Odoo 17, 18, 19 i 20
Sprawdzone
w kodzie źródłowym modułu, wersja 17.0 i 20.0 · w źródłach podanych na końcu
Czas czytania
4 min

Co robi przy każdym przebiegu

Zadanie wyszukuje aktywne łańcuchy i dla każdego z nich wywołuje weryfikację integralności. Wszystko, co ważne, dzieje się wewnątrz tej weryfikacji: przelicza skrót każdego rekordu i porównuje go z zapisanym. Skrót to SHA-256 rekordu powiązanego z poprzednim, a AEAT przelicza go na własną rękę: jeśli się nie zgadza, przyjmuje rekord z błędem, który trzeba naprawić.

Zadanie istnieje we wszystkich opublikowanych gałęziach modułu (17.0, 18.0, 19.0 i 20.0), który jest opublikowany w Odoo Apps dla tych czterech wersji. Ten schemat podsumowuje zadanie oraz menu, z którego otwiera się łańcuchy:

Schemat wykonany kodem, nie ekran Odoo: u góry zadanie zaplanowane, które działa raz dziennie i jest aktywne po instalacji, niżej menu Verifactu / SIF › Compliance Records › Chain State
Schemat wygenerowany na podstawie kodu modułu, nie zrzut ekranu z Odoo.

Szczegóły, których nie widać na karcie

Sprawdza tylko aktywne łańcuchy, jeden po drugim

Zadanie nie przegląda wszystkich istniejących łańcuchów: szuka wyłącznie aktywnych i uruchamia weryfikację każdego z osobna. Każdy łańcuch należy do jednej firmy. Na karcie All Chain States (Asesoría) masz pole Company, aby wiedzieć, której firmy dotyczy.

Czyta cały łańcuch przy każdym przebiegu

Weryfikacja wykonuje zapytanie, które łączy rekordy rejestracji i anulowania firmy i sortuje je według numeru rekordu. Następnie przechodzi je od początku do końca. Kod nie startuje od punktu pośredniego: każdy przebieg zaczyna się od pierwszego rekordu.

Przelicza każdy skrót na podstawie zapisanych danych

Dla każdego rekordu rejestracji kod odtwarza skrót z tych zapisanych danych: NIF wystawcy, numer seryjny, data wystawienia, typ faktury (F1, jeśli puste), łączna kwota podatku obliczona z podstaw opodatkowania, kwota całkowita, skrót poprzedniego rekordu oraz data i godzina wygenerowania ze strefą czasową. Pierwszy rekord zaczyna od pustego skrótu poprzedniego.

NIF wystawcy jest używany bez prefiksu ES. Jeśli firma ma własny NIF dla Verifactu, kod woli go od ogólnego numeru VAT. Zmiana któregokolwiek z tych danych po wygenerowaniu rekordu sprawia, że przeliczony skrót przestaje się zgadzać z zapisanym.

Anulowania liczone są z innymi etykietami

Rekordy anulowania używają własnego wzoru: nie mają typu faktury, kwoty podatku ani kwoty całkowitej, a ich etykiety pochodzą z anulowanej faktury. Kod akceptuje także anulowania wygenerowane przed wersją 1.3.4 modułu, które liczono z etykietami rekordów rejestracji: jeśli zapisany skrót zgadza się z tym dawnym obliczeniem, uznaje go za poprawny.

Zatrzymuje się na pierwszym zerwaniu i ostrzega

Gdy tylko zapisany skrót nie zgadza się z przeliczonym, weryfikacja się zatrzymuje: nie przechodzi do kolejnych rekordów tego łańcucha. Zwraca, ile rekordów sprawdziła do tego momentu, oraz pierwszy zerwany rekord, z jego numerem rekordu, numerem seryjnym, oczekiwanym skrótem i zapisanym skrótem.

Ten sam krok wysyła alert o zerwaniu łańcucha dla firmy, z numerem rekordu i numerem seryjnym, w którym nastąpiło zerwanie. Jeśli cały łańcuch się zgadza, weryfikacja zwraca, że przeszła pomyślnie, wraz z łączną liczbą sprawdzonych rekordów.

Częstotliwość to raz dziennie, a w Odoo 17 powtarza się bez końca

Zadanie działa raz dziennie i jest aktywne po instalacji. W Odoo 17.0 jest dodatkowo skonfigurowane tak, aby powtarzało się bez końca.

Jeśli wydaje się, że nic nie robi

Zanim zaczniesz podejrzewać zadanie, sprawdź to:

  • Czy jest jakiś aktywny łańcuch? Jeśli nie ma żadnego, wyszukiwanie niczego nie zwraca i nie ma czego weryfikować.
  • Czy zadanie nadal jest aktywne? Po instalacji jest aktywne, więc jeśli nie działa, sprawdź, czy wciąż jest aktywne.
  • Czego można oczekiwać od poprawnego przebiegu? Zadanie jedynie wywołuje weryfikację każdego łańcucha, a nienaruszony łańcuch zwraca, że przeszedł pomyślnie, wraz z łączną liczbą sprawdzonych rekordów. Dopiero zerwanie wysyła alert o zerwaniu łańcucha.
  • Czy widzisz menu? Karty poszczególnych łańcuchów otwierasz z Verifactu / SIF › Compliance Records › Chain State. Każdy poziom wymaga innych uprawnień.
Lista Verifactu / SIF › Compliance Records › Chain State z jednym wierszem firmy demonstracyjnej, aktywnej i z sumami równymi zero
Lista, jeszcze bez rekordów: jeden wiersz, a reszta ekranu pusta.

Uprawnienia menu, poziom po poziomie

Jeśli nie masz uprawnienia do danego poziomu, tego poziomu nie widzisz. Oto te, których wymaga każdy z nich:

Poziom menuUprawnienia, które go pokazują
Verifactu / SIFAccountant, Asesoría Operator, Auditor (read-only), Privacy Officer, SIF Manager
Compliance RecordsAccountant, Auditor (read-only), SIF Manager
Chain StateAuditor (read-only), SIF Manager

Tylko z uprawnieniem Accountant widać dwa pierwsze poziomy, ale nie Chain State. Jeśli ktoś mówi, że nie może znaleźć menu, najpierw sprawdź jego uprawnienia.

Więcej lektury i pomoc

Jeśli wdrażasz Odoo i chcesz, aby VeriFactu dobrze współgrało z Twoim fakturowaniem, FlexigoTech wdraża Odoo 17, 18, 19 i 20 oraz tworzy konektory i integracje na zamówienie. Moduł znajdziesz na jego karcie w Odoo Apps.

Czytaj dalej

Co robi przycisk `Run Pre-flight` w VeriFactu EspañaCo robi przycisk Run Pre-flight w VeriFactu España dla Odoo: kiedy jest widoczny, co sprawdza w każdym wierszu, co zapisuje i jakie błędy zwraca.
Sprawdzone w kodzie źródłowym modułu (wersja 17.0 i 20.0) i w podlinkowanych źródłach

Źródła