KRD.P ROTOCOLS WYMIANA DANYCH SPECYFIKACJA PROTOKOŁU NICCI Wersja 2.1.2 z dnia 2014.02.24 Numer dokumentu Kategoria dokumentu Projekt Status dokumentu Opracowanie wewnętrzne Słowa kluczowe Biuro Informacji Gospodarczej, BIG, Rahl, Nicci, Transza, Web Service Copyright Krajowy Rejestr Długów, 2014 KRD BIG SA, ul. Armii Ludowej 21, 51-214 Wrocław Tel. +48(71)7850000, fax +48(71)7850100, http://www.krd.pl
Atrybuty dokumentu Atrybut A Wartość 1 Numer 2 Projekt Rahl 3 Tytuł Wymiana danych 4 Podtytuł Specyfikacja protokołu Nicci 5 Wersja 2.1.1 6 Czas wersji 2006.11.03 7 Kategoria Projekt 8 Plik Nicci 2.1.doc 9 Lokalizacja http://www.krd.pl/exchange/public/dział Informatyczny/Dokumenty/Archiwum/Projekty 10 Liczba stron 91 11 Szablon Normal.dot 12 Instrukcja <BRAK> 13 Autorzy Radek Soska, Rafał Stramski 14 Nadzór Sebastian T. Tkocz 15 Dział Dział Informatyczny 16 Kontakt - email rahl@krd.pl 17 Kontakt - telefon +48(71)7850000 18 Prawa autorskie Copyright Krajowy Rejestr Długów, 2006 19 Komentarz B Historia dokumentu Atrybut Wartość Data A B C 1 Wersja 1.0 2003-05-05 2 Autor Radosław Soska, Sebastian Tkocz 3 Sprawdził treść Mariusz Kieslich 2003-05-12 4 Sprawdził formę Mariusz Kieslich 2003-05-12 5 Zatwierdził Krzysztof Sokołowski 2003-05-15 6 Opis Pierwsza wersja Atrybut Wartość Data A B C 1 Wersja 1.1 2003-11-12 2 Autor Radosław Soska, Sebastian Tkocz 3 Sprawdził treść 4 Sprawdził formę 5 Zatwierdził Opis Aktualizacja schematu pliku importowego: - dodawanie i zatrzymywanie monitorów, 6 - zmiana właściciela informacji i sprawy, - zmiana wymagalności w typie addresstype Atrybut Wartość Data A B C 1 Wersja 1.2 2004-04-02 2 Autor Przemysław Grondys 3 Sprawdził treść Radosław Soska 2004-04-16 4 Sprawdził formę 5 Zatwierdził 6 Opis Aktualizacja wersji do 1.2; dodanie przykładów Zmiana numeru dokumentu Opracowanie wewnętrzne Strona 2 z 91 Copyright Krajowy Rejestr Długów, 2014
Atrybut Wartość Data A B C 1 Wersja 1.2.1 2004-04-16 2 Autor Radosław Soska 3 Sprawdził treść 4 Sprawdził formę 5 Zatwierdził 6 Opis Korekta dokumentu, aktualizacja przykładów Atrybut Wartość Data A B C 1 Wersja 2.0 2004-04-17 2 Autor Radosław Soska 3 Sprawdził treść 4 Sprawdził formę 5 Zatwierdził Opis Aktualizacja dokumentacji do wersji 2.0 protokołu Nicci: - rozszerzenie sekcji opisującej zlecenia, które można przekazać przy pomocy Nicci 6 - dodanie nowych elementów (np. ujawnianie informacji gospodarczych, rozszerzenie funkcjonalności monitorów, pobieranie list spraw i informacji) - nowy podział logiczny dokumentu - zmiana numeru dokumentu Atrybut Wartość Data A B C 1 Wersja 2.0.1 2005-07-08 2 Autor Rafał Stramski 3 Sprawdził treść Radosław Soska 2005-09-19 4 Sprawdził formę 5 Zatwierdził Sebastian T. Tkocz Opis Aktualizacja dokumentacji dla wersji 2.0 protokołu Nicci: - uzupełnienie dokumentu o nowe typy i grupy dla wersji 2.0 6 protokołu Nicci - aktualizacja elementów Input i Output - aktualizacja przykładów Atrybut Wartość Data A B C 1 Wersja 2.0.2 2005-12-08 2 Autor Radosław Soska 3 Sprawdził treść Sebastian T. Tkocz 4 Sprawdził formę 5 Zatwierdził Opis Aktualizacja dokumentacji dla wersji 2.0 protokołu Nicci: 6 - dodanie w grupie notifydebtorgroup elementu AddressRegistered - dodanie do typu monitoreventtype elementu Date Atrybut Wartość Data A B C 1 Wersja 2.1.0 2006-02-28 2 Autor Radosław Soska 3 Sprawdził treść Sebastian Tkocz 2006-04-10 4 Sprawdził formę 5 Zatwierdził Opis Aktualizacja dokumentacji dla wersji 2.1 protokołu Nicci: 6 - dodanie nowego ManagementService w postaci ProcessSnapshot oraz odpowiadającemu mu ManagementResponse Opracowanie wewnętrzne Strona 3 z 91 Copyright Krajowy Rejestr Długów, 2014
Atrybut Wartość Data A B C 1 Wersja 2.1.1 2006-10-10 2 Autor Stramski Adam 3 Sprawdził treść Radosław Soska 2006-11-03 4 Sprawdził formę Radosław Soska 2006-11-03 5 Zatwierdził 6 Opis Aktualizacja dokumentacji dla wersji 2.1 protokołu Nicci: - pobieranie weryfikacji przy operacjach CRU Case Atrybut Wartość Data A B C 1 Wersja 2.1.2 2014-02-24 2 Autor Stramski Rafał 3 Sprawdził treść Mariusz Purwin 2014-03-14 4 Sprawdził formę Michał Orlik 2014-03-14 5 Zatwierdził 6 Opis Aktualizacja dokumentacji dla zmian po wejściu nowej ustawy Opracowanie wewnętrzne Strona 4 z 91 Copyright Krajowy Rejestr Długów, 2014
Spis treści SPIS TREŚCI. 5 SPIS TABEL 6 SPIS PRZYKŁADÓW.. 7 WSTĘP. 9 1. DANE PRZEKAZYWANE DO BIURA.. 10 1.1. SPRAWY 10 1.1.1. Dane dłużnika.10 1.1.2. Dane zobowiązań..13 1.2. INFORMACJE O SPŁACONYCH ZOBOWIĄZANIACH ORAZ INFORMACJE O POSŁUŻENIU SIĘ FALSZYWYM DOKUMENTEM.15 2. ZLECENIA 16 2.1. ZLECENIA DOTYCZĄCE INFORMACJI GOSPODARCZYCH.16 2.2. ZLECENIA DOTYCZĄCE SPRAW.16 2.3. ZLECENIA DOTYCZĄCE UJAWNIANIA INFORMACJI GOSPODARCZYCH.17 2.4. ZLECENIA DOTYCZĄCE MONITOROWANIA.18 2.5. ZLECENIE NIE WSPIERANE PRZEZ WERSJĘ 2.1.18 3. OPIS SCHEMATU XML 20 3.1. PLIK NICCICOMMON.XSD.20 3.1.1. Typy proste.20 3.1.2. Typy złożone 23 3.1.3. Grupy elementów..48 3.2. PLIK NICCIINPUT.XSD..60 3.2.1. Definicje typów..60 3.2.2. Element główny Input..77 PLIK NICCIOUTPUT.XSD 78 3.2.3. Definicje grup.78 3.2.4. Definicje typów..78 3.2.5. Element główny Output 90 Opracowanie wewnętrzne Strona 5 z 91 Copyright Krajowy Rejestr Długów, 2014
Spis tabel Tabela 1 : Sformalizowana reprezentacja adresu 11 Tabela 2 : Dane przedsiębiorstwa 12 Tabela 3 : Dane osoby fizycznej..12 Tabela 4 : Dane zobowiązania..14 Tabela 5 : Dane zobowiązania stwierdzonego tytułem wykonawczym..14 Tabela 6 : Dane zobowiązania alimentacjnego.15 Tabela 7 : Dane zobowiązania z tytułu pieczy zastępczej.15 Opracowanie wewnętrzne Strona 6 z 91 Copyright Krajowy Rejestr Długów, 2014
Spis przykładów Przykład 3-1 Typ headertype 24 Przykład 3-2 Elementy Debt typu moneytype.25 Przykład 3-3 Typ addresstype format rozszerzony.26 Przykład 3-4 Typ addresstype format prosty 26 Przykład 3-5 Typ personstype..27 Przykład 3-6 Typ stakeholderstype.28 Przykład 3-7 Typ consumertype..29 Przykład 3-8 Typ legalpersontype..30 Przykład 3-9 Typ paidobligationlegalpersontype Błąd! Nie zdefiniowano zakładki. Przykład 3-10 Typ paidobligationconsumertype. Błąd! Nie zdefiniowano zakładki. Przykład 3-11 Typ paidobligationenterpreneurtype.. Błąd! Nie zdefiniowano zakładki. Przykład 3-12 Typ debtortype..31 Przykład 3-13 Typ providertype..32 Przykład 3-14 Typ paidobligationdebtortype.. Błąd! Nie zdefiniowano zakładki. Przykład 3-15 Typ caseobligationstypecaseobligation.33 Przykład 3-16 Typ documentinformationtype. Błąd! Nie zdefiniowano zakładki. Przykład 3-18 Typ obligationinformationtype..34 Przykład 3-19 Typ caseintype..34 Przykład 3-20 Typ caseouttype..36 Przykład 3-21 Typ monitoreventtype.37 Przykład 3-22 Typ requestertype 38 Przykład 3-23 Typ searchcriteriontype..38 Przykład 3-24 Typ obligationinformationdrtype.39 Przykład 3-25 Typ paidobligationinformationdrtype 40 Przykład 3-26 Typ disclosurereporttype41 Przykład 3-27 Typ disclosurereportstype.42 Przykład 3-28 Typ casestype 43 Przykład 3-29 Typ snapshottype.43 Przykład 3-31 Typ monitorconditionstype 44 Przykład 3-34 Typ casefiltertype 45 Przykład 3-35 Typ informationfiltertype 48 Przykład 3-36 Grupa identifiergroup w elemencie Debtor 49 Przykład 3-37 Grupa registrationgroup.49 Przykład 3-38 Grupa identitycardgroup 50 Przykład 3-39 Grupa propertygroup 50 Przykład 3-40 Grupa legalpersondatagroup.51 Przykład 3-41 Grupa consumerdatagroup 52 Przykład 3-42 Grupa streetgroup z prefiksem.53 Przykład 3-43 Grupa streetgroup z postfiksem 53 Przykład 3-44 Grupa notifydebtorgroup 54 Przykład 3-45 Grupa obligationdatagroup w elemencie CaseObligation..55 Przykład 3-46 Grupa documentseriesnumbergroup..56 Przykład 3-47 Grupa documentinformationgroup..57 Przykład 3-48 Grupa paidobligationinformationgroup..57 Przykład 3-49 Grupa obligationinformationgroup..58 Przykład 3-50 Grupa monitorconditiongroup..59 Przykład 3-51 Grupa personnamegroup 59 Przykład 3-52 Grupa peselgroup.59 Przykład 3-53 Typ orderbasetype 60 Przykład 3-54 Typ serviceorderbasetype.61 Przykład 3-55 Typ addcasetype..61 Przykład 3-56 Typ updatecasetype 62 Przykład 3-57 Typ removecasetype..62 Opracowanie wewnętrzne Strona 7 z 91 Copyright Krajowy Rejestr Długów, 2014
Przykład 3-58 Typ suspendtype..63 Przykład 3-59 Typ unsuspendtype..64 Przykład 3-60 Typ suspendcaseobligationtype..64 Przykład 3-61 Typ unsuspendcaseobligationtype..65 Przykład 3-67 Typ addmonitorconditiontype 65 Przykład 3-68 Typ updatemonitorconditiontype.66 Przykład 3-69 Typ stopmonitorconditiontype..66 Przykład 3-70 Typ removemonitorconditiontype 67 Przykład 3-71 Typ changeownertype.67 Przykład 3-72 Typ changeinformationownertype..68 Przykład 3-73 Typ searchleagalpersontype.69 Przykład 3-74 Typ searchconsumertype..69 Przykład 3-75 Typ searchdocumenttype..70 Przykład 3-76 Typ searchmetype.70 Przykład 3-77 Typ searchregistrytype..70 Przykład 3-78 Typ getdisclosurereporttype.71 Przykład 3-79 Typ getdisclosurereportstype..71 Przykład 3-80 Typ getcasestype.72 Przykład 3-82 Typ processsnapshottype..72 Przykład 3-83 Typ serviceordertype..74 Przykład 3-84 Typ serviceorderstype.74 Przykład 3-85 Typ managementordertype..75 Przykład 3-86 Typ managementorderstype.76 Przykład 3-87 Typ searchordertype 76 Przykład 3-88 Typ searchorderstype.77 Przykład 3-89 Element Input.77 Przykład 3-90 Grupa responsegroup..78 Przykład 3-91 Typ successtype 79 Przykład 3-92 Typ failtype.79 Przykład 3-93 Typ simpleresponsetype 80 Przykład 3-94 Typ monitorresponsetype..80 Przykład 3-95 Typ responsetype.81 Przykład 3-96 Typ disclosurereportresponsetype.81 Przykład 3-97 Typ disclosurereportsresponsetype 82 Przykład 3-98 Typ searchregistryresponsetype.83 Przykład 3-99 Typ casesresponsetype..83 Przykład 3-101 Typ monitorconditionsresponsetype 84 Przykład 3-102 Typ monitoreventsresponsetype..85 Przykład 3-104 Typ snapshotaddcasetype..85 Przykład 3-105 Typ snapshotupdatecasetype.86 Przykład 3-106 Typ snapshotremovecasetype..86 Przykład 3-107 Typ snapshotserviceorderstype.87 Przykład 3-108 Typ processsnapshotresponsetype..87 Przykład 3-109 Typ serviceresponsetype.88 Przykład 3-110 Typ managementresponsetype.89 Przykład 3-111 Typ searchresponsetype.90 Przykład 3-112 Element Output 91 Opracowanie wewnętrzne Strona 8 z 91 Copyright Krajowy Rejestr Długów, 2014
Wstęp Protokół NICCI jest schematem opisującym strukturę danych złużącą do wymiany informacji pomiędzy systemami KRD, a systemami zewnętrznymi. Wersja 2.1 protokołu NICCI przygotowana została jeszcze w czasie obowiązywania starej ustawy o BIG, z 2003 roku, dlatego użyte w tej wersji protokołu pojęcia odpowiadają jej definicjom. Po wejściu w życie nowej ustawy (dnia 9 kwietnia 2010 roku) system KRD przeszedł gruntowne zmiany. Oczywiście schemat transzy, ze względu na używanie go przez wielu klientów nie mógł zostać zmieniony. Umożliwiono jednak przekazywanie transz NICCI 2.1 także tym klientom, których dane pozostają w zgodności z nową ustawą, ale musiało się to odbyć kosztem pewnych kompromisów. Dla przykładu, wg nowej ustawy informacja gospodarcza o dłużniku będącym konsumentem może zawierać od jednego do trzech adresów konsumenta (zamieszkania, zameldowania, korespondencyjny). Wg starej ustawy można było podać tylko adres zameldowania. Jeżeli zatem klient wprowadzi do systemu KRD informacje wykraczające poza zakres starej ustawy (np. poprzez stronę WWW), to protokół NICCI 2.1 nie będzie mógł posłużyć do pobrania takiej informacji. Dokument ten opisuje strukturę danych przekazywanych do biura oraz strukturę raportu biura z wykonania zleconych usług. Opisany zostanie także schemat plików XML (transz) zawierających te dane. Tam gdzie uwidaczniać się będą różnice między definicją protokołu NICCI a aktualnym stanie systemu pojawiać się będzie stosowna informacja. Nie wspierane już zlecenia zebrane są w punkcie 2.6, a ich opisy i przykłady zostały z dokumentacji usunięte. Opracowanie wewnętrzne Strona 9 z 91 Copyright Krajowy Rejestr Długów, 2014
1. Dane przekazywane do biura Dane, które można przekazać do biura infomacji gospodarczej reguluje ustawa. Określa ona minimalny i maksymalny zakres danych, a także dodatkowe warunki jakie muszą zostać spełnione, by biuro miało prawo te dane przyjąć. Biuro może przyjąć trzy rodzaje informacji gospodarczej. Pierwszym typem informacji są informacje o niespełnionych zobowiązaniach, zarówno podmiotów gospodarczych jak i osób fizycznych. Grupowane są one dla jednego dłuznika w pojęcie sprawy. Sprawa zawiera informacje o dłuzniku, o wierzycielu (może on zastrzec sobie ujawnianie swoich danych) oraz o niespełnionych zobowiązaniach dłużnika wobec wierzyciela. Pojęcie sprawy widoczne jest jedynie dla klienta wprowadzającego tę sprawę. Dla osób trzecich, którym zostaną ujawnione informacje gospodarcze dotyczące dłużnika, zobowiązania jednej sprawy widoczne będą jako nie powiązane ze sobą (poza danymi wierzyciela, jeśli nie zastrzegł on sobie ich ujawniania) informacje gospodarcze dotyczące niespełnionych zobowiązań. Drugim typem informacji gospodarczej jest informacja o spełnionych zobowiązaniach. Klient na żądanie swego kontrahenta przekazuje do biura informację o łącznej kwocie i walucie zobowiązań spełnionych przez jego kontrahenta w ciągu ostatnich 5 lat, z wyszczególnieniem kwoty tych zobowiązań, które zostały spełnione z opóźnieniem nie dłuższym niż 14 dni. Trzecim typem informacji gospodarczej jest informacja o posłużeniu się wobec klienta biura podrobionym lub cudzym dokumentem. Ze względu na znaczące zmiany wprowadzone w Ustawie z dnia 14 czerwca 2010, a dotyczące informacji o spłaconych zobowiązaniach oraz posłużeniu się podrobionym lub fałszywym dokumentem, transze w wersji 2.1 i niższych nie obsługują już tego typu danych. 1.1. Sprawy Sprawa to grupa informacji gospodarczych dotyczących zobowiązań jednego dłuznika wobec klienta zgłaszającego te informację. Sprawę zgłasza się do biura w całości tzn. podając wszystkie zobowiązania. Po dodaniu sprawy do biura można sprawę usunąć, bądź zmodyfikować. Modyfikacja sprawy polega na modyfikacji danych dłużnika albo na usunięciu bądź modyfikacji jednego z zobowiązań tej sprawy. Sprawa składa się z identyfikatora, nadawanego przez wierzyciela numeru sprawy, danych dłużnika, danych zobowiązań (co najmniej jednego) oraz dodatkowych właściwości określanych przez wierzyciela. Identyfikatorem może być guid ( globally unique identifier ) lub zdefiniowany przez klienta, niepusty ciąg znaków. W każdym przypadku klient jest odpowiedzialny za unikalność podawanego identyfikatora. 1.1.1. Dane dłużnika Dłużnikiem klienta może być osoba fizyczna, osoba prawna lub jednoosobowa działalność gospodarcza. Opracowanie wewnętrzne Strona 10 z 91 Copyright Krajowy Rejestr Długów, 2014
1.1.1.1. Podmiot gospodarczy Wymagane dane przedsiębiorstwa ( podmiotu będącego osobą prawną lub jednostką organizacyjną nieposiadającą osobowości prawnej ) to oznaczenie, siedziba i adres oraz numer identyfikacji podatkowej. Opcjonalnie można podać numer REGON, numer pod którym podmiot wpisany jest do właściwego rejestru (wraz z oznaczeniem sądu rejestrowego) oraz główny przedmiot działalności gospodarczej. Numer identifikacji podatkowej może być podany jako ciąg 10 cyfr bez kresek, bądź jako oddzielone kreskami: 3, 3, 2 i 2 cyfry (np. 112-123-09-01) lub 3, 2, 2 i 3 cyfry (np. 112-21-30-901). Numer REGON to 9 cyfr. Możliwe jest podanie tylko identyfikatora NIP podmiotów zarejestrowanych w Polsce. Adres może być opisany na dwa sposoby: w pełni sformalizowany (jak na przykład w formularzach PIT), w którym podajemy jawnie co jest numerem mieszkania, a co nazwą ulicy (patrz przykład 3-4) lub jako ciąg 2 do 4 linii, w których powinny się znaleźć wszystkie dane potrzebne do dostarczenia przesyłki, czyli conajmniej kod pocztowy i nazwa miejscowości, oraz wskazanie posesji (np. ulica i numer domu). Pokazuje to przykład 3-5. Sposób formalnego przedstawienia adresu pokazany jest w tabeli 1. Tabela 1 : Sformalizowana reprezentacja adresu Dana Opis Uwagi Krotność A B C D 1 STREETPREFIX Przedrostek ulicy Np. ul., plac 0..1 2 STREET Nazwa ulicy Jeśli nie podano, to trzeba podać 1 miejscowość (6) 3 STREETPOSTFIX Przyrostek ulicy (występuje za granicą) Np. Avenue 0..1 4 BUILDING Numer budynku Np. 15A, 1-3 0..1 5 FLAT Numer mieszkania Np. 10, 2a 0..1 6 CITY Nazwa miejscowości, jeśli inna niż poczty 0..1 7 ZIPCODE Kod pocztowy Np. 00-950 1 8 POST Nazwa miejscowości, w której jest poczta 1 9 COUNTRY Nazwa kraju (zakładamy Polskę, jeśli brak) 0..1 POSTSCRIPT Dopisek adresu. Nie wchodzi w skład 10 informacji gospodarczej w rozumieniu ustawy. Może zostać użyty przy wysyłaniu listu do dłużnika Np. księgowość 0..1 11 DESCRIPTION Opis adresu. Nie wchodzi w skład informacji gospodarczej w rozumieniu ustawy. Widoczny tylko dla wprowadzającego dane Np. Adres domowy Zarówno opis (DESCRIPTION) jak i dopisek (POSTCRIPT) nie są informacją gospodarczą w rozumieniu ustawy, więc nie zostaną ujawnione osobom trzecim. Dopisek, jeśli zostanie podany, znajdzie się na adrasie ewentualnych powiadomień wysyłanych przez biuro do dłużnika. Jeśli dłużnikiem jest przedsiębiorstwo jednosobowe, można podać dane osoby fizycznej, która jest tym przedsiębiorstwem. Dane te nie muszą spełniać ustawowych wymogów dotyczących zakresu wymaganych danych osoby fizycznej. 0..1 Opracowanie wewnętrzne Strona 11 z 91 Copyright Krajowy Rejestr Długów, 2014
Dodatkowo można podać imiona i nazwiska osób wchodzących w skład organów zarządzających, prokurentów lub pełnomocników tego podmiotu. W tym zakresie danych nowa ustawa zezwala na przyjmowanie jedynie imiona i nazwiska pełnomocników co powinno być oznaczone w polu Role słowem pełnomocnik. W przypadku podania innej roli system nie przetworzy zlecenia. Wprowadzając informację gospodarczą o zobowiązaniach przedsiębiorcy (sprawę) można także podać dane: Wspólników dłużnika będącego spółką z ograniczoną odpowiedzialnością, posiadającego co najmniej 100% kapitału zakładowego tej spółki Akcjonariusza dłużnika będącego jednoosobową spółką akcyjną Tabela 2 : Dane przedsiębiorstwa Dana Opis Uwagi Krotność A B C D 1 NAME Nazwa (oznaczenie) przedsiębiorstwa Niepusty tekst 1 2 NIP Numer identyfikacji podatkowej 1 3 REGON Numer regon przedsiębiorstwa 0..1 4 REGISTRATIONNUMBER Numer w rejestrze Muszą wystąpić 5 REGISTRYNAME Nazwa rejestru, w którym jest w/w numer razem 1 6 SEATADDRESS Siedziba i adres Patrz Tab. 1 1 7 EKD Numer EKD (Europejska Klasyfikacja Działalności) 0..1 8 PERSONS Lista osób powiązanych z firmą 0..1 Dane te, oprócz tych opisujących przedsiębiorstwa (tabela 1-2), mogą też zawierać dane osób fizycznych, które są przedsiębiorcami i wspólnikami bądź akcjonariuszami (jednoosobowymi) dłużnika (tabela 1-3). Date te nie są jednak wymagane, więc nie podlegają rygorom wymagalności określanym dla dłużnika. Można więc podac np. tylko numery NIP wspólników. Obecnie system KRD nie wspiera tych danych. Zlecenie zawierające dane wspólników nie zostanie przetworzone. Ustawa z 2003 roku pozwalała na podanie wielu udziałowców dłużnika, ale wg nowej ustawy można podać tylko jednego udziałowca takiego który posiada 100% udziałów w spółce kapitałowej (100% akcji spółki akcyjnej lub 100% udziału w kapitale spółki z o.o.) 1.1.1.2. Osoba fizyczna Wymagane dane osoby fizycznej to imię i nazwisko, oraz numer PESEL (dla obywateli polskich). Pozostałe, opcjonalne dane to obywatelstwo, typ, seria i numer dokumentu tożsamości oraz adres zameldowania (na pobyt stały lub czasowy). Jeśli dłużnikiem jest osoba fizyczna prowadząca działalność gospodarczą, można podać dane jego przedsiębiorstwa, dane te nie podlegają jednak wtedy ustawowym wymogom wymagalności danych osób prawnych. Tabela 3 : Dane osoby fizycznej Dana Opis Uwagi Krotność A B C D 1 FIRSTNAME Imię 1 2 SECONDNAME Drugie imię 0..1 3 SURNAME Nazwisko 1 4 CITIZENSHIP Obywatelstwo 1 Opracowanie wewnętrzne Strona 12 z 91 Copyright Krajowy Rejestr Długów, 2014
5 PESEL Numer PESEL (wymagany dla obywateli polskich) 6 IDENTITYCARD Opis dokumentu potwierdzającego tożsamość Seria i numer 1..2 7 ADDRESS Adres zameldowania (pobyt stały lub czasowy) Patrz Tab. 1 0..1 8 BIRTHDAY Data urodzin 0..1 1.1.1.3. Jednoosobowa działalność gospodarcza. Ten rodzaj dzłożnika został doprecyzowany przez ustawę z 14 czerwca 2010 roku. Podstawowymi danymi wymaganymi do przekazania dłużnika będącego jednoosobową działalnością gospodarczą jest oznaczenie dłużnika, numer identyfikacji podatkowej (NIP lub inny w przypadku podmiotów zagranicznych) oraz adres pod którym wykonywana jest działalność. Nowa ustawa jako oznaczenie przedsiębiorcy prowadzącego jednoosobową działalność gospodarczą wymaga oprócz nazwy, podania imienia i nazwiska właściciela np. P.H.U. Handlex Jan Kowalski. Zatem minimalny zestaw danych dla tego typu dłużnika składa się z oznaczenia (z imieniem i nazwiskiem) w polu Name, numeru NIP oraz pól FirstName i Surname. Aby przekazać informacje tego rodzaju dłużnika poprzez protokół NICCI zaleca się użycie elementu LegalPerson uzupełniony o co najmniej imię i nazwisko osoby fizycznej. 1.1.2. Dane zobowiązań Zobowiązanie opisane jest co najmniej trzema elementami: tytułem prawnym zobowiązania, kwotą i walutą zaległości oraz datą powstania zaległości. Tytuł prawny składa się z dwóch pól: Title oraz Type przy czym należy podać co najmniej jeden z nich. Jeżeli w polu Title wpiszemy pełny tytuł prawny np. Faktura VAT 123/A/2010, a pole Type pozostawimy puste, to system będzie próbował dopasować z istniejącego słownika typ zobowiązania. Jeżeli początek ciągu znaków w polu Title będzie zawierał pasujący element słownika, to zostanie on przeniesiony do pola Type. Dodatkowo podać można kwotę i walutę zobowiązania (kwoty te będą różne np. wtedy, kiedy zobowiązanie zostało częściowo spłacone). Do danych wierzytelności można także dodać opis stanu postępowań dotyczących zobowiązania (np. o toczących się postępowaniach sądowych lub egzekucyjnych) oraz informację o kwestionowaniu przez dłużnika całości bądź części zobowiązania. Opisy te mają formę luźnego tekstu o maksymalnej długości 1024 znaków. Pominięcie pola o kwestionowaniu przez dłużnika całości lub części zobowiązania zostanie oznaczone w systemie jako dłużnik nie zgłasza zarzutów. Do systemu KRD możliwe jest przekazywanie czterech rodzajów zobowiązań: zwykłe, alimentacyjne, stwierdzone tytułem wykonawczym oraz z tytułu pieczy zastępczej. Trasza NICCI pozwala na przekazanie w jednej sprawie (patrz punkt 2.2) tylko jednego rodzaju zobowiązania. Przekazując do biura dane o zobowiązaniu zwykłym lub stwierdzonym tytułem wykonawczym klient musi podać datę wysłania do dłużnika wezwania do zapłaty tego zobawiązania. To wezwanie do zapłaty musi zawierać ostrzeżenie o zamiarze przekazania danych do biura informacji gospodarczej, z podaniem nazwy i adresu siedziby tego biura. Opracowanie wewnętrzne Strona 13 z 91 Copyright Krajowy Rejestr Długów, 2014
1.1.2.1. Zobowiązanie zwykłe Aby informacja o tego typu zobowiązaniu mogła zostać przyjęta przez biuro, przekazane dane muszą spełniać trzy warunki (poza dostarczeniem minimalnych danych): Zobowiązanie jest wymagalne od co najmniej 60 dni (czyli od daty PaymentDate minęło 60 dni) Upłynął co najmniej miesiąc od wysłania wezwania do zapłaty (czyli od daty CallSent ) Łączna kwota zobowiązań dłużnika wobec klienta przekroczyła 200zł jeśli dłużnikiem jest konsument, oraz 500zł jeśli dłużnikiem jest podmiot gospodarczy. Naturalnie spełnione muszą być też wszystkie pozostałe, określone przez ustawe wymogi, które nie są wyspecyfikowane w danych. Dane zobowiązania przekazywane do biura zebrane są w tabeli 1-2. Tabela 4 : Dane zobowiązania Pole Opis Uwagi Krotność A B C D 1 TITLE Tytuł prawny zobowiązania, np. Faktura 145/A/02 Element niepusty 1 2 TYPE Rodzaj zobowiązania, np. faktura, odsetki. Patrz tekst 0..1 3 DEBT Kwota i waluta zobowiązania Patrz moneytype 0..1 4 ARREARS Kwota i waluta zaległości Patrz moneytype 1 5 PAYMENTDATE Data powstania zaległości 1 6 PROCEEDINGS Opis stanu postępowań dotyczących tego zobowiązania 0..1 7 OBJECTIONS Informacja o kwestionowaniu przez dłużnika całości lub części zobowiązania. Może być pusty 0..1 8 CALLSENT Data wysłania do dłużnika wezwania do zapłaty Patrz tekst 1 1.1.2.2. Zobowiązanie stwierdzone tytułem wykonawczym Ten szczególny rodzaj zobowiązania skierowany jest do wierzycieli, którzy posiadają do niego tytuł wykonawczy np. wyrok sądu. Jako tytuł prawny zobowiązania należy podać rodzaj tytułu wykonaczego, datę wystawienia, nazwę organu, który go wystawił oraz sygnaturę. Należy również wskazać datę powstania zaległości, oraz datę wysłania powiadomienia o zamiarze dopisania zobowiązania do KRD. Od daty wysłania powiadomienia musi upłynąć conakmniej 14 dni. Dla tego typu zobowiązań nie ma określonej minimalnej kwoty. Musi ona być jedynie większa od zera. Tabela 5 : Dane zobowiązania stwierdzonego tytułem wykonawczym Pole Opis Uwagi Krotność A B C D 1 EXECUTIVETYPE Tytuł wykonawczy, np. Wyrok Sądu Element niepusty 1 2 EXECUTIVEOBLI Data wydania tytułu wykonawczego GATIONDATE 1 3 SIGNATURE Sygnatura tytułu wykonawczego 1 4 DECIDINGAUTH Dane organu orzekającego ORITY 1 5 PAYMENTDATE Data powstania zaległości 1 6 PROCEEDINGS Opis stanu postępowań dotyczących tego zobowiązania 0..1 7 OBJECTIONS Informacja o kwestionowaniu przez dłużnika całości lub części zobowiązania. Może być pusty 0..1 8 CALLSENT Data wysłania do dłużnika wezwania do zapłaty Patrz tekst 1 9 DEBT Kwota i waluta zobowiązania Patrz moneytype 0..1 10 ARREARS Kwota i waluta zaległości Patrz moneytype 1 Opracowanie wewnętrzne Strona 14 z 91 Copyright Krajowy Rejestr Długów, 2014
1.1.2.3. Zobowiązanie alimentacyjne Zobowiązania alimentacyjne mogą być łączone jedynie z dłużnikiem będącym konsumentem (Consumer). Przy tego typu zobowiązaniach wysłanie powiadomienia o zamiarze dopisania do KRD nie jest wymagane, zatem pole CallSent może zostać pominięte. W polu Title należy podać informację na jaki dzień zostało wyliczone zadłużenie. Tabela 6 : Dane zobowiązania alimentacjnego Pole Opis Uwagi Krotność A B C D 1 TITLE Data aktualna wyliczenia kwoty zadłużenia Element niepusty 1 2 DEBT Kwota i waluta zobowiązania Patrz moneytype 0..1 3 ARREARS Kwota i waluta zaległości Patrz moneytype 1 4 PAYMENTDATE Data powstania zaległości 1 5 PROCEEDINGS Opis stanu postępowań dotyczących tego zobowiązania 0..1 6 OBJECTIONS Informacja o kwestionowaniu przez dłużnika całości lub części zobowiązania. Może być pusty 0..1 7 CALLSENT Data wysłania do dłużnika wezwania do zapłaty Patrz tekst 0..1 1.1.2.4. Zobowiązanie z tytułu pieczy zastępczej Tabela 7 : Dane zobowiązania z tytułu pieczy zastępczej Pole Opis Uwagi Krotność A B C D 1 ASFOR Data aktualna wyliczenia kwoty zadłużenia Element niepusty 1 2 DEBT Kwota i waluta zobowiązania Patrz moneytype 0..1 3 ARREARS Kwota i waluta zaległości Patrz moneytype 1 4 PAYMENTDATE Data powstania zaległości 1 5 PROCEEDINGS Opis stanu postępowań dotyczących tego zobowiązania 0..1 6 OBJECTIONS Informacja o kwestionowaniu przez dłużnika całości lub części zobowiązania. Może być pusty 0..1 1.2. Informacje o spłaconych zobowiązaniach oraz informacje o posłużeniu się falszywym dokumentem Protokoły NICCI w wersji 2.1 i niższej nie wspierają już tego typu informacji ze względu na znaczne zmiany zakresu danych w nowej ustawie. Opracowanie wewnętrzne Strona 15 z 91 Copyright Krajowy Rejestr Długów, 2014
2. Zlecenia 2.1. Zlecenia dotyczące informacji gospodarczych Do biura informacji gospodarczych można przekazywać zlecenia wykonania usług. Te usługi dotyczą zarządzania informacjami gospodarczymi (tylko zobowiązania): dodawania, modyfikacji, usuwania, zawieszania i odwieszania publikacji informacji gospodarczych. Dodanie bądź modyfikacja informacji gospodarczej, polega na przekazaniu danych tej informacji (nowych bądź zmodyfikowanych) w ramach elementu AddCaseObligation lub UpdateCaseObligation. Usunięcie, zawieszenie bądź odwieszenie informacji gospodarczej polega na przekazaniu ustalonego (w czasie dostarczania tej informacji) identyfikatora informacji w ramach odpowiednich elementów identyfikujących zlecenia. Są to odpowiednio elementy: RemoveCaseObligation, SuspendCaseObligation oraz UnsuspendCaseObligation. Dodatkowo, zawieszając publikację informacji gospodarczej należy podac datę, do której publikacja tej informacji ma być wsztrzymana. Podanie daty jest obowiązkowe, nic jednak nie stoi na przeszkodzie by podac datę bardzo odległą, np. 2048-12-31. 2.2. Zlecenia dotyczące spraw Pewną specyficzną grupą informacji gospodarczych są sprawy. Sprawy można dodawać i usuwać, jak i zawieszać. Zawieszanie polega na przkazaniu zlecenia SuspendCase zawierającego dwie daty: daty od kiedy sprawa ma zostać zawieszona (datefrom można ten element pominąć i przyjęta zostanie data bieżąca) oraz daty zakończenia zawieszenia sprawy (dateto element obowiązkowy). Odwieszenia dokonujemy poprzez zlecenie UnsuspendCase. Modyfikować można tylko konkretne zobowiązanie, a modyfikacja sprawy może polegac albo na modyfikacji danych dłużnika (co oznacza de facto modyfikację tych danych w każdym zobowiązaniu tej sprawy) albo na dodaniu bądź usunięciu zobowiązań. Dodanie bądź modyfikacja sprawy to przekazanie całych (nowych bądź zmodyfikowanych) danych sprawy (czyli danych dłużnika i zobowiązań) w ramach odpowiedniego elementu: AddCase bądź UpdateCase. Usunięcie sprawy polega na przekazaniu identyfikatora sprawy w kontekscie elementu RemoveCase. Możliwe są też operacje bezpośrednio na samych zobowiązaniach. Dodanie bądź modyfikacja polega na przekazaniu danych (nowych bądź zmodyfikowanych) w ramach elementu AddCaseObligation lub UpdateCaseObligation. Podczas dodawania pojedynczego zobowiązania należy dodatkowo wskazać identyfikator sprawy, do której zostanie ono dołączone. Usunięcie zobowiązania realizuje zlecenie RemoveCaseObligation przyjmujące identyfikator informacji. By zawiesić, bądź odwołać zawieszenie publikacji zobowiązania sprawy należy identyfikator tej wierzytelności przekazać w ramach odpowiedniego elmentu, czyli SuspendCaseObligation bądź UnsuspendCaseObligation. Podobnie jak w wypadku zawieszania innych informacji gospodarczych, obowiązkowe jest podanie dnia, do którego wstrzymujemy publikację tej informacji. Czyli informacja będzie ponownie publikowana dnia następnego po podanej dacie. Istnieje też możliwość wstrzymywania publikacji całych spraw. Datami w jakich wstrzymana jest publikacja sprawy jako całości manipulują zlecenia Opracowanie wewnętrzne Strona 16 z 91 Copyright Krajowy Rejestr Długów, 2014
typu SuspendCase i UnsuspendCase. Należy tu nadmienić, że stany wstrzymania publikacji sprawy i zobowiązań danej sprawy nie są od siebie zależne. Czyli jeżeli zawesimy publikację jednego zobowiązania, potem zawiesimy publikację całej sprawy a jeszcze później odwołamy wstrzymanie publikacji sprawy, zobowiązanie wcześniej osbono zawieszone, dalej takim pozostaje. Usunięcie wierzytelności realizujemy jako uaktualnienie danych sprawy czyli w ramach elementu UpdateCase podajemy dane sprawy pomijając wierzytelności, które chcemy usunąć. Podobnie zresztą modyfikujemy dane dłużnika jeśli chemy usunąć podanego wcześniej wspólnika, podajemy jako zaktualizowane dane tego dłużnika bez danych wspólnika. Klient ma możliwość uzyskania listy swoich spraw za pomocą zlecenia GetCases. Można także zmieniać właściela sprawy zleceniem ChangeCaseOwner. Poczynając od wersji 2.1 protokół umożliwia synchronizację listy spraw, które są w bazie KRD z listą spraw, które klient posiada w swoim systemie. Operacja ta polega na tym, że klient wysyła do KRD aktualne dane wszystkich swoich spraw (w postaci zlecenia ProcessSnapshot ) i w odpowiedzi dostaje listę zleceń, które musi przesłać do systemu KRD, aby stan bazy KRD zrównał się ze stanem bazy klienta. Lista zleceń w odpowiedzi jest fragmentem transzy XML zgodnej ze schematem protokołu Nicci. Ten fragment klient może przesłać w kolejnej transzy jako zlecenia do bazy KRD. W odpowiedzi przesyłanej do klienta znajdują się: zlecenia dodania spraw, które są w bazie klienta a nie zostały znalezione w bazie KRD, zlecenia aktualizacji dla spraw, które już zostały przez klienta przekazane do KRD, ale ich dane zostały zmienione zlecenia usunięcia tych spraw z bazy KRD, które nie znalazły się na aktualnej liście spraw uzyskanej od klienta, a były wcześniej przekazane do KRD 2.3. Zlecenia dotyczące ujawniania informacji gospodarczych Przy pomocy protokołu Nicci, począwszy od wersji 2.0, klienci mają także możliwość pozyskiwania informacji gospodarczych o innych podmiotach. W tym celu w pierwszej kolejności należy wysłać prośbę o ujawnienie informacji gospodarczych przy pomocy zlecenia typu Search. W tym elemencie podaje się kryteria wyszukiwania informacji, które determinują typ informacji jakich system będzie szukał. Można wyszukiwać wg numeru NIP (informacje o niespełnionych zobowiazaniach przedsiębiorców) lub PESEL (informacje o spełnionych i niespełnionych zobowiązaniach konsumentów). Do wyszukiwania informacji o zobowiązaniach powstałych przed wejściem w życie ustawy o Buirach Informacji Gospodarczej, potrzebne jest upoważnienie przedsiębiorcy bądź konumenta, którego dane chcemy wyszukać. Dodatkowo wyszukiwanie informacji o konumentach możliwe jest tylko po uszyskaniu stosownego upoważnienia (nie potrzebują go tylko instytucje takie jak NIK czy prokuratura). Informacje o posiadaniu takich upoważnien deklaruje klient podając datę uzyskania takiego upoważnienia. Upoważnienia te ważne są przez 30 dni. Raport z informacjami gospodarczymi spełniajacymi wymogi klienta jest zapamiętywany w systemie i jest dostępny dla klienta także w późniejszym czasie (w ograniczonym zakresie, aktualnie w ciągu 24 godzin od jego Opracowanie wewnętrzne Strona 17 z 91 Copyright Krajowy Rejestr Długów, 2014
wygenerowania). Klient może pobrać listę swoich raportów z informacjami zlecając zadanie GetDisclosureReports lub obejrzeć szczegóły konkretnego raportu przy pomocy zlecenia GetDisclosureReport. Jeżeli w raporcie z systemu KRD znajdą się informacje gospodarcze niezgodne ze schematem protokołu, a będące w zakresie minimalnych danych wymaganych przez ustawę (np. identyfikator podatkowy inny niż NIP), system zwróci informację o błędzie i nie wygeneruje w transzy wynikowej raportu. Jeżeli wygenerowany raport zawiera informacje wykraczające poza zakres wymagany, ale niezgodne ze schematem protokołu (np. adres korespondencyjny dłużnika będącego konsumentem) w transzy wynikowej pojawi się w atrybut hastruncatedinformations. Oznacza on, że raport zawiera dodatkowe informacje, których nie da się przekazać za pomocą transzy NICCI 2.1 Tego typu raporty można pobrać w pełnej formie tylko poprzez stronę WWW. 2.4. Zlecenia dotyczące monitorowania Biuro umożliwia klientom monitorowanie zdarzeń, które powiązane są z odpowiednimi numerami NIP. Monitoring polega na tym, że gdy ktokolwiek wykona pewną operacją związaną z monitorowanym NIP, to klient monitorujący zostanie o tym powiadomiony. Sposób powiadomienia wybiera sam klient i może to ono zrealizowane poprzez wysłanie emaila na odpowiedni adres, badź poprzez umieszczenie odpowiedniej informacji w serwiscie klienta na stronie www. Dodawanie oraz aktualizację warunków monitorowania wykonuje się przy pomocy zleceń opisanych elemrntami, odpowiednio AddMonitorCondition oraz UpdateMonitorCondition. W każdej chwili można zatrzymać dalsze monitorowanie poprzez StopMonitorCondition. Klient ma także możliwość usuwania wprowadzonych przez siebie warunków monitorowania przy pomocy zlecenia RemoveMonitorCondition. Usunięcie można zlecić z przyszłą datą. Listę dodanych przez siebie warunków monitora klient może pozyskać zlecając zadanie GetMonitorConditions. Do pobrania listy zdarzeń z systemu służy element CheckEvents. W odpowiedzi otrzymujemy listę zdarzeń wygenerowanych przez system na podstawie aktywnych warunków monitorowania. Lista taka zawiera tylko zdarzenia z dnia poprzedniego. 2.5. Zlecenia nie wspierane przez wersję 2.1 Istnieje grupa zleceń, które nie są obsługiwane przez system. Należą do nich wspomniane już zlecenia dotyczące informacji gospodarczych o spełnionych zobowiązaniach czy o posłużeniu się cudzym lub podrobionym dokumentem oraz zlecenia CaseValidationEvents i InformationValidationEvents dotyczące weryfikaji przekazanych danych. Pełna lista zleceń nie obsługiwanych przez wersję 2.1: AddInformation UpdateInformation RemoveInformation SuspendInformation Opracowanie wewnętrzne Strona 18 z 91 Copyright Krajowy Rejestr Długów, 2014
UnsuspendInformation ChangeInformationowner GetInformations CaseValidationEvents InformationValidationEvents SearchRegistry Opracowanie wewnętrzne Strona 19 z 91 Copyright Krajowy Rejestr Długów, 2014
3. Opis schematu XML W tej części dokumentu opisane zostaną elementy składowe plików XSD, które składają się na definicję schematu XML plików wymiany danych. W punkcie 3.1 opisane są typy oraz grupy wykorzystywane w trakcie wymiany danych. Punkt 3.2 zawiera opis definicji pliku ze zleceniami do wykonania, który klienci przesyłają do biura. Definicja odpowiedzi, którą biuro wysyła do klientów opisana jest w punkcie 3.3. 3.1. Plik niccicommon.xsd Plik zawiera definicje typów podswtaowych oraz wszystkich elementów, które są wspólne zarówno dla pliku wejściowego jaki i pliku z odpowiedzią. 3.1.1. Typy proste Typy proste definiują wymagania stawiane pojedynczym wartościom, takim jak numer NIP czy data. Wymagania te obejmują minimalną i maksymalną długość wartości, jak też jej formatu. Format ten jest opisany za pomocą wyrażeń regularnych (regular expresions, regex ), których opis wykracza poza zakres tego dokumentu. 3.1.1.1. Typ nonemptystring <xs:simpletype name="nonemptystring"> <xs:restriction base="xs:string"> <xs:minlength value="1"/> </xs:restriction> </xs:simpletype> Typ oznaczający niepusty łańcuch znaków. 3.1.1.2. Typy nonemptystringxxx <xs:simpletype name="nonemptystring16"> <xs:restriction base="nonemptystring"> <xs:maxlength value="16"/> </xs:restriction> </xs:simpletype> Typy oznaczające niepusty łańcuch znaków o określonej maksymalnej długości. 3.1.1.3. Typ datetype <xs:simpletype name="datetype"> <xs:restriction base="xs:date"> <xs:pattern value="\d{4}-\d{2}-\d{2}"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają datę w formacie yyyy-mm-dd. Opracowanie wewnętrzne Strona 20 z 91 Copyright Krajowy Rejestr Długów, 2014
3.1.1.4. Typ guidtype <xs:simpletype name="guidtype"> <xs:restriction base="xs:string"> <xs:pattern value="[0-9a-fa-f]{8}-[0-9a-fa-f]{4}-[0-9a-fa-f]{4}-[0-9afa-f]{4}-[0-9a-fa-f]{12}"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają unikalny identyfikator GUID. 3.1.1.5. Typ orderidtype <xs:simpletype name="orderidtype"> <xs:restriction base="nonemptystring128"/> </xs:simpletype> Elementy tego typu zwierają unikalny identyfikator zadania zlecanego przez klenta do biura. Typ jest zgodny z nonemptystring128. 3.1.1.6. Typ loginnametype <xs:simpletype name="loginnametype"> <xs:restriction base="nonemptystring256"/> </xs:simpletype> Elementy tego typu zawierają identyfikator użytkownika systemu. Pod względem wartości typ jest zgodny z typem nonemptystring256. 3.1.1.7. Typ peseltype <xs:simpletype name="peseltype"> <xs:restriction base="xs:string"> <xs:pattern value="\d{11}"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają numer Pesel. Wartość tego numeru nie jest sprawdzana pod względem poprawności (poza stwierdzeniem, że składa się z samych cyfr), a jedynie pod względem długości. 3.1.1.8. Typ niptype <xs:simpletype name="niptype"> <xs:restriction base="xs:string"> <xs:pattern value="[\d-]{10,13}"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają numer NIP. Wartość tego numeru nie jest sprawdzana pod względem poprawności, a jedynie pod względem długości oraz formatu. Numer NIP można zapisać w wersji z kreskami lub bez. Opracowanie wewnętrzne Strona 21 z 91 Copyright Krajowy Rejestr Długów, 2014
3.1.1.9. Typ regontype <xs:simpletype name="regontype"> <xs:restriction base="xs:string"> <xs:pattern value="\d{9}"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają numer Regon. Wartość tego numeru nie jest sprawdzana pod względem poprawności, a jedynie pod względem długości. 3.1.1.10. Typ ekdtype <xs:simpletype name="ekdtype"> <xs:restriction base="xs:string"> <xs:pattern value="\d[\d\.]*"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają numer EKD (Europejska Klasyfikacja Działalności). Numer EKD musi składać się, z co najmniej jednej cyfry. Poszczególne cyfry mogą być rozdzielone kropką. 3.1.1.11. Typ decimaltype <xs:simpletype name="decimaltype"> <xs:restriction base="xs:decimal"> <xs:pattern value="-?\d+[.]?\d*"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają liczbę zmiennoprzecinkową, w której część ułamkowa (o ile istnieje) jest oddzielona kropką. Dodatkowo liczba może być poprzedzona znakiem (kod Ascii 45). 3.1.1.12. Typ emailtype <xs:simpletype name="emailtype"> <xs:restriction base="xs:string"> <xs:maxlength value="64"/> <xs:pattern value="[a-za-z0-9][-_a-za-z0-9\.]+@[-_a-za-z0-9\.]*[a-za- Z]"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają adres email. 3.1.1.13. Typ phonenumbertype <xs:simpletype name="phonenumbertype"> <xs:restriction base="xs:string"> <xs:maxlength value="32"/> <xs:pattern value="(\+\d+)?(\(\d+\))?[\d -]*"/> Opracowanie wewnętrzne Strona 22 z 91 Copyright Krajowy Rejestr Długów, 2014
</xs:restriction> </xs:simpletype> Elementy tego typu zawierają numer telefonu. 3.1.1.14. Typ versiontype <xs:simpletype name="versiontype"> <xs:restriction base="xs:string"> <xs:pattern value="2\.1"/> </xs:restriction> </xs:simpletype> Typ służy do określenia wersji typu schematu xml. W tej wersji dokumentu dozwolona jest jedynie wartość 2.1. 3.1.1.15. Typ currencytype <xs:simpletype name="currencytype"> <xs:restriction base="xs:string"> <xs:pattern value="[a-za-z]{3}"/> </xs:restriction> </xs:simpletype> Typ słuzy do określenia rodzaju waluty będącego trzyliterowym skrótem. 3.1.1.16. Typ monitornotificationtypeenum <xs:simpletype name="monitornotificationtypeenum"> <xs:restriction base="xs:integer"> <xs:enumeration value="mnnoone"/> <xs:enumeration value="mnowner"/> <xs:enumeration value="mnmainuser"/> <xs:enumeration value="mnallusers"/> </xs:restriction> </xs:simpletype> Elementy tego typu zawierają informację o tym, na jaki adres email ma zostać przekazana informacja o zaistnieniu zdarzenia śledzonego przez monitor. Element może przyjmować tylko jedną z dopuszczalnych wartości: - mnnoone email ma nie być w ogóle wysyłany, - mnowner wysyłka tylko do właściciela monitora, - mnmainuser wysyłka na główny email firmy, - mnallusers wysyłka na wszystkie emalie firmy. 3.1.2. Typy złożone Typy złożone definują struktury danych, składających się z więcej niż jednego elementu. Określają one wymaganą krotność oraz typ bądź format elementów składowych. Opracowanie wewnętrzne Strona 23 z 91 Copyright Krajowy Rejestr Długów, 2014
3.1.2.1. Typ headertype <xs:complextype name="headertype"> <xs:element name="date" type="datetype"/> <xs:element name="number" type="xs:positiveinteger"/> <xs:element name="clientid" type="guidtype"/> <xs:element name="category" type="nonemptystring256" minoccurs="0"/> <xs:element name="generator" type="nonemptystring256" minoccurs="0"/> <xs:element name="version" type="versiontype"/> Typ służy do definiowana nagłówka w plikach wymienianych pomiędzy klientem a biurem. Typ składa się z następującej sekwencji elementów: - Date - typu datetype zawierający datę przygotowania pliku, - Number - będący całkowitą liczbą dodatnią oznaczającą numer kolejnej transzy danych, - ClientID - typu guidtype określający identyfikator klienta, od którego jest plik, bądź do którego wysyłany jest raport. - Category typu nonemptystring256, który zawiera dowolną informację dodatkowo opisującą transzę. Znaczenie tego elementu jest ustalane z każdym klientem osobno. Element może być pominiety. - Generator typu nonemptystring256 zawierający nazwę programu, który posłużył do wygenerowania transzy XML. Element może być pominięty. - Version - typu versiontype określający wersję pliku schematu. Przykład 3-1 Typ headertype <Header> <Date>2004-08-15</Date> <Number>1222</Number> <Client>12345678-ABCD-1234-4321-1234567890AB</Client> <Category>Kategoria1</Category> <Generator>XMLScript Generator 1.0</Generator> <Version>2.1</Version> </Header> 3.1.2.2. Typ moneytype <xs:complextype name="moneytype"> <xs:element name="amount" type="decimaltype"/> <xs:element name="currency" type="currencytype" default="pln" minoccurs="0"/> Typ służy do definiowania elementów zawierających kwotę pieniędzy. Składa się z dwóch elementów: - Amount typu decimaltype będący wysokością kwoty. Pole jest wymagane, Opracowanie wewnętrzne Strona 24 z 91 Copyright Krajowy Rejestr Długów, 2014
- Currency typu currencytype będący typem waluty. Prawidłową wartością jest ciąg składający się z trzech liter (wielkich lub małych). Podanie kodu waluty nie jest obowiązkowe i w takim przypadku domyślnie przyjmowana jest wartość PLN. Element zawierający kwotę pokazany jest w przykładzie 3-1. Przykład 3-2 Elementy Debt typu moneytype <Debt> <Amount>100</Amount> <Currency>Eur</Currency> </Debt> 3.1.2.3. Typ propertiestype <xs:complextype name="propertiestype"> <xs:element name="property" maxoccurs="unbounded"> <xs:complextype> <xs:group ref="propertygroup"/> </xs:element> Element tego typu zawiera, co najmniej jeden element Property typu propertytype zawierający w sobie element typu propertygroup. Element jest kolekcją dodatkowych właściwości pewnych obiektów. 3.1.2.4. Typ addresstype <xs:complextype name="addresstype"> <xs:choice> <xs:choice> <xs:element name="city" type="nonemptystring32"/> <xs:group ref="streetgroup" minoccurs="0"/> <xs:group ref="streetgroup"/> </xs:choice> <xs:element name="building" type="nonemptystring16" minoccurs="0"/> <xs:element name="flat" type="nonemptystring16" minoccurs="0"/> <xs:element name="zipcode" type="nonemptystring16"/> <xs:element name="post" type="nonemptystring32"/> <xs:element name="country" type="nonemptystring128" minoccurs="0"/> <xs:element name="description" type="nonemptystring256" minoccurs="0"/> <xs:element name="postscript" type="nonemptystring128" minoccurs="0"/> Opracowanie wewnętrzne Strona 25 z 91 Copyright Krajowy Rejestr Długów, 2014
<xs:element name="line" type="nonemptystring128" minoccurs="2" maxoccurs="4"/> </xs:choice> Element tego typu zawiera dane o adresie. Adres można podać na dwa sposoby. Pierwszy to wymienienie kolejno wszystkich niezbędnych składników adresu, drugi to podanie adres w postaci linii tekstu. W pierwszym przypadku element typu addresstype składa się z sekwencji nastepujących elementów: - City i elementu grupy streetgroup jeżeli element City będzie podany, to elementy z grupy streetgroup nie są wymagane. W przypadku gdy podamy element grupy streetgroup, to nie jest wymagany element City, - Building numer budynku. Element może być pominięty, - Flat numer mieszkania. Element może być pominięty, - ZipCode kod pocztowy. Element obowiązkowy, - Post nazwa poczty. Element obowiązkowy. - Country nazwa kraju. Element może być pominięty, - Description dodatkowy opis adresu. Element może być pominięty, - Postscript dopisek w adresie. Element może być pominięty. W przypadku, gdy adres podawany jest w postaci linii, to element addresstype składa się z sekwencji elementów Line. Są to niepuste łańcuchy znaków. Elementy Line muszą wystąpić 2 do 4 razy. Wszystkie powyższe elementy to niepuste ciągi znaków. W przykładzie 3-3 pokazany jest zformalizowany opis adresu, a w przykładzie 3-4 użyty jest format złożony z kolejnych linii. Przykład 3-3 Typ addresstype format rozszerzony <Address> <City>Kozia Wólka</City> <StreetPrefix>Al.</StreetPrefix> <Street>Wojska Polskiego</Street> <Building>1b</Building> <Flat>22</Flat> <ZipCode>00-200</ZipCode> <Post>Radom</Post> <Country>Polska</Country> <Postscript>dla Pani Zosi</Postscript> </Address> Przykład 3-4 Typ addresstype format prosty <SeatAddress> <Line>ul. Kolejowa 11-13</Line> <Line>00-950 Warszawa</Line> </SeatAddress> Opracowanie wewnętrzne Strona 26 z 91 Copyright Krajowy Rejestr Długów, 2014
3.1.2.5. Typ personstype <xs:complextype name="personstype"> <xs:element name="person" maxoccurs="unbounded"> <xs:complextype> <xs:element name="firstname" type="nonemptystring32"/> <xs:element name="secondname" type="nonemptystring32" minoccurs="0"/> <xs:element name="surname" type="nonemptystring64"/> <xs:element name="role" type="string32" minoccurs="0"/> </xs:element> Element tego typu służy o osobach związanych z dłużnikiem (np.: pełnomocnicy, prokurenci). Typ ten składa się z listy złożonej, z co najmniej jednego elementu Person, który z kolei zawiera sekwencję czterech elementów FirstName, SecondName, Surname oraz Role. Są to łańcuchy znaków zawierające kolejno imię, drugie imię i nazwisko osoby (drugie imie i rola jest elementem niewymagalnym pozostałe tak) oraz nazwę roli w jakiej występuje ta osoba (element może być pominięty). Drugie imię i nazwa roli mogą pozostać puste. Przykład 3-5 Typ personstype <Person> <FirstName>Jan</FirstName> <SecondName>Maria</SecondName> <Surname>Kowalski</Surname> <Role>pełnomocnik</Role> </Person> <Person> <FirstName>Jan</FirstName> <Surname>Kowalski</Surname> </Person> </Persons> 3.1.2.6. Typ stakeholderstype <xs:complextype name="stakeholderstype"> <xs:element name="stakeholder" maxoccurs="unbounded"> <xs:complextype> <xs:group ref="nonrequiredlegalpersondatagroup"/> <xs:group ref="nonrequiredconsumerdatagroup"/> </xs:element> Opracowanie wewnętrzne Strona 27 z 91 Copyright Krajowy Rejestr Długów, 2014
Element tego typu służy do przechowywania danych o wspólnikach, pełnomocnikach, współakcjonariuszach, itp. dłużnika. Typ ten składa się z listy złożonej, z co najmniej jednego elementu Stakeholder, który może zawierać elementy z dwóch grup: 1. nonrequiredlegalpersontype w celu przekazania danych o firmie wspólnika, 2. nonrequiredconsumergroup w celu przekazania danych o wspólniku jako osobie fizycznej. Przykład 3-6 Typ stakeholderstype <Stakeholders> <Stakeholder> <Name>FirmaPol</Name> <Nip>0230450100</Nip> <Regon>200340560</Regon> <RegistrationNumber>20/a/2003</RegistrationNumber> <RegistryName>Rejestr sądowy</registryname> <Ekd>00</Ekd> <SeatAddress> <City>Wrocław</City> <StreetPrefix>pl.</StreetPrefix> <Street>Grunwaldzki</Street> <Building>45</Building> <Flat>16</Flat> <ZipCode>56300</ZipCode> <Post>Wrocław</Post> <Country>Polska</Country> </SeatAddress> <Persons> <Person> <FirstName>Jan</FirstName> <SecondName>Maria</SecondName> <Surname>Kowalski</Surname> <Role>pełnomocnik</Role> </Person> </Persons> <FirstName>Adam</FirstName> <SecondName>Jan</SecondName> <Surname>Przykladowy</Surname> <Citizenship>polskie</Citizenship> <Address> <City>Tczew</City> <StreetPrefix>ul.</StreetPrefix> <Street>Przejazdowa</Street> <Building>8</Building> <Flat>4</Flat> <ZipCode>21200</ZipCode> <Post>Tczew</Post> <Country>Polska</Country> </Address> <Birthday>1980-03-20</Birthday> <Pesel>12345678910</Pesel> </Stakeholder> </Stakeholders> Opracowanie wewnętrzne Strona 28 z 91 Copyright Krajowy Rejestr Długów, 2014