KSeF Decision API
Czy ta faktura musi trafić do KSeF? Jedno zapytanie, decyzja z podstawą prawną
Wysyłasz dane transakcji, dostajesz jednoznaczną odpowiedź: czy dokument podlega obowiązkowi wystawienia w Krajowym Systemie e-Faktur, jak go dostarczyć nabywcy, z jakiego przepisu to wynika i jakie założenia przyjęliśmy przy brakujących danych. Bez integracji z KSeF, bez przechowywania Twoich faktur — jedna decyzja na jedno żądanie.
Plan Free: 1 000 zapytań miesięcznie, bez karty. Reguły bazowe w wersji 2026.09.1.
Nie piszesz kodu? Po założeniu darmowego konta sprawdzisz dowolną fakturę w playgroundzie: formularz w przeglądarce, ten sam silnik co API, odpowiedź z artykułem ustawy. Bez karty, bez zapisywania wpisanych danych.
Jak sprawdzić obowiązek KSeF przez API
Krok 1
Klucz API
Zakładasz konto, potwierdzasz e-mail i generujesz klucz w panelu. Klucz pokazujemy raz — potem widzisz już tylko jego prefiks.
Krok 2
POST /v1/check
Wysyłasz NIP sprzedawcy, dane nabywcy, typ dokumentu i (opcjonalnie) datę oraz miesięczną sprzedaż. Status VAT kontrahenta pobieramy sami z Wykazu podatników VAT.
Krok 3
Decyzja z uzasadnieniem
W odpowiedzi: ksef_required, reason, delivery,
lista założeń i dopasowana reguła z podstawą prawną (legal_basis w
dokumentacji).
Przykład: faktura B2B a obowiązek KSeF
Faktura B2B krajowa, sprzedawca powyżej progu 10 000 zł miesięcznie.
Żądanie
curl -X POST https://czyksef.pl/v1/check \
-H "Authorization: Bearer kdk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-H "content-type: application/json" \
-d '{
"seller_nip": "1234563218",
"buyer_nip": "9876543210",
"document_type": "invoice",
"seller_monthly_sales_pln": 50000
}'
Odpowiedź
{
"ksef_required": true,
"delivery": "ksef",
"reason": "b2b_domestic",
"applicable_schema": "FA(3)",
"legal": {
"ksef_required": true,
"reason": "b2b_domestic",
"matched_rule": {
"layer": "base",
"id": "b2b_domestic",
"tier": "soft"
}
},
"assumptions": [],
"confidence": "full",
"base_rules_version": "2026.09.1",
"checked_at": "2026-09-06T12:00:00.000Z"
}
Pełny opis pól, słownik kodów reason i lista założeń:
dokumentacja API.
Cennik
Limit liczony w miesiącu kalendarzowym (czas warszawski). Po przekroczeniu limitu API zwraca 429 — ostrzegamy e-mailem przy 80 % i 100 % wykorzystania.
Free
0 zł netto / mies.
bez opłat, bez karty
- 1 000 zapytań / mies.
- 60 zapytań / min.
- 2 klucze API
Starter
najczęściej wybierany49 zł netto / mies.
60,27 zł brutto (z 23 % VAT)
- 10 000 zapytań / mies.
- 120 zapytań / min.
- 5 klucze API
Pro
199 zł netto / mies.
244,77 zł brutto (z 23 % VAT)
- 100 000 zapytań / mies.
- 300 zapytań / min.
- 20 klucze API
Ceny netto w złotych; do ceny doliczamy 23 % VAT (firmy z UE z ważnym numerem VAT rozliczają odwrotne obciążenie). Płatność kartą przez Stripe, faktura z NIP; plan Free zakładasz od ręki bez karty.
Najczęstsze pytania o obowiązek KSeF
Czy faktura B2C musi być wystawiona w KSeF?
Faktury dla osób fizycznych nieprowadzących działalności nie podlegają obowiązkowi KSeF — API zwraca ksef_required: false i reason: b2c_consumer. Jeśli nie podasz NIP-u ani zagranicznego identyfikatora nabywcy, przyjmujemy konsumenta i mówimy o tym wprost w polu assumptions.
Czy faktura dla zagranicznego kontrahenta musi być w KSeF?
Faktura dla zagranicznej firmy jest wystawiana w KSeF, ale udostępniana nabywcy poza systemem, w uzgodniony sposób (z kodem QR). API zwraca ksef_required: true z delivery: outside_ksef i reason: b2b_foreign_buyer, więc od razu wiesz, że dokument trzeba przekazać kontrahentowi osobno.
Od kiedy obowiązuje KSeF i kogo dotyczy próg 10 000 zł?
Obowiązek wystawiania faktur ustrukturyzowanych wynika z art. 106ga ust. 1 ustawy o VAT i obowiązuje od 1 lutego 2026 r.; transakcje z wcześniejszą datą API traktuje jako okres dobrowolnego KSeF (reason: out_of_scope_before_ksef_era). Od 1 kwietnia do 31 grudnia 2026 r. podatnik, którego sprzedaż brutto udokumentowana fakturami w danym miesiącu nie przekracza 10 000 zł, może wystawiać faktury poza KSeF (art. 145m ust. 1) — dlatego przyjmujemy pole seller_monthly_sales_pln, a bez niego zakładamy sprzedaż powyżej progu. Okresu przejściowego z art. 145l (1.02–31.03.2026, podatnicy do 200 mln zł sprzedaży w 2024 r.) API nie modeluje.
Czy paragon z NIP (faktura uproszczona) podlega KSeF?
Do 31 grudnia 2026 r. paragon z NIP do 450 zł (faktura uproszczona) i faktury z kasy rejestrującej pozostają poza KSeF (art. 145n ust. 1 ustawy o VAT) — API zwraca ksef_required: false z reason: out_of_scope_receipt. Od 1 stycznia 2027 r. paragon z NIP nie pełni już funkcji faktury; sprzedaż B2B wymaga faktury FA(3) w KSeF, o czym API uprzedza ostrzeżeniem receipt_with_nip_not_invoice_from_2027.
Skąd bierzecie status VAT?
Z oficjalnego Wykazu podatników VAT Ministerstwa Finansów (wl-api.mf.gov.pl), z krótkim cache'em. Zapisujemy wyłącznie NIP i status — bez nazw, adresów i numerów rachunków. Status możesz też pominąć (resolve_vat_status: false), gdy zależy Ci na czasie odpowiedzi.
Czy KSeF Decision API wystawia faktury w KSeF?
Nie. API odpowiada tylko na pytanie, czy dany dokument musi być wystawiony w KSeF i jak udostępnić go nabywcy. Nie łączy się z KSeF, nie wystawia ani nie przechowuje faktur — wystawienie robisz w swoim systemie księgowym lub bramce KSeF, a decyzję z API możesz podpiąć przed tym krokiem.
Jakie dane trzeba podać w zapytaniu?
Wymagane są tylko seller_nip i document_type. Opcjonalnie: buyer_nip albo zagraniczny buyer_tax_id, buyer_country, buyer_type, procedure (OSS/IOSS), date (domyślnie dzisiejsza) i seller_monthly_sales_pln. Każde przyjęte założenie wracamy w polu assumptions, więc wiesz, co warto doprecyzować. Pełna lista pól w dokumentacji API.
Czy to porada prawna?
Nie. To narzędzie pomocnicze: decyzja powstaje z reguł opartych na przepisach, każda z odesłaniem do artykułu ustawy, ale odpowiedzialność za rozliczenie pozostaje po Twojej stronie. Szczegóły w zastrzeżeniu prawnym.
Zacznij od planu Free
1 000 zapytań miesięcznie, klucze API: 2, bez karty płatniczej.