Napisałem i oferuję moduł w Delphi, w postaci kodu źródłowego, do obsługi KSeF w zakresie:
- logowanie tokenem
- tryb interaktywny (brak wsadowego)
- wysyłka faktur
- pozyskiwanie numeru KSeF
- odbiór UPO
- odbiór faktur przychodzących (kosztowych) i wychodzących (wystawionych, np. także przez AP)
- walidacja struktury faktury (XSD) i wskazanie błędów
- pozyskiwanie identyfikatora płatności dla zadanej grupy faktur
- wbudowany menadżer samoczynnie zarządzający obsługą API, reagującym na przekroczenie limitów, sprawdzającym cyklicznie czy są nowe faktury, obsługującym kolejkę wysyłkową, etc. tzw. samograj :-)
Moduł pracuje na wątkach, dane zwraca callbackami w bezpieczny sposób (na wątku głównym). Moduł jest asynchroniczny, co oznacza, że nie blokuje aplikacji i w żaden sposób jej nie spowalnia, pracuje w tle (nie blokuje GUI).
Napisany w czysty sposób, bez spaghetti code, zgodnie z dobrymi praktykami, oparty o interfejsy i generyki. Nie posiada zależności do żadnych komercyjnych bibliotek, korzysta jedynie z OpenSSLa oraz open sourcowego, jednoplikowego parsera JSON, dostępnego na githubie.
Poza tym czysty, autorski kod Delphi.
Napisany w Delphi 10.3, ale będzie działać w starszych także, przynajmniej w tych które mają klasę TRESTClient. REST Library dodano w Delphi XE5 (z tego co pamiętam).
Nie oferuję utrzymywania i rozwoju, jedynie sprzedaję prawo do używania kodu AS IS i pomagam go uruchomić oraz skonfigurować (w razie problemu). Kod jest przejrzysty i łatwy w utrzymaniu. Jest też udokumentowany (XMLDOC) a także posiada dokumentację sposobu działania i użycia. W praktyce daję dostęp do prywatnego projektu na githubie, więc wszelkie poprawki i modyfikacje jakie będę wykonywał też będą dostępne, ale to proszę traktować jako bonus.
Na życzenie mogę go zmodyfikować, rozszerzyć lub dostosować do specyficznych potrzeb, ale w ramach odrębnej umowy.
Wystawiam faktury.
ps. nad kodem nadal pracuję, w najbliższym czasie dodam ukrywanie/odkrywanie faktur, w przyszłości, gdy zniknie token dodam nowy sposób logowania, itd.