Přeskočit na hlavní obsah

KSeF w ESO9

Czynność 2. 2. 3.21 - KSeF – parametry​

Import XML

Parametry​

W górnej części strony wyświetlone są wszystkie parametry dotyczące eksportu i importu do KSeF.

Import XML

Opis parametrów​

Kod parametruNazwa parametruOpis parametru
ImpKSeF_Subj_AdrZezwolenie na aktualizację adresu kontrahentaJeśli adres kontrahenta (ulica, miasto, kod pocztowy) nie zgadza się z danymi w importowanym dokumencie, można zdefiniować, że przy imporcie faktury adres (ulica, miasto, kod pocztowy) w kontrahencie zostanie nadpisany:
0 = adres kontrahenta nie jest kontrolowany, ostrzeżenie nie jest wyświetlane
1 = adres kontrahenta jest kontrolowany, w słowniku kontrahentów pozostaje bez zmian, wyświetlane jest ostrzeżenie
2 = adres kontrahenta zostanie w słowniku kontrahentów nadpisany
ImpKSeF_Subj_NazevZezwolenie na aktualizację nazwy kontrahentaJeśli nazwa kontrahenta nie zgadza się z nazwą w importowanym dokumencie, można zdefiniować, że przy imporcie faktury nazwa w kontrahencie zostanie zmieniona:
0 = nazwa kontrahenta nie jest kontrolowana, ostrzeżenie nie jest wyświetlane
1 = nazwa kontrahenta jest kontrolowana, w słowniku kontrahentów pozostaje bez zmian, wyświetlane jest ostrzeżenie
2 = nazwa kontrahenta zostanie w słowniku kontrahentów nadpisana
ImpKSeF_ZakazkaNumer zamówienia dla importowanych dokumentówDefiniuje numer zamówienia, na który będzie realizowany import dokumentów (w importowanych dokumentach zwykle zamówienie nie jest podane).
KodyMJ_KSeFTabela konwersji kodów jednostek miar. Musi być w postaci: KodESO1=KodXML1;KodESO2=KodXML2;…
Poszczególne rekordy muszą być oddzielone średnikiem. Służy do konwersji kodów MJ podanych w XML importowanych dokumentów na kody używane w ESO9.
KSeF_ObdobiODOkres, od którego możliwe jest przeprowadzanie on-line wysyłki dokumentówOkres, od którego możliwe jest przeprowadzanie on-line wysyłki dokumentów do KSeF.
KSeF_OnLineSposób wysyłania do KSeFMoże przyjmować wartości:
0 = off-line – po naciśnięciu przycisku “Eksport do KSeF” dokument jedynie zostanie zakwalifikowany do wysłania, natomiast sama wysyłka odbywać się będzie dopiero później (np. zadaniem JOB w określonych interwałach czasowych)
1 = on-line – wysłanie zostanie przeprowadzone niezwłocznie po naciśnięciu przycisku “Eksport do KSeF” (na fakturze)
ProstrediKSeFŚrodowisko KSeFOkreśla użycie środowiska komunikacyjnego, może przyjmować wartości:
0 = środowisko produkcyjne (rutynowy tryb)
1 = środowisko DEMO, przeznaczone wyłącznie do testowania
2 = środowisko deweloperskie, przeznaczone wyłącznie do rozwijania aplikacji

Informacje o stanu KSeF​

W środku strony wyświetlone są całkowite i dzienne liczby eksportowanych dokumentów (ewentualnie liczby dokumentów błędnych itp.). Za pomocą linku można wyświetlić dokumenty na podstawie ich stanu (niewysłane, oczekujące ocenę, błędne, …).

Import XML

Parametry eksportu​

W dólnej części strony znajdują się parametry, które służą do komunikacji z systemem KSeF. Te należy ustawić oddzielnie dla każdego środowiska.

Parametr Public Key jest wspólny dla wszystkich użytkowników.

Parametr Token i Certyfikat jest przeznaczony zawsze dla konkretnego użytkownika. Aby użytkownik mógł przeprowadzić eksport/import, musi mieć wprowadzony token lub certyfikat.

Parametry Public Key, Token i Certyfikat trzeba wygenerować w systemie KSeF i ustawić ich wartości w tej czynności.

Pozostałe parametry są wyświetlane w celach informacyjnych, powstają i są ustawiane automatycznie.

Import XML

Czynność 2.2.3.1 Faktury wystawione VAT​

Na stronie faktury sprzedaży dodano przycisk Eksport do KSeF, za pomocą którego można wysłać dokument do systemu KSeF. Ponadto na stronie znajduje się link Krajowy System e-Faktur (KSeF), za pomocą którego można wyświetlić informacje o statusie wysłanego dokumentu do KSeF.

Import XML

Jeśli podczas wysyłki lub przetwarzania dokumentu wystąpił błąd, zostanie tutaj wyświetlony komunikat o błędzie. Niestety zazwyczaj jest to tylko ogólna informacja typu „faktura nie została przyjęta”, bez podania konkretnego powodu, dlaczego tak się stało.

W systemie KSeF dostępne są 3 tryby środowiska:

  • produkcyjne,
  • DEMO,
  • deweloperskie.

Eksport faktur był testowany wyłącznie w środowisku deweloperskim. W tym środowisku udało się wysłać większość faktur; jeśli w którejś wystąpił błąd, odpowiednia kontrola tego typu błędów została później dodana do mechanizmów kontrolnych wykonywanych przed eksportem (i faktury nie można wysłać, dopóki błąd nie zostanie naprawiony).

Możliwe jest, że podczas pracy w środowisku DEMO lub produkcyjnym wystąpią w przyszłości kolejne błędy, których obecnie nie da się przewidzieć. W takim przypadku będzie konieczne poddanie konkretnego eksportowanego dokumentu dalszej analizie, a następnie dodanie nowych kontroli do mechanizmów weryfikacyjnych, aby dokument z tym samym błędem nie mógł zostać wysłany w przyszłości.

W linku Krajowy System e-Faktur (KSeF) (na stronie faktury sprzedaży) można sprawdzić status wysłania faktury i szczegółowe informacje o tym, czy i kiedy dokument został wyeksportowany do KSeF, a także czy podczas eksportu wystąpiły jakieś błędy. W razie potrzeby można stąd również spróbować ponownie wysłać dokument.

Status wysyłki sprawdza się bezpośrednio po wysłaniu do KSeF. Odbywa się to w kilku krokach - jeśli wszystko przebiegnie prawidłowo, fakturze przypisuje się jednoznaczny identyfikator KSeF i uzyskuje się potwierdzenie UPO (= w formacie XML, zapisuje się do dokumentu, na razie nie jest dalej przetwarzane).

Jeśli któryś z kroków nie zostanie wykonany (z powodu błędu, obciążenia serwera itp.), można ponownie sprawdzić status konkretnego wpisu przyciskiem Sprawdź stan przetwarzania.

Zbiorczo można wykonać tę akcję w czynności 2.2.3.21 KSeF Parametry.

Import XML

Wysyłka może mieć następujący stany:

  • Niewysłane = ten stan występuje w przypadku, gdy w FAV naciśnięto przycisk Eksportuj do KSeF i nie ustawiono wysyłki online
  • Wysłane = wysyłka do KSeF została wykonana, ale nie udało się jeszcze ustalić statusu wysłanego dokumentu w KSeF
  • Przyjęte – przypisany numer KSeF = z systemu KSeF został przypisany i odczytany jednoznaczny identyfikator KSeF
  • Przyjęte – potwierdzone (UPO) = z systemu KSeF uzyskano potwierdzenie UPO – jest to stan docelowy, który powinien nastąpić

Stan błędu – może wystąpić zarówno po stronie wysyłającej (błędny XML itp.), jak i po stronie KSeF, jeśli system nie odpowie na złożone żądanie, mogą wystąpić następujące błędy:

  • Błąd podczas wysyłania
  • Błąd podczas sprawdzania stanu
  • Błąd podczas sprawdzania stanu (2)
  • Dokument nie udało się przesłać do KSeF
  • Nie udało się załadować dokumentu do KSeF – błędny plik XML

Przegląd liczby wysłanych dokumentów (według poszczególnych statusów) znajduje się w czynności 2.2.3.21 Parametry KseF.

Za pomocą przycisku Anuluj można oznaczyć jeszcze niewysłany rekord lub rekord wysłany z błędem jako nieważny. Należy to zastosować na przykład w sytuacji, gdy nie udało się wysłać dokumentu – w takim przypadku konieczne będzie poprawienie błędów w dokumencie (ewentualnie także dostosowanie procedur realizujących wysyłkę), a po unieważnieniu możliwa będzie ponowna próba wysyłki.

Import XML
Wysłanie faktury z błędem w XML, nacisk Anuluj do anulowania faktury

Import XML
Anulowane wysłanie fakury i ponowne wysłanie po poprawieniu blędu w XML

W środowisku produkcyjnym konieczne jest zapewnienie, aby wyeksportowany dokument nie mógł być już modyfikowany. Jest to rozwiązane w ten sposób, że po wysłaniu do KSeF dokument otrzyma status, który uniemożliwia jego edycję (zgodnie z ustawieniem na typie dokumentu – status „dokument jest zamknięty od stanu”).

Czynność 2.1.3.15 KSeF – Import​

W tej czynności można wykonać import faktur z systemu KSeF.

Sam import z systemu KSeF przebiega w ten sposób, że najpierw należy pobrać listę faktur, a następnie dla każdej z tych faktur pobrać jej szczegółową zawartość (plik XML zawierający dane faktury).

Na stronie wejściowej w górnym części można podać jako parametry wejściowe jedynie datę, od której ma być wykonane pobieranie, oraz liczbę dni, z których mają zostać załadowane faktury. Domyślnie proponowane jest pobranie z ostatnich 10 dni.

Import XML

Obie te czynności (pobranie listy i pobranie szczegółów) są obecnie wywoływane jednym przyciskiem Pobierz listę + dane. Jeśli byłaby potrzeba wywoływania ich osobno (np. z powodu nadmiernie długiego czasu przetwarzania przy większej liczbie faktur), każdą z tych czynności można wywołać oddzielnie (trzeba rozwinąć sekcję Pobieranie tylko listy lub danych). W takim przypadku można zdefiniować, ile faktur ma być pobranych podczas jednego uruchomienia przyciskiem Pobierz tylko dane.

Pobranie listy faktur spowoduje pobranie faktur, które zostały wprowadzone do KSeF od wskazanej daty i w kolejnych dniach według podanej liczby dni (domyślnie więc za ostatnie 10 dni). W przypadku, że dana faktura została już wcześniej pobrana, nie będzie pobierana ponownie. Po pobraniu listy faktura otrzymuje status Zaimportowano z listy. Dla takiej faktury wyświetlane są jedynie podstawowe dane: numer faktury, identyfikacja podmiotu (NIP + nazwa), data wystawienia, waluta, kwota całkowita, suma kwot netto i suma VAT, jednoznaczna identyfikacja faktury (numer referencyjny KSeF).

Jeśli z jakiegoś powodu nie jest pożądane, aby faktura była importowana do aplikacji, można nadać jej przyciskiem Nie importować status nie wstawiać dokumentu – dla takiego rekordu nie będzie wykonywany import szczegółów i nie będzie możliwe utworzenie z niego faktury.

Pobranie danych dla poszczególnych faktur, które mają status „zaimportowano z listy”, powoduje pobranie samej treści faktury (szczegółowego XML). Po pomyślnym pobraniu szczegółów status zmienia się na wczytane dane faktury – z takiego rekordu można następnie przeprowadzić import do faktur otrzymanych.

Poszczególne statusy są wyróżnione kolorami i można według nich filtrować.

W pierwszej fazie te importy (import listy faktur, import szczegółów faktur) będą wykonywane ręcznie, a po wyeliminowaniu ewentualnych problemów będzie można ustawić automatyczne pobieranie listy i szczegółów za pomocą zadania planowanego (JOB).

Czynność 2.1.3.16 KSeF - tworzenie faktur​

Dokumenty zaimportowane w czynności 2.1.3.15 KSeF – Import (łącznie z treścią XML faktury) są przechowywane w pliku roboczym (tabela KSeFImport). Z takich rekordów można następnie utworzyć faktury w systemie ESO9.

Na stronie wyświetlane są wszystkie rekordy zaimportowane z KSeF. Jeśli dany rekord został oznaczony statusem nie wstawiać dokumentu, nie będzie się już na tej stronie pojawiał.

W górnej części można podać liczbę dni, przez które mają być wyświetlane rekordy po przeprowadzeniu importu (liczbę dni można określić osobno dla dokumentów poprawnie zaimportowanych oraz osobno dla tych, których import zakończył się błędem lub jest przy nich wyświetlone jakieś ostrzeżenie).

Import XML

Najpierw należy w górnej części strony wybrać typ i wzór dokumentu, pod którym będą wprowadzane dokumenty. Domyślny wzór dokumentu można ustawić w parametrze aplikacji ImpKSeF_Vzor.

Następnie trzeba zaznaczyć dokumenty przeznaczone do importu* albo użyć przycisku Wybierz do importu, który zaznaczy wszystkie dokumenty, które jeszcze nie zostały zaimportowane (mają status 10 = wczytane dane faktury).

Przyciskiem Załóż dokumenty dla każdego zaznaczonego rekordu zostanie utworzona faktura (zgodnie z wybranym typem i wzórem).

Kontrahent jest wyszukiwany według NIP. Jeśli kontrahent o podanym NIP nie zostanie znaleziony, system spróbuje znaleźć go według nazwy (wyszukiwane są tylko kontrahenci bez wypełnionego NIP; jeśli taki zostanie znaleziony, NIP zostanie do niego dopisany). Jeżeli kontrahent nie zostanie znaleziony, zostanie automatycznie utworzony nowy. Jeśli w ESO9 zostanie znalezionych kilka kontrahentów z tym samym NIP, wybierany jest jeden z nich i generowane jest ostrzeżenie – trzeba wtedy sprawdzić poprawność kontrahenta.

W parametrach (ImpKSeF_Subj_Nazev i ImpKSeF_Subj_Adr) można ustawić, czy ma być kontrolowana nazwa i adres kontrahenta. Kontrola jest wykonywana tylko wtedy, gdy znaleziono dokładnie jednego kontrahenta. W zależności od ustawienia parametru kontrola może być pominięta, może jedynie wyświetlić informację o różnicy danych, albo – jeśli parametr ma wartość 2 – może zostać przeprowadzona aktualizacja nazwy lub adresu kontrahenta (a do notatek zostaną zapisane wartości pierwotne – zob. parametry KodPozn_PuvJmeno, KodPozn_PuvMesto, KodPozn_PuvUlice, KodPozn_PuvPSC).

Jeśli został podany IBAN, zostanie umieszczony w dokumencie tylko wtedy, gdy ma prawidłowy format (zgodnie z zasadami tworzenia IBAN).

Kwoty na dokumencie są wykazywane w walucie dokumentu; w dokumentach walutowych wartości w PLN występują tylko przy kwotach podatków – pozostałe pozycje są przeliczane kursem wskazanym w dokumencie.

Pozycje​

Ceny z pozycji są importowane w następujący sposób:

W pozycji mogą być w XML podane następujące wartości cenowe:

  • P_9A (cena jednostkowa netto w walucie dokumentu)
  • P_9B (cena jednostkowa brutto w walucie dokumentu)
  • P_11 (wartość netto w walucie dokumentu)
  • P_11A (wartość brutto w walucie dokumentu)

Import przebiega tak, że wyszukiwana jest pierwsza wypełniona wartość (w podanej kolejności). Ta wartość jest ustawiana jako cena wiodąca, a pozostałe pola są wyliczane (zgodnie z zasadami ESO9).

Dodatkowo wypełniane są pola:

  • dtSkutTerm = P_6A
  • kod jednostki miary = P_8A (jeśli w plikach pojawiają się inne kody niż te stosowane w ESO9, można użyć mapowania z parametru KodyMJ_KSeF)
  • liczba JM = P_8B
  • stawka VAT – jeśli jest podany procent, sprawdzane jest, czy istnieje w słowniku stawek VAT, jeśli wartość 0, oo lub np ustawiana jest stawka 0%, jeśli zw ustawiane jest „Poza podatkiem”.
  • towar jest wyszukiwany według podanych pól: Indeks, GTIN (Global Trade Item Number), PKWiU, CN oraz PKOB (Polska Klasyfikacja Obiektów Budowlanych) oraz funkcji fnidZbozi_FaKSeF, którą można nadpisać użytkownikską implementacją
  • tekst pozycji = P_7, jeśli nie udało się odnaleźć towaru, dopisywane są również wartości: Indeks, GTIN, PKWiU, CN i PKOB.