Wystawiaj e-faktury w Europie bez wychodzenia z kodu
Samoobsługowe API dla polskiego KSeF — a wkrótce Włochy, Rumunia i Peppol. Generuj poprawny XML FA(3), wysyłaj i śledź status. Bez Punktu Dostępu Peppol. Bez ręcznego portalu.
Środowisko testowe KSeF dostępne dziś Produkcja wkrótce Bez karty kredytowej
# Sandbox: seller.nip musi być 2745013933
curl -X POST https://api.getnotaly.com/invoices \
-H "Authorization: Bearer $NOTALY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"number": "FV/2026/10/001",
"currency": "PLN",
"seller": { "nip": "2745013933", … },
"buyer": { "nip": "1234563218", … },
"items": [{ "name": "Subskrypcja SaaS",
"quantity": 1, "unitNetPrice": 1000, "vatRate": 23 }]
}'
{
"status": "accepted",
"number": "FV/2026/10/001",
"ksefNumber": "2745013933-20261012-8F3A21C9B7D0-4E",
"upo": "<UPO …/>"
}
- XML FA(3)Walidacja względem oficjalnego XSD
- API KSeFŚrodowisko testowe dostępne dziś
- Podpisane webhookiHMAC przy każdej zmianie statusu
- IdempotencjaBezpieczne ponowienia POST /invoices
Dla developerów, nie dla portali
Naprawdę developer-first
Klucze API, webhooki i idempotentne wysyłki. Integracja w godziny, nie tygodnie.
Zgodność załatwiona za Ciebie
Walidujemy XML względem oficjalnego XSD przed wysyłką. Dostajesz czytelny błąd, nie odrzucenie z urzędu.
Jeden endpoint, wiele rynków
Zacznij od Polski. Włochy, Rumunia i Peppol na tym samym API.
Jak to działa
1. Utwórz klucz API
Załóż konto sandbox w kilka minut.
2.
POST /invoicesWyślij dane faktury jako zwykły JSON.
3. Odbierz status przez webhook
Śledź wysyłkę i odpowiedź KSeF aż do
acceptedlubrejected, z UPO.
curl -X POST https://api.getnotaly.com/invoices \
-H "Authorization: Bearer $NOTALY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"number": "FV/2026/10/001",
"issueDate": "2026-10-12",
"currency": "PLN",
"seller": { "nip": "2745013933", "name": "Przykład Sp. z o.o. (FIKCYJNA)", "address": { "line1": "ul. Testowa 1, 00-001 Warszawa", "country": "PL" } },
"buyer": { "nip": "1234563218", "name": "Klient Testowy S.A. (FIKCYJNA)", "address": { "line1": "ul. Probna 2, 30-001 Kraków", "country": "PL" } },
"items": [
{ "name": "Subskrypcja SaaS — październik", "unit": "szt.", "quantity": 1, "unitNetPrice": 1000, "vatRate": 23 },
{ "name": "Wsparcie", "unit": "godz.", "quantity": 2, "unitNetPrice": 150.5, "vatRate": 8 }
]
}'
W sandboxie NIP sprzedawcy musi mieć wartość 2745013933. To NIP naszego certyfikatu KSeF TEST; inny seller.nip jest odrzucany, zanim trafi do KSeF.
Fikcyjne dane testowe (poprawne sumy kontrolne NIP). Taki sam kształt payloadu jak docs/examples/invoice-sample.json.
Status faktury
- draftXML FA(3) wygenerowany i zwalidowany względem XSD
- submittedWysłano do KSeF; pozostaje tu, dopóki KSeF ją przetwarza
- acceptedZwrócono numer KSeF i UPO
- rejectedStabilny kod błędu, nigdy surowy komunikat urzędu
KSeF i FA(3) w skrócie
KSeF (Krajowy System e-Faktur) to krajowy system e-faktur w Polsce, prowadzony przez Ministerstwo Finansów. Faktury B2B są wystawiane jako XML i otrzymują unikalny numer KSeF.
FA(3) to aktualna wersja schematu XML (XSD) dla faktur ustrukturyzowanych KSeF. Faktura musi być zgodna z tym schematem, aby została przyjęta; Notaly generuje XML i waliduje go względem oficjalnego XSD przed wysyłką.
UPO (Urzędowe Poświadczenie Odbioru) to oficjalne potwierdzenie odbioru zwracane przez KSeF, gdy faktura zostanie przyjęta.
Cennik
Starter Polecany
- Do 200 faktur/mc
- Produkcja KSeF (wkrótce)
- Webhooki
- Wsparcie e-mail
Enterprise
- Wolumen na zamówienie
- SLA i dedykowany onboarding
Ceny wstępne, mogą ulec zmianie przed startem produkcji.
Porozmawiaj ze sprzedażą
Duży wolumen, kilka podmiotów albo napięty termin wdrożenia KSeF? Opisz swoją sytuację — wrócimy z planem i ceną.
- Ceny wolumenowe powyżej 1 000 faktur/mc
- SLA i dedykowany onboarding
- Odpowiadamy e-mailem — rozmowa tylko, jeśli o nią poprosisz
Dziękujemy — odezwiemy się
Dział sprzedaży odpowie e-mailem. Numer referencyjny:
Co to jest KSeF?
KSeF (Krajowy System e-Faktur) to krajowy system e-faktur w Polsce, prowadzony przez Ministerstwo Finansów. Faktury ustrukturyzowane są wysyłane jako XML i otrzymują unikalny numer KSeF.
Co to jest format FA(3)?
FA(3) to aktualna wersja schematu XML (XSD) dla faktur KSeF. Notaly generuje XML FA(3) ze zwykłego JSON i waliduje go względem oficjalnego XSD przed wysyłką.
Co to jest UPO?
UPO (Urzędowe Poświadczenie Odbioru) to oficjalne potwierdzenie odbioru wystawiane przez KSeF, gdy faktura zostanie przyjęta. API zwraca UPO wraz ze statusem.
Czy muszę zostać Punktem Dostępu Peppol?
Nie. Notaly komunikuje się bezpośrednio z KSeF w Polsce, a dla Peppol odsprzedaje certyfikowanego partnera. Nie ponosisz kosztów certyfikacji.
Czy Notaly nalicza podatki?
Nie. Wystawiamy i śledzimy e-fakturę; naliczanie podatków należy do Ciebie lub Twojego księgowego.
Kiedy ruszy produkcja KSeF?
Dziś pełny przepływ działa w środowisku TESTOWYM KSeF. Produkcja nastąpi po walidacji podatkowej i prawnej.
Jak śledzić status faktury?
Przez podpisany webhook (HMAC) lub wywołując GET /invoices/{id}. Statusy API: draft → submitted → accepted | rejected. Dopóki KSeF przetwarza zgłoszenie wewnętrznie, faktura pozostaje submitted.
Które kraje są obsługiwane?
Najpierw Polska (KSeF). Następnie Włochy, Rumunia i Peppol, na tym samym API.
Ile to kosztuje?
Sandbox jest darmowy; Starter to 49 €/mc z limitem 200 faktur; Scale to 199 €/mc z limitem 1 000 faktur; Enterprise — wycena indywidualna.
Porozmawiaj z zespołem, który to buduje
Problem z uwierzytelnieniem w KSeF, błąd walidacji FA(3) albo webhook? Zgłoś ticket — odpowie inżynier, e‑mailem.
- Dodaj
idfaktury icodebłędu, jeśli je masz. - Nigdy nie wklejaj kluczy API, haseł ani certyfikatów.
Mamy Twoje zgłoszenie
Inżynier odpowie e-mailem. Numer:
Zacznij fakturować w Europie już dziś
Załóż konto sandbox i wystaw pierwszą testową fakturę KSeF w kilka minut.
- 3 darmowe faktury testowe w KSeF TEST
- Klucz API w kilka sekund, bez karty
- Przejdź na Starter lub Scale, kiedy chcesz
Twój klucz API (sandbox)
Zapisz go teraz — nie pokażemy go ponownie. Przechowuj go w menedżerze sekretów lub w .env jako NOTALY_API_KEY.
W pakiecie 3 darmowe faktury testowe w KSeF TEST. Wyślij pierwszą:
W sandboxie NIP sprzedawcy musi mieć wartość 2745013933; poniższe polecenie już go używa.
Następnie odpytuj GET /invoices/{id}, aż status będzie accepted. Potrzebujesz produkcji? Przejdź na Starter