Pokaż spis treści

Formularz dokumentu

Nowy dokument i OCR PDF

Formularz dokumentu łączy ręczne wprowadzenie dowodu, załącznik, odczyt PDF i decyzję, czy rekord ma zostać tylko zapisany, czy od razu przejść do dekretacji. System chroni dane z importu bankowego przed przypadkową zmianą, pilnuje roku obrotowego i oddziela podpowiedzi OCR od świadomego zatwierdzenia pól przez operatora.

Praca z formularzem

Tworzenie dokumentu obsługuje dokumenty ręczne, faktury zakupowe, PK i rekordy przygotowane z banku. Jeżeli daty operacji albo księgowania są puste, endpoint podstawia datę dokumentu. Gdy data wychodzi poza aktualny rok roboczy, zapis jest zatrzymywany i wymaga ponownego potwierdzenia flagą confirmFiscalYearMismatch=1.

Załącznik nie jest tylko plikiem do pobrania. System przechowuje metadane i hash, a PDF może zostać użyty do podpowiedzi pól. Odczyt nie zastępuje decyzji operatora: kwoty, daty, kontrahent i kategoria muszą zostać świadomie zatwierdzone.

Akcje formularza

  • Dodaj załącznik. Wysyła plik do /api/documents/files i wiąże go z dokumentem.

  • Odczytaj PDF. Wywołuje /api/documents/files/extract, pokazuje rozpoznane wartości i pozwala przenieść je do pól formularza.

  • Zapisz dokument. Wykonuje create albo update w /api/documents bez tworzenia dekretu.

  • Zapisz i zadekretuj fakturę zakupową. Po aktualizacji dokumentu tworzy dekret kosztu, VAT albo kosztu brutto zależnie od statusu VAT spółki.

  • Zapisz i zadekretuj z banku. Dla dokumentu z CAMT.052 tworzy dekret bankowy bez ręcznego przepisywania danych wyciągu.

Decyzja formularza: zapis roboczy albo dekretacja

flowchart TD
  A["Operator uzupełnia formularz"] --> B["Załącznik PDF lub dane ręczne"]
  B --> C{"Odczytać PDF?"}
  C -->|Tak| D["/api/documents/files/extract"]
  C -->|Nie| E["Ręczna kontrola pól"]
  D --> E["Operator akceptuje lub poprawia podpowiedzi"]
  E --> F{"Data poza rokiem roboczym?"}
  F -->|Tak| G["Ostrzeżenie i wymagane potwierdzenie"]
  F -->|Nie| H{"Tryb zapisu"}
  G --> H
  H -->|Zapisz dokument| I["/api/documents create/update"]
  H -->|Zapisz i zadekretuj| J["PostAndApproveDocumentJournalEntryUseCase"]
  I --> K["Dokument roboczy lub gotowy do kontroli"]
  J --> L["Dekret, walidacja Wn/Ma, audyt"]
  L --> M["Dokument zaksięgowany / podgląd tylko do odczytu"]

Ochrona przed błędami

Źródłowe dane bankowe pozostają nieedytowalne, a dokument zaksięgowany przechodzi do podglądu. To wzmacnia rozliczalność: użytkownik może poprawić decyzję zanim zapis trafi do księgi, ale po zatwierdzeniu korekta powinna iść przez PK albo storno, a nie przez cichą zmianę historii.