Podłączenie KSeF

Dwa sposoby połączenia: dostęp tylko do odczytu nadany bilans.ai (jeden podpis Profilem Zaufanym, bez certyfikatu) albo własny certyfikat KSeF. Potem faktury pobierają się same raz dziennie, a wybrany zakres dat ściągniesz ręcznie.

Dwa sposoby połączenia

Firmę z KSeF łączy jej właściciel (rola Właściciel w bilans.ai). Jeśli firma nie ma jeszcze połączenia, po pierwszym logowaniu zobaczy stronę „Połącz firmę z KSeF” z trzema wyborami — opisuje ją artykuł Rejestracja. Tę samą stronę otworzysz później z Ustawienia → Import KSeF przyciskiem „Nadaj dostęp tylko do odczytu”.

Dostęp nadany bilans.ai

Polecane — bez certyfikatu i hasła

Twoja firma nadaje bilans.ai w KSeF uprawnienie do przeglądania faktur. Jeden podpis Profilem Zaufanym (albo podpisem kwalifikowanym), nic nie wgrywasz i nic z Twojego konta KSeF nie zapisujemy. Uprawnienie cofniesz w każdej chwili w Aplikacji Podatnika KSeF.

Własny certyfikat KSeF

Alternatywa

Generujesz certyfikat w Aplikacji Podatnika KSeF i wgrywasz go razem z kluczem prywatnym. Przechowujemy je zaszyfrowane, wyłącznie do pobierania faktur Twojej firmy. Ta droga działa też wtedy, gdy dostęp przez bilans.ai jest chwilowo niedostępny.

W obu przypadkach widzimy wyłącznie dokumenty Twojej firmy i tylko je odczytujemy — faktury otrzymane i wystawione. bilans.ai nie wystawia faktur w imieniu Twojej firmy ani ich nie zmienia. Innych form dostępu do KSeF (logowania hasłem, tokenów) nie obsługujemy.

Dostęp nadany bilans.ai

W KSeF firma może nadać innemu podmiotowi uprawnienie do przeglądania swoich faktur — tak samo biuro rachunkowe dostaje wgląd w faktury klienta. Z tej możliwości korzysta bilans.ai: Twoja firma nadaje uprawnienie „do przeglądania faktur” podmiotowi BILANS.AI P.S.A., a od tej chwili faktury pobieramy własnym certyfikatem KSeF w kontekście Twojej firmy. Uprawnienie nadane kreatorem jest tylko do odczytu, bez prawa przekazywania go dalej. Na liście uprawnień w Aplikacji Podatnika KSeF rozpoznasz je po NIP-ie bilans.ai: 8971979278 — w kolumnie „Uprawniony” jest NIP, nie nazwa.

Jak nadać dostęp — kreator w trzech krokach

  1. Pobierz plik do podpisu. Kreator pobiera z KSeF jednorazowe wyzwanie i zapisuje na dysku plik bilans-ksef-<NIP>.xml. Plik nie zawiera haseł ani kluczy — potwierdza tylko, że osoba uprawniona w firmie nadaje bilans.ai prawo do przeglądania faktur. Od pobrania masz 10 minut na podpis i wgranie; kreator pokazuje licznik, a po czasie prosi o nowy plik.
  2. Podpisz na gov.pl. Przycisk „Podpisz na gov.pl” otwiera w nowej karcie rządową stronę podpisu zaufanego: wskazujesz pobrany plik, logujesz się Profilem Zaufanym i pobierasz podpisany plik .xml. Masz podpis kwalifikowany albo pieczęć z NIP-em firmy? Podpisz ten sam plik w programie swojego dostawcy podpisu (podpis XAdES otaczany). Spółka bez pieczęci: plik podpisuje osoba wskazana w ZAW-FA.
  3. Wgraj podpisany plik. bilans.ai w jednorazowej sesji z Twojego podpisu nadaje sobie uprawnienie, sprawdza własnym certyfikatem, że KSeF już je widzi, i tę sesję zamyka. Trwa to kilka sekund; podpisanego pliku ani tokenów z tej sesji nie zapisujemy.

Po sukcesie firma jest połączona: automatyczny import jest włączony, a od razu rusza pierwsze pobranie — faktury zakupowe i sprzedażowe od 1 kwietnia 2026 do dziś. Kreator przenosi Cię na stronę Import, gdzie widać postęp. Jeśli w tej chwili trwa import z pliku, pierwsze pobranie z KSeF zrobi nocny przebieg albo uruchomisz je ręcznie na tej samej stronie.

Kto podpisuje plik

Osoba, która w KSeF ma do firmy uprawnienia właścicielskie albo prawo zarządzania uprawnieniami: właściciel (w jednoosobowej działalności — Profilem Zaufanym), osoba wskazana w zgłoszeniu ZAW-FA albo pieczęć kwalifikowana z NIP-em firmy. Gdy podpisze ktoś inny, KSeF odmówi, a kreator pokaże „Osoba, która podpisała plik, nie ma uprawnień do tej firmy w KSeF” albo „KSeF nie pozwolił nadać uprawnienia z tego konta”. Osoba zalogowana w bilans.ai i osoba podpisująca nie muszą być tą samą osobą — plik można przekazać do podpisu, byle zmieścić się w 10 minutach.

Wolisz nadać uprawnienie samodzielnie?

Uprawnienie nadaje osoba, która zarządza uprawnieniami firmy w KSeF: właściciel jednoosobowej działalności, osoba wskazana w ZAW-FA, spółka swoją pieczęcią albo osoba, której nadano zarządzanie uprawnieniami.

  1. Otwórz Aplikację Podatnika KSeF — bezpłatny serwis Ministerstwa Finansów. Zaloguj się przez login.gov.pl (Profil Zaufany, mObywatel, bankowość elektroniczna albo e-⁠dowód) albo podpisem lub pieczęcią kwalifikowaną. Jako identyfikator wybierz „NIP podmiotu” i wpisz NIP swojej firmy.
  2. W menu po lewej wybierz Uprawnienia → Nadaj uprawnienie. W polu „Rodzaj uprawnienia” wybierz „Podmiotowi do wystawiania i przeglądania faktur”.
  3. Wpisz NIP 8971979278 i pełną nazwę „BILANS.AI P.S.A.” (oba pokazuje też kreator w bilans.ai). W „Zakresie uprawnień” zaznacz tylko „przeglądania faktur”. Nie zaznaczaj „wystawiania faktur” ani „z prawem do dalszego przekazywania uprawnienia”.
  4. Kliknij „Nadaj uprawnienia” i odświeżaj („Odśwież”), aż zobaczysz „Zakończono pomyślnie” — to może potrwać kilka minut. Wróć do bilans.ai i kliknij „Sprawdź połączenie”.

Sprawdzimy własnym certyfikatem, czy KSeF widzi uprawnienie, i uruchomimy pierwsze pobranie. Jeśli KSeF jeszcze go nie widzi, zobaczysz „KSeF nie widzi jeszcze uprawnienia dla bilans.ai w tej firmie” — odczekaj chwilę i spróbuj ponownie.

Co przechowujemy

Nic z Twojego konta KSeF: ani certyfikatu, ani klucza, ani hasła, ani podpisanego pliku. Jednorazowa sesja z Twojego podpisu żyje tylko podczas nadawania uprawnienia i jest zamykana, zanim dostaniesz odpowiedź. Zapamiętujemy datę nadania dostępu i stan połączenia. Faktury pobieramy certyfikatem bilans.ai, który trzyma wyłącznie osobna usługa do kluczy — ta sama, która u firm z własnym certyfikatem przechowuje ich pliki.

W Ustawienia → Import KSeF na górze jest karta „Dostęp przez bilans.ai” ze stanem „Połączono — tylko odczyt faktur”, datą nadania i przyciskiem „Odłącz”; status importu brzmi „Automatyczny import włączony (przez bilans.ai)”, a formularz własnego certyfikatu jest zwinięty jako alternatywa. Na stronie Import nie ma pól certyfikatu i hasła — ręczne pobranie zakresu dat idzie przez nadany dostęp.

Jak cofnąć dostęp

Uprawnienie cofasz w Aplikacji Podatnika KSeF:

  1. W menu po lewej wybierz Uprawnienia → Zarządzaj uprawnieniami i zakładkę „Obowiązujące uprawnienia”.
  2. Zaznacz wiersz „NIP: 8971979278” — w kolumnie „Uprawniony” jest NIP bilans.ai, nie nazwa.
  3. Kliknij „Odbierz uprawnienie”. W oknie potwierdzenia kliknij czerwony link „Odbierz uprawnienie” — wyróżniony niebieski przycisk to „Zrezygnuj”.
  4. Odświeżaj („Odśwież”), aż pojawi się „Zakończono pomyślnie”.

Sami nie możemy go odebrać — KSeF wymaga do tego uprawnienia do zarządzania uprawnieniami, którego bilans.ai celowo nie ma. W bilans.ai przycisk „Odłącz” na karcie „Dostęp przez bilans.ai” wyłącza importy po naszej stronie i przełącza firmę z powrotem na tryb własnego certyfikatu; od tej chwili nie otwieramy sesji w kontekście Twojej firmy.

Przełącznika Włącz/Wyłącz w tym trybie nie ma: import zatrzymujesz przez „Odłącz”, a wznawiasz, nadając dostęp ponownie (jeśli uprawnienie w KSeF wciąż jest, wystarczy „Sprawdź połączenie”). Wgranie własnego certyfikatu też przełącza firmę na tryb certyfikatu; uprawnienie w KSeF zostaje, dopóki go nie cofniesz.

Gdy KSeF przestanie widzieć uprawnienie

Tak dzieje się, gdy ktoś cofnie uprawnienie w Aplikacji Podatnika KSeF bez odłączania w bilans.ai (albo nadanie nigdy nie doszło do skutku). Najbliższy import — nocny albo ręczny — kończy się komunikatem „Firma cofnęła bilans.ai dostęp do faktur w KSeF albo uprawnienie nie zostało nadane. Nadaj dostęp ponownie w ustawieniach połączenia z KSeF.” Od tej chwili:

  • w Skrzynce na stronie Monitoring pojawia się alert „Dostęp bilans.ai do KSeF cofnięty” (waga krytyczna, raz na dobę, bez osobnego alertu o błędzie importu; e-⁠mail i powiadomienie na telefon włączysz w Monitoring → Ustawienia powiadomień),
  • nocny import pomija firmę do czasu ponownego nadania — automatyczny import pozostaje włączony,
  • karta „Dostęp przez bilans.ai” pokazuje „Dostęp cofnięty w KSeF” z linkiem „Nadaj dostęp ponownie”, a wskaźnik ostatniej aktualizacji danych — „Dostęp bilans.ai cofnięty — nadaj go ponownie”,
  • strona „Połącz firmę z KSeF” pokazuje komunikat „Ostatnie pobranie nie powiodło się: KSeF nie widzi uprawnienia dla bilans.ai” i od razu kreator ponownego nadania.

Nadaj dostęp ponownie — kreatorem albo samodzielnie w Aplikacji Podatnika KSeF i przyciskiem „Sprawdź połączenie”. Blokada znika, rusza pobranie, nocne importy wracają. Znika też po każdym udanym pobraniu w tym trybie, np. ręcznym na stronie Import.

Własny certyfikat KSeF: co potrzebujesz

Jeśli wolisz nie nadawać uprawnienia albo dostęp przez bilans.ai jest chwilowo niedostępny, połączysz firmę własnym certyfikatem KSeF wygenerowanym w Aplikacji Podatnika KSeF (bezpłatnym serwisie Ministerstwa Finansów). Logowania hasłem do KSeF ani tokenów nie obsługujemy — do wyboru jest dostęp nadany bilans.ai albo certyfikat.

Przy generowaniu certyfikatu KSeF wygeneruje Ci dwa pliki naraz:

  • .crt — sam certyfikat (publiczna część, można udostępniać).
  • .key — klucz prywatny (tajna część, zostaje tylko u Ciebie).

Zachowaj plik .key lokalnie — to jedyny moment, kiedy klucz prywatny jest dostępny do pobrania. Z Aplikacji Podatnika KSeF nie da się go potem ponownie ściągnąć. Gdy go zgubisz, musisz wygenerować nowy certyfikat od początku.

Jeśli wracasz później do listy certyfikatów w KSeF i wybierasz pobranie w formacie PEM, dostaniesz tylko plik certyfikatu (Base64, równoważnik .crt) — bez klucza prywatnego. To celowe zachowanie KSeF, nie błąd.

Format wgrywania w bilans.ai

Możesz wgrać certyfikat na dwa sposoby — wybierasz w formularzu wgrywania:

  • Dwa pliki .crt + .key — standardowy przypadek, dokładnie te dwa pliki z KSeF.
  • Jeden plik .pem — gdy samodzielnie połączyłeś oba pliki w jeden (np. cat cert.crt cert.key > combined.pem) albo używasz narzędzi openssl.

Klucz prywatny z KSeF jest zawsze zabezpieczony hasłem, które ustawiłeś w Aplikacji Podatnika KSeF przy generowaniu certyfikatu — podajesz je w trzecim polu. bilans.ai odszyfrowuje klucz lokalnie w Twojej przeglądarce, samo hasło nigdy nie opuszcza Twojego urządzenia.

Automatyczny import

Automatyczny import działa w obu trybach połączenia. Przy dostępie nadanym bilans.ai włącza się sam w chwili nadania dostępu — nic więcej nie konfigurujesz. Przy własnym certyfikacie wchodzisz w Ustawienia → Import KSeF: wgrywasz certyfikat, włączasz przełącznik i od tego momentu nowe faktury wpadają same.

Przy wgrywaniu wybierasz format certyfikatu (dwa pliki .crt + .key albo jeden plik .pem) i wskazujesz odpowiednie pliki. Podajesz hasło do klucza — bilans.ai odszyfrowuje klucz lokalnie w Twojej przeglądarce, więc samo hasło nigdy nie opuszcza Twojego urządzenia.

Raz dziennie, wcześnie rano, system pobiera nowe faktury z KSeF — od dnia poprzedzającego ostatnią zapisaną fakturę do dziś. Po pobraniu pozycje faktur dostają kategorie, a nowe faktury kosztowe przechodzą kontrolę nieprawidłowości: duplikaty, zmiana rachunku dostawcy, NIP spoza rejestru GUS.

Status automatycznego importu (włączony / wyłączony, ostatni udany przebieg, a przy własnym certyfikacie jego ważność) widzisz na tej samej zakładce. Przy własnym certyfikacie możesz w każdej chwili tymczasowo wyłączyć import bez usuwania certyfikatu; przy dostępie nadanym bilans.ai import zatrzymuje przycisk „Odłącz”.

Co przechowujemy

Własny certyfikat i klucz prywatny zapisujemy wyłącznie w zaszyfrowanej formie. Szyfruje je, przechowuje i odszyfrowuje osobna usługa bilans.ai przeznaczona tylko do tego celu, a każda operacja trafia do jej rejestru zdarzeń. Hasło do klucza nigdy nie jest zapisywane — używamy go jednorazowo, w momencie wgrywania, do odszyfrowania klucza w przeglądarce. Przy dostępie nadanym bilans.ai nie przechowujemy nic z Twojego konta KSeF (sekcja wyżej).
Zakładka Automatyczny import KSeF — wybór formatu certyfikatu, pola na pliki, hasło do klucza i przełącznik włączenia
Ustawienia → Import KSeF z własnym certyfikatem — wgrywasz raz, działa codziennie.

Ręczne pobranie

Ręczne pobranie służy do jednorazowego ściągnięcia konkretnego zakresu dat — np. historii z poprzednich miesięcy (od startu KSeF w lutym 2026), której nie ma jeszcze w automatycznym imporcie, albo testowego pobrania na świeżym koncie, zanim włączysz codzienne działanie.

Wchodzisz w Import z bocznego menu — w grupie „Narzędzia" na dole nawigacji. Wybierasz:

  • Zakres dat — od kiedy do kiedy ściągnąć faktury (data wpływu do KSeF, nie data wystawienia).
  • Strumień — zakupy (koszty), sprzedaż (przychody) albo oba naraz.
  • Format certyfikatu, pliki i hasło do klucza — tylko przy własnym certyfikacie (.crt + .key albo .pem, tak samo jak w automatycznym imporcie). Przy dostępie nadanym bilans.ai tych pól nie ma; pod formularzem widzisz dopisek „Pobieramy przez dostęp nadany bilans.ai — bez certyfikatu i hasła”.

Wgrany do ręcznego pobrania certyfikat nie jest zapisywany — używamy go tylko na czas tej jednej operacji i zapominamy. Każde kolejne ręczne pobranie wymaga ponownego wgrania pliku.

Jeśli chcesz ściągać faktury raz dziennie bez ręcznego klikania, włącz automatyczny import — przy dostępie nadanym bilans.ai jest włączony od razu, a przy własnym certyfikacie zapisujesz certyfikat w Ustawienia → Import KSeF, w zaszyfrowanym magazynie dostępnym dla codziennego procesu w tle.

Limity miesięczne

Każdy plan ma miesięczny limit liczby faktur (Darmowy najmniejszy, Enterprise bez limitu). Limit liczy się dla miesiąca daty wpływu faktury do KSeF i jest wspólny dla kosztów, sprzedaży i wszystkich źródeł importu. Jeśli w danym miesiącu faktur jest więcej, zapisujemy te, które wpłynęły najwcześniej, a pozostałe odnotowujemy jako pominięte. Po przejściu na wyższy plan pominięte faktury są pobierane automatycznie.

Limity są ustawione tak, żeby pokryły potrzeby zdecydowanej większości firm — od mikro do średniego biznesu. Jeśli żadna z naszych subskrypcji nie pokrywa Twojej skali (np. masz wyjątkowo wysoki wolumen faktur albo specyficzny tryb pracy), napisz do nas — wspólnie ułożymy rozwiązanie dopasowane do Twojej firmy.

Strona Import, sekcja importu z KSeF — wybór zakresu dat, strumienia, formatu certyfikatu, pola na pliki i hasło
Import z KSeF z własnym certyfikatem — ręczne pobranie konkretnego zakresu dat, certyfikat nie jest zapisywany.

Co jeśli coś nie działa

Dostęp bilans.ai cofnięty w KSeF

Import kończy się komunikatem „Firma cofnęła bilans.ai dostęp do faktur w KSeF albo uprawnienie nie zostało nadane”, a w Skrzynce jest alert „Dostęp bilans.ai do KSeF cofnięty”. Nadaj dostęp ponownie: link „Nadaj dostęp ponownie” na karcie „Dostęp przez bilans.ai” albo „nadaj ponownie” przy wskaźniku ostatniej aktualizacji danych prowadzą na stronę „Połącz firmę z KSeF”. Co dokładnie się dzieje, opisuje sekcja Dostęp nadany bilans.ai.

Kreator nie przyjmuje pliku

Najczęstsze powody i komunikaty: wgrałeś pobrany plik zamiast podpisanego („Ten plik nie jest podpisany”), minęło 10 minut od pobrania („Plik wygasł”), KSeF odrzucił podpis („KSeF nie przyjął podpisanego pliku”), plik pobrano na koncie innej firmy („Plik dotyczy innej firmy”) albo podpisała go osoba bez uprawnień do firmy w KSeF. W każdym przypadku pobierz nowy plik i podpisz go właściwą osobą.

Dostęp przez bilans.ai jest chwilowo niedostępny

Taki komunikat na stronie „Połącz firmę z KSeF” (zostaje tylko droga z własnym certyfikatem) albo przy imporcie już połączonej firmy — „Dostęp przez bilans.ai jest chwilowo niedostępny po naszej stronie. Pracujemy nad tym — nic nie musisz zmieniać, import ruszy po usunięciu usterki.” — oznacza usterkę po naszej stronie, nie Twojej. Nic nie musisz robić; jeśli się spieszysz, połącz firmę własnym certyfikatem.

Certyfikat wygasł

Dotyczy własnego certyfikatu. Certyfikaty KSeF mają datę ważności (zwykle 1-2 lata). Ostrzegamy mailem 30 / 14 / 7 / 1 dzień przed wygaśnięciem — a jeśli certyfikat nie zostanie wymieniony, przypominamy też w dniu wygaśnięcia i po nim. Generujesz nowy w Aplikacji Podatnika KSeF i wgrywasz w Ustawienia → Import KSeF. Nowy certyfikat zastępuje stary, a automatyczny import pozostaje włączony. Przy dostępie nadanym bilans.ai nie masz czego odnawiać.

Brak nowych faktur w bilans.ai

Sprawdź status automatycznego importu w Ustawienia → Import KSeF. Jeśli ostatni przebieg się nie udał, zobaczysz tam komunikat błędu (najczęstsze przyczyny: certyfikat wygasł, cofnięte uprawnienie dla bilans.ai, KSeF w trakcie konserwacji, problem z siecią).

Własny certyfikat: KSeF nie nadał certyfikatowi uprawnień

KSeF nie nadał temu certyfikatowi uprawnień do faktur firmy. bilans.ai tylko pobiera faktury (otrzymane i wystawione) — nie wystawia ich ani nie modyfikuje. Nadaj uprawnienia w KSeF (Uprawnienia → Nadanie uprawnień) albo użyj certyfikatu osoby, która już je ma, i wgraj go ponownie.

Plik .pem nie zawiera klucza prywatnego

Pobranie z listy certyfikatów w KSeF (opcja „format PEM") daje sam certyfikat — bez klucza prywatnego. Klucz dostajesz tylko raz, w momencie generowania certyfikatu, jako osobny plik .key. Wybierz wariant .crt + .key i wgraj oba pliki osobno (klucz musisz mieć z chwili generacji).

Zgubiłem plik .key

Klucza prywatnego z KSeF nie można odzyskać — to celowe zachowanie systemu (klucza nie pobierzesz z Aplikacji Podatnika KSeF drugi raz). Wygeneruj nowy certyfikat w Aplikacji Podatnika KSeF (stary możesz zostawić — wygaśnie sam) i tym razem zachowaj plik .key lokalnie zaraz po pobraniu. Albo zamiast nowego certyfikatu nadaj bilans.ai dostęp tylko do odczytu — bez plików i haseł.