Błędne mapowanie NIP vs NrID dla kontrahentów PL z adresem zagranicznym

Tematy związane z rozwojem CDN XL, opinie, pochwały, narzekania i inne elementy nie związane z konkretnymi modułami systemu

Moderator: mikey

Awatar użytkownika
praiser
Posty: 1083
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Błędne mapowanie NIP vs NrID dla kontrahentów PL z adresem zagranicznym

Post autor: praiser »

Czy w procedurze KSeF_Dane3 nie przewidziano przypadku nabywcy z NIP PL ale adresem poza PL? Chyba nie.

Procedura dla nabywcy z NIP PL ale adresem poza PL (np. DE) wysyła polski NIP do węzła <NrID> zamiast <NIP>.

XML wygląda tak:

Kod: Zaznacz cały

<DaneIdentyfikacyjne>
    <NrID>1234567890</NrID>
    <Nazwa>KONTRAHENT</Nazwa>
</DaneIdentyfikacyjne>
<Adres>
    <KodKraju>DE</KodKraju>
</Adres>
Na wizualizacji KSeF pole NIP nabywcy puste.

Dokumentacja procedury:
NIP wysyłany jest dla transakcji innych niż wewnątrzwspólnotowe, gdy kraj nabywcy (KnA_Kraj) jest pusty lub wypełniony wartością PL
NrID wysyłany jest [...] gdy kraj nabywcy (KnA_Kraj) jest wypełniony i ma wartość inną niż PL
Procedura sprawdza kraj adresu zamiast prefiksu NIP. To nie pokrywa przypadku: adres zagraniczny + NIP polski.

Sugerowana poprawka w KSeF_Dane3:

BYŁO:

Kod: Zaznacz cały

/*NabywcaNIP*/
OR (KnA_Kraj <> 'PL' AND KnA_Kraj <> '')

/*NabywcaNrID*/
AND KnA_Kraj <> 'PL' AND KnA_Kraj <> ''
POWINNO BYĆ:

Kod: Zaznacz cały

/*NabywcaNIP*/
OR (KnA_NipPrefiks <> 'PL' AND KnA_NipPrefiks <> '')
OR (KnA_NipPrefiks = '' AND KnA_Kraj <> 'PL' AND KnA_Kraj <> '')

/*NabywcaNrID*/
AND ((KnA_NipPrefiks <> 'PL' AND KnA_NipPrefiks <> '')
     OR (KnA_NipPrefiks = '' AND KnA_Kraj <> 'PL' AND KnA_Kraj <> ''))
Czyli decyzja po prefiksu NIP, nie po kraju adresu. Gdy prefix pusty - fallback na kraj.

UWAGA: Ja mam HF 2025.1.2 (może się zorientowali w 2025.1.3)
--------------------------------
Pozdrawiam
WW

ODPOWIEDZ