Integracja z KSeF

    Jak połączyć swój system fakturowy z KSeF

    KSeF przyjmuje faktury wyłącznie jako pliki XML zgodne ze schematem FA(3). Jeżeli Twoje faktury powstają gdzie indziej — w systemie handlowym, rozliczeniowym, sklepie albo w arkuszu — pytanie brzmi, co ma je do tego schematu doprowadzić.

    Poniżej cztery realne drogi, z uczciwym wskazaniem, kiedy każda z nich jest właściwa. Dwie z nich prowadzą przez FakturaFlow.

    Cztery drogi do KSeF

    Automatycznie z systemu billingowego

    Podłączasz Stripe, Chargebee albo Xero raz, w ustawieniach. Od tej pory każda wystawiona tam faktura trafia do FakturaFlow w ciągu kilku minut, zostaje sprawdzona i czeka gotowa do wysyłki do KSeF. Nic nie eksportujesz i niczego nie wgrywasz. Dotyczy wyłącznie tych trzech systemów — przy pozostałych zostaje droga plikowa poniżej.

    Kiedy pasuje: Ma sens, gdy fakturujesz w Stripe, Chargebee albo Xero i nie chcesz co miesiąc pamiętać o eksporcie. Wymaga planu Integracja.

    Bezpośrednio przez API KSeF

    Twój system łączy się z KSeF sam: uwierzytelnia się tokenem albo certyfikatem, buduje XML w schemacie FA(3), otwiera sesję, wysyła i odbiera UPO. Całość po stronie dostawcy oprogramowania albo własnego zespołu.

    Kiedy pasuje: Ma sens, gdy system, w którym wystawiasz faktury, już to oferuje albo masz kogo o to poprosić. Najmniej pracy na co dzień, najwięcej na starcie.

    Przez plik z eksportu

    System, w którym powstają faktury, zostaje bez zmian. Eksportujesz z niego zestawienie do CSV, Excela albo XML, a osobne narzędzie zamienia je na FA(3), wysyła sesjami wsadowymi i pobiera UPO. Tą drogą działa FakturaFlow.

    Kiedy pasuje: Ma sens, gdy system nie umie wysyłać do KSeF i nie zanosi się, żeby umiał, a faktur jest za dużo na ręczne przepisywanie.

    Ręcznie w Aplikacji Podatnika KSeF

    Bezpłatna aplikacja Ministerstwa Finansów. Fakturę wprowadza się w formularzu albo wgrywa pojedynczy plik XML. Bez integracji z czymkolwiek.

    Kiedy pasuje: Ma sens przy kilku albo kilkunastu fakturach miesięcznie. Nie ma powodu płacić za narzędzie, którego się nie potrzebuje.

    Kolumny, które rozpoznajemy

    Plik powinien mieć wiersz nagłówka i jedną fakturę na wiersz. Nagłówki dopasowujemy po nazwie, więc w większości przypadków zestawienie wgrywa się bez przerabiania. Wielkość liter nie ma znaczenia, a przy większości nazw rozpoznajemy też zapis bez polskich znaków.

    Kolumna „Potrzebna w pliku” odpowiada na jedno pytanie: czy musisz mieć taką kolumnę w swoim zestawieniu. To nie to samo, co pola wymagane na samej fakturze — danych sprzedawcy nie musisz podawać, bo bierzemy je z ustawień Twojej firmy. Jeżeli w pliku nie ma kwoty brutto, ale jest netto i kolumna ze stawką nazwana dokładnie VAT %, brutto wyliczymy.

    Numer fakturyPotrzebna w pliku: takNumer faktury · Nr faktury · Faktura · Numer · Invoice number · Invoice no
    Data wystawieniaPotrzebna w pliku: takData wystawienia · Data faktury · Data · Issue date · Invoice date
    Nazwa nabywcyPotrzebna w pliku: takNazwa nabywcy · Nabywca · Kontrahent · Klient · Buyer · Buyer name · Customer Company
    Kwota bruttoPotrzebna w pliku: takKwota brutto · Brutto · Wartość brutto · Razem · Do zapłaty · Gross · Gross amount · Total · Amount
    NIP nabywcyPotrzebna w pliku: zależnieNIP nabywcy · NIP kupującego · Nabywca NIP · Buyer NIP · Vat NumberPotrzebny przy nabywcy firmowym. Faktury konsumenckie idą bez niego, z oznaczeniem BrakID.
    NIP sprzedawcyPotrzebna w pliku: nieNIP sprzedawcy · NIP sprzedającego · Sprzedawca NIP · Seller NIPSama faktura go wymaga, ale kolumna w pliku nie jest potrzebna — bierzemy go z danych Twojej firmy. Eksporty z systemów subskrypcyjnych zwykle nie zawierają sprzedawcy.
    Nazwa sprzedawcyPotrzebna w pliku: nieNazwa sprzedawcy · Sprzedawca · Seller · Seller nameJak wyżej — uzupełniamy ją z danych Twojej firmy.
    Data sprzedażyPotrzebna w pliku: nieData sprzedaży · Data dostawy · Sale date
    Kwota nettoPotrzebna w pliku: nieKwota netto · Netto · Wartość netto · Net · Net amount
    Kwota VATPotrzebna w pliku: nieKwota VAT · VAT · Podatek VAT · VAT amount · Tax Total
    WalutaPotrzebna w pliku: nieWaluta · Currency

    Poza CSV i Excelem przyjmujemy też gotowe pliki XML oraz faktury w PDF, z których dane wyciąga parser.

    Skąd zwykle pochodzi plik

    Nie łączymy się z żadnym z poniższych systemów bezpośrednio. Znaczenie ma wyłącznie to, jak wygląda eksport, dlatego opisujemy je kształtem pliku, a nie nazwą producenta.

    Systemy handlowo-magazynowe i ERP

    Subiekt, Comarch ERP Optima, Symfonia, WAPRO, enova i pokrewne. Zwykle eksportują rejestr sprzedaży do Excela albo CSV. Częsty kształt to kolumny netto i stawka VAT bez osobnej kolumny brutto — taki plik też przyjmujemy i brutto wyliczamy.

    Systemy subskrypcyjne i rozliczeniowe

    Stripe, Chargebee i Xero podłączasz bezpośrednio — faktury przychodzą same, bez eksportu (plan Integracja). Recurly, Paddle i pozostałe działają przez plik: ich eksporty są anglojęzyczne i mają własne nazewnictwo — „Amount” oznacza wartość brutto, „Tax Total” kwotę VAT, „Vat Number” numer NIP nabywcy. Te nagłówki rozpoznajemy wprost, bez zmiany nazw kolumn. Przy dostawcy spoza tej listy najprościej przysłać nam próbkę, zanim wgrasz całe zestawienie.

    Sklepy internetowe i platformy sprzedażowe

    Sklep albo platforma sprzedażowa zwykle potrafi wystawić fakturę i wyeksportować listę dokumentów do CSV. Do KSeF trafia potem taki eksport, a nie same zamówienia.

    Arkusze prowadzone ręcznie

    Zwykły plik w Excelu albo Arkuszach Google też jest poprawnym źródłem, o ile ma wiersz nagłówka i jedną fakturę na wiersz. Nie trzeba żadnego systemu, żeby zacząć.

    Czego nie robimy

    • Nie instalujemy się w Twoim systemie. Poza Stripe, Chargebee i Xero nie łączymy się z nim bezpośrednio — pośredniczy plik z eksportu.
    • Nie zastępujemy programu, w którym wystawiasz faktury, ani programu księgowego.
    • Nie udostępniamy własnego API do wgrywania faktur programistycznie.

    Kiedy nie potrzebujesz takiego narzędzia: przy kilku albo kilkunastu fakturach miesięcznie bezpłatna Aplikacja Podatnika KSeF w zupełności wystarczy i warto sprawdzić ją w pierwszej kolejności. Ta strona dotyczy sytuacji, w której faktury powstają w innym systemie i jest ich na tyle dużo, że ręczne przenoszenie przestaje mieć sens. Różnice między kategoriami narzędzi rozkładamy na części w porównaniu narzędzi KSeF, a sam przebieg wysyłki opisujemy na stronie o hurtowej wysyłce faktur.

    Najczęstsze pytania

    Czy macie wtyczkę do mojego systemu?

    Do trzech tak: Stripe, Chargebee i Xero podłączasz bezpośrednio, bez eksportowania czegokolwiek (plan Integracja). Do pozostałych nie — i nie planujemy osobnej wtyczki do każdego programu na rynku. Przy nich pośrednikiem jest plik: eksportujesz zestawienie faktur, wgrywasz je u nas, a my odpowiadamy za mapowanie na FA(3), wysyłkę do KSeF i pobranie UPO. Dzięki temu działa to z każdym systemem, który potrafi wyeksportować dane, i nie wymaga niczego od jego dostawcy.

    Czy kolumny w moim pliku muszą nazywać się dokładnie tak jak w tabeli?

    Nie muszą być identyczne, ale muszą dać się rozpoznać. Parser dopasowuje nagłówki po nazwie, uwzględniając wymienione warianty polskie i angielskie, a przy większości z nich także zapis bez polskich znaków. Jeśli Twój eksport używa nazwy spoza tabeli, najprościej zmienić nagłówek w pliku albo przysłać nam przykładowe zestawienie.

    Co z fakturami dla konsumentów, którzy nie mają numeru NIP?

    Obsługujemy je w tym samym pliku co faktury B2B. W schemacie FA(3) nabywca bez numeru NIP wymaga oznaczenia BrakID zamiast identyfikatora podatkowego, więc zestawienie z przewagą klientów detalicznych nie wymaga ręcznego dzielenia na dwa.

    Czy udostępniacie własne API?

    Obecnie nie. Wysyłka odbywa się przez wgranie pliku w panelu. Jeżeli potrzebujesz połączenia programistycznego, napisz do nas — chcemy wiedzieć, ilu użytkowników tego szuka, zanim to zbudujemy.

    Czy plik z eksportu opuszcza moją firmę?

    Zestawienie wgrane do panelu trafia na nasze serwery, bo to tam powstaje XML i stamtąd idzie wysyłka do KSeF. Inaczej działają nasze darmowe narzędzia publiczne — walidator XML i konwerter PDF pracują w całości w przeglądarce i nie wysyłają pliku nigdzie.

    Jak sprawdzić, czy mój eksport się nada, zanim założę konto?

    Najszybciej darmowym walidatorem: jeśli masz już plik XML, pokaże, czy przejdzie weryfikację FA(3). Przy pliku CSV lub Excel napisz do nas i sprawdzimy go na Twoim zestawieniu, bez zakładania konta.

    Sprawdź to na swoim eksporcie

    Jeżeli nie masz pewności, czy plik z Twojego systemu się nada, najszybciej to po prostu sprawdzić. Przyślij przykładowe zestawienie, a odpowiemy, co się zmapuje, a co wymaga poprawki po Twojej stronie.

    Stan prawny na 15 sierpnia 2026 r. Informacje o obowiązkach w KSeF mają charakter informacyjny i nie stanowią porady podatkowej w rozumieniu ustawy o doradztwie podatkowym.