Dokumentacja opisuje publiczne API biblioteki ksef-client-python (import: ksef_client) oraz scenariusze (workflow) wspierające typowe procesy: uwierzytelnianie, generowanie XML FA(3), sesje wysyłkowe (online/batch) i eksport faktur.
Opis kontraktu API (OpenAPI) oraz dokumenty procesowe i ograniczenia systemu znajdują się w ksef-docs/.
Kompatybilność SDK: KSeF API v2.6.0.
Publiczny kontrakt SDK używa typowanych modeli ksef_client.models. Payloady requestów są
typed-only, a wiele metod klientów zwraca modele odpowiedzi zamiast surowych dict. Jeśli
migrujesz starszą integrację, zobacz migration-typed-model-api.md.
- Python
>= 3.10 - Dostęp do środowiska KSeF (TEST/DEMO/PROD) i odpowiednie dane uwierzytelniające
W katalogu projektu:
pip install -e .Opcjonalne dodatki (extras):
pip install -e .[cli,xml,fa3,qr]cli– komendaksefi zależności CLI (typer,rich,keyring)xml– podpis XAdES (lxml,xmlsec)fa3– walidacja XSD dla XML FA(3) (lxml)qr– generowanie PNG z kodami QR (qrcode,pillow)
Jeżeli pracujesz tylko z API Pythona, pip install -e . wystarcza. Do pracy z CLI użyj pip install -e .[cli]
albo pełnego zestawu extras.
Biblioteka udostępnia trzy poziomy użycia:
- Klient API (cienka warstwa) –
KsefClient/AsyncKsefClientoraz podklienci (.auth,.sessions, …). Metody odpowiadają endpointom KSeF, przyjmują typowane modele requestów zksef_client.modelsi w wielu przypadkach zwracają typowane modele odpowiedzi. Wyjątki dotyczą endpointów binarnych lub pomocniczych. - Scenariusze (workflow) – klasy z
ksef_client.services, m.in.AuthCoordinator,OnlineSessionWorkflow,BatchSessionWorkflow,ExportWorkflow. Warstwa workflow łączy kilka wywołań API z operacjami lokalnymi (szyfrowanie, ZIP) i porządkuje typowe przepływy. - Dokumenty FA(3) – moduł
ksef_client.documents.fa3buduje faktury, serializuje XML i opcjonalnie waliduje XSD przed wysyłką online/batch.
Referencja API (endpointy):
KsefClientiAsyncKsefClientclient.authclient.sessionsclient.invoicesclient.lighthouseclient.permissionsclient.certificatesclient.tokensclient.limitsclient.rate_limitsclient.securityclient.testdataclient.peppol
Workflows:
- Uwierzytelnianie
- FA(3) SDK only
- Sesja interaktywna (online)
- Sesja wsadowa (batch)
- Eksport (pobieranie paczek)
Dokumenty FA(3):
CLI:
Usługi / utils (zaawansowane, ale publiczne):
Przykłady (skrypty):