---
title: "Pierwszy dokument"
description: "Kompletny przepływ od wgrania pierwszej faktury zakupu do zaksięgowania w dzienniku — pięć kroków, każdy z linkiem do strony szczegółowej. Sprawdzian, że onboarding, plan kont, bilans otwarcia i mapowania kategorii są poprawnie skonfigurowane."
url: https://numifyai.com/docs/pierwsze-kroki/pierwszy-dokument
review_status: internal
updated: 2026-04-16
---


**Pierwszy dokument** to sprawdzian, że onboarding przeszedł pomyślnie.
Wgrywasz jedną fakturę zakupu i obserwujesz, jak Numify prowadzi ją
od pliku PDF do zapisu w dzienniku — przez pięć kroków, z weryfikacją
na każdym etapie.

<ComplianceDisclaimer />

Tutaj tylko **chodzimy przez flow na wysokim poziomie**. Po każdym
kroku jest link do strony, która opisuje go w pełni — nie będziemy
duplikować tych treści.

## Zanim zaczniesz [#zanim-zaczniesz]

Sprawdź, że masz:

* **Założoną spółkę** (<FeatureRef slug="/docs/pierwsze-kroki/zakladanie-firmy">zakładanie firmy</FeatureRef>)
  → plan kont zasiany automatycznie.
* **Bilans otwarcia** (<FeatureRef slug="/docs/pierwsze-kroki/bilans-otwarcia">bilans otwarcia</FeatureRef>)
  → przynajmniej konto <AccountRef code="130" /> ma saldo, z którego
  można zapłacić fakturę, i konto <AccountRef code="800" /> balansuje.
* **Status VAT** skonfigurowany w `/settings`.
* **Plik PDF** faktury zakupu (dostawca, data, kwoty, stawka VAT).

## Krok 1 — Wgranie dokumentu [#krok-1--wgranie-dokumentu]

{/* SCREENSHOT: ekran /documents — drag-and-drop zone z przeciąganą fakturą PDF */}

Na `/documents` przeciągasz plik PDF (lub PNG/JPG/HEIC) do obszaru
upload. Numify:

1. Zapisuje oryginał w Cloudflare R2 — bez modyfikacji.
2. Tworzy zadanie w kolejce BullMQ do asynchronicznego parsowania.
3. Pokazuje wiersz w tabeli ze statusem „Przetwarzanie…".

Pełny opis obsługiwanych formatów i pipeline'u parsowania →
<FeatureRef slug="/docs/korzystanie-z-numify/dokumenty">Dokumenty</FeatureRef>.

## Krok 2 — Ekstrakcja AI [#krok-2--ekstrakcja-ai]

{/* SCREENSHOT: ekran /documents/[id] — podgląd PDF z panelem wyekstrahowanych pól */}

Po 10–30 sekundach status zmienia się na „Do weryfikacji". Klikając
w wiersz, otwierasz podgląd z dwoma panelami:

* **Lewy** — oryginał faktury (PDF).
* **Prawy** — dane wyodrębnione przez model AI:
  * Nazwa i NIP dostawcy.
  * Numer faktury.
  * Data wystawienia i data sprzedaży.
  * Kwota netto, VAT, brutto per stawka.
  * Sugerowana kategoria kosztowa.

Dane spełniają schemat Zod — jeśli model nie wyekstrahuje pola
wymaganego (np. NIP), Numify pokaże puste pole do ręcznego uzupełnienia.

## Krok 3 — Weryfikacja [#krok-3--weryfikacja]

**Ty decydujesz, czy dane są poprawne.** To jest **zasada HITL**
(Human in the Loop) w Numify — model AI nigdy nie księguje bez
potwierdzenia przez człowieka.

Typowe rzeczy do sprawdzenia:

* **NIP dostawcy** — czy zgadza się z nagłówkiem faktury. Jeśli
  dostawca nie istnieje jeszcze w <FeatureRef slug="/docs/korzystanie-z-numify/kontrahenci">kontrahentach</FeatureRef>,
  Numify zaproponuje utworzenie nowego rekordu (z automatycznym
  pobraniem z <ServiceRef path="src/lib/services/krs-lookup.ts" /> / GUS).
* **Kwoty** — czy netto + VAT = brutto z dokładnością co do grosza.
  Błędy rachunkowe w fakturze źródłowej to problem dostawcy
  (<LegalRef act="UoR" art="22" paragraph="2" /> — korekta przez
  wysłanie sprostowania), ale zauważyć je należy teraz.
* **Stawka VAT** — 23%, 8%, 5%, 0%, „zw." — model czasami myli, zwłaszcza
  na fakturach zagranicznych (VIES).
* **Kategoria** — czy sugerowana kategoria (np. „usługi obce") pasuje
  do treści faktury. Kategoria wyznacza konta debet/credit/VAT przez
  mapowania z <FeatureRef slug="/docs/pierwsze-kroki/plan-kont">planu kont</FeatureRef>.

## Krok 4 — Powstaje transakcja [#krok-4--powstaje-transakcja]

{/* SCREENSHOT: ekran /transactions z nowo utworzoną transakcją w statusie Unverified */}

Kliknięcie **Zatwierdź dane** tworzy **transakcję** (`type: expense`)
w tabeli `transactions` ze statusem **niezweryfikowana**. Transakcja
to *zamiar* księgowania — nie wygenerowała jeszcze zapisu w dzienniku.

Na ekranie <FeatureRef slug="/docs/korzystanie-z-numify/transakcje">transakcje</FeatureRef>
widzisz ten wiersz i możesz:

* Zmienić kategorię / konto przed zaksięgowaniem.
* Dodać opis / notatkę.
* Przypisać projekt (jeśli projekt istnieje).
* Oznaczyć jako **B+R** (badania i rozwój) — wpływa na ulgi podatkowe.

## Krok 5 — Zapis w dzienniku [#krok-5--zapis-w-dzienniku]

Klikasz **Zweryfikuj transakcję**. Numify:

1. Sprawdza, że okres obrachunkowy jest **otwarty** (przez
   <ServiceRef path="src/lib/services/fiscal-periods.ts" function="ensurePeriodOpen" />).
2. Wywołuje auto-dekretowanie — dobiera konta debet/credit/VAT
   z mapowań kategorii.
3. Tworzy zapis w `journal_entries` (źródło: `transaction`) i wiersze
   w `journal_lines` — co najmniej dwa (debet + kredyt), zgodnie
   z zasadą podwójnego zapisu (<LegalRef act="UoR" art="14" paragraph="1" />).
4. Waliduje, że debet = kredyt (co do grosza).
5. Ustawia zapisowi `isPosted: true`, nadaje kolejny numer w dzienniku.

Dla typowej faktury zakupu usługi (kategoria „usługi obce", 23% VAT)
zapis wygląda tak:

| Nr | Konto                                              | Debet | Kredyt |
| -- | -------------------------------------------------- | ----- | ------ |
| 1  | <AccountRef code="402" /> Usługi obce              | Netto | —      |
| 2  | <AccountRef code="221" /> VAT naliczony            | VAT   | —      |
| 3  | <AccountRef code="202" /> Rozrachunki z dostawcami | —     | Brutto |

Zapis pojawia się w **dzienniku** (`/journal`) z kolejnym numerem
i jest **nieusuwalny** (<LegalRef act="UoR" art="25" paragraph="1" />).
Ewentualną korektę wprowadza się zapisem storno.

## Co dzieje się **po** zaksięgowaniu [#co-dzieje-się-po-zaksięgowaniu]

Po pierwszym zapisie można zaobserwować:

* **Pulpit** (`/dashboard`) — karta „Koszty" zwiększa się o kwotę
  brutto zatwierdzonej transakcji (zobacz
  <FeatureRef slug="/docs/korzystanie-z-numify/pulpit">pulpit</FeatureRef>).
* **Dziennik** — zapis z kolejnym numerem, statusem „Zaksięgowany"
  i źródłem „transaction".
* **Księga główna** (`/general-ledger`) — salda kont <AccountRef code="402" />,
  <AccountRef code="221" /> i <AccountRef code="202" /> zaktualizowane.
* **Rejestr VAT zakupu** — dodany wiersz z kwotą netto i VAT do
  odliczenia.
* **Trial balance** (<LegalRef act="UoR" art="18" paragraph="1" />) —
  zaktualizowane saldo; zapis można zwierzyć z dziennikiem.

## Kiedy coś pójdzie nie tak [#kiedy-coś-pójdzie-nie-tak]

| Objaw                                     | Najprawdopodobniejsza przyczyna                                                          | Gdzie zajrzeć                                                                                         |
| ----------------------------------------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| „Okres jest zamknięty" przy zatwierdzaniu | Okres obrachunkowy zamknięty lub zablokowany — transakcja ma datę spoza otwartego okresu | <FeatureRef slug="/docs/korzystanie-z-numify">Okresy obrachunkowe</FeatureRef> (docs w przygotowaniu) |
| „Brak mapowania dla kategorii"            | Kategoria nie ma przypisanych kont debet/credit                                          | `/settings` → Mapowania kategorii                                                                     |
| Debet ≠ kredyt                            | Błąd zaokrągleń w danych wyekstrahowanych                                                | Wróć do weryfikacji dokumentu; sprawdź kwoty co do grosza                                             |
| Status „Błąd parsowania"                  | Plik uszkodzony lub model nie wyodrębnił wymaganych pól                                  | <FeatureRef slug="/docs/korzystanie-z-numify/dokumenty">Dokumenty → sekcja błędów</FeatureRef>        |

## Dalej [#dalej]

Jeśli pierwszy dokument zaksięgował się poprawnie — **onboarding jest
zakończony**. Do pracy bieżącej zajrzyj do
<FeatureRef slug="/docs/korzystanie-z-numify">Korzystania z Numify</FeatureRef>,
a do planowania terminów (VAT, CIT, sprawozdanie) — do
<FeatureRef slug="/docs/zgodnosc-z-prawem/kalendarz-terminow">kalendarza terminów</FeatureRef>.
