Podręcznik użytkownika usługi R-Connect
SPIS TREŚCI 1. Wstęp... 4 1.1. TERINOLOGIA I DEFINICJE... 4 1.2. OPIS OGÓLNY... 4 2. Komunikacja... 6 2.1. SEGENTACJA KOUNIKATÓW... 6 2.2. SZYFROWANIE KOUNIKATÓW... 6 2.3. ZESTAWIENIE KANAŁU KOUNIKACYJNEGO... 6 3. Aktywacja usługi R-Connect... 7 4. Zmiany w systemie R-Online Biznes... 8 4.1. ZLECENIA... 8 4.1.1. Przetwarzanie zleceń z R-Connect...8 4.1.2. Dodatkowe informacje dla zleceń z R-Connect...8 4.2. ADINISTRACJA... 9 4.2.1. Zarządzanie klientami R-Connect...9 4.2.2. Certyfikaty komunikacyjne... 10 4.2.3. Zarządzanie certyfikatami autoryzacyjnymi... 13 4.3. LOGOWANIE AKTYWNOŚCI R-CONNECT... 16 4.3.1. Historia korzystania z systemu... 17 4.4. DYSPOZYCJA ODYFIKACJA... 18 4.4.1. Dodanie Klienta R-Connect... 18 5. Połączenie z usługą WebService... 19 5.1. TESTOWE WYWOŁANIE USŁUGI PRZY POOCY PROGRAU SOAPUI... 19 5.1.1. Instalacja narzędzia SoapUI... 19 5.1.2. odyfikacja repozytorium kluczy dla SoapUI... 19 5.1.3. Opis konfiguracji programu SoapUI.... 21 5.1.4. ożliwe problemy w trakcie nawiązywania połączenia i ich ewentualne rozwiązanie... 24 5.2. PRZYKŁADOWE WYWOŁANIE USŁUGI PRZY POOCY JĘZYKA PHP... 24 5.2.1. Opis konfiguracji PHP... 24 5.2.2. Generowanie certyfikatu.pem dla PHP... 25 5.2.3. Przykładowe skrypty łączące się z usługą... 27 6. Podpisy Xades... 28 7. Formaty komunikatów... 33
7.1. LISTA WIADOOŚCI... 33 7.2. ODUŁ RACHUNKI... 34 7.2.1. GetAccountReport... 34 7.2.2. GetIncrementalAccountReport... 35 7.2.3. BankToCustomerAccountReport... 36 7.2.4. GetStatement... 41 7.2.5. BankToCustomerStatement... 43 7.2.6. GetCardStatement... 48 7.2.7. BankToCustomerCardStatement... 50 7.2.8. GetAccount... 55 7.2.9. ReturnAccount... 56 7.3. ODUŁ PRZELEWY... 57 7.3.1. CreditTransferInitiation Płatność w PLN... 57 7.3.2. CreditTransferInitiation Przelew wewnętrzny... 63 7.3.3. CreditTransferInitiation Przelew walutowy... 67 7.3.4. CreditTransferInitiation Przelew euroregulowany (SEPA Credit Transfer)... 71 7.3.5. GetPaymentStatusReport Zapytanie o status płatności... 75 7.3.6. PaymentStatusReport Status przelewu... 76 7.3.7. DirectDebitInitiation Polecenie zapłaty (strona wierzyciela)... 78 7.4. ODUŁ RAPORTY... 82 7.4.1. GetDocumentList... 82 7.4.2. DocumentList... 84 7.4.3. PrepareReport... 85 7.4.4. GetDocument... 86 7.4.5. BankToCustomerDocument... 86 7.5. BŁĄD WYKONANIA OPERACJI... 87 7.5.1. ServiceError... 88 7.5.2. Opis kodów błędów... 89 7.6. NIEDOSTĘPNOŚĆ ŚRODOWISKA... 91 7.7. PRZYKŁADOWE ZAPYTANIE I ODPOWIEDŹ.... 92
1. Wstęp 1.1. Terminologia i Definicje Poniżej zebrane terminy występujące w dokumencie. R-Online Biznes serwis internetowy dla klientów Banku. Bank Raiffeisen Bank Polska S.A. Usługa R-Connect - Usługa R-Connect to rozwiązanie umożliwiające komunikację pomiędzy systemami finansowo-księgowymi klientów Banku, a Bankiem za pomocą usług sieciowych (Webservices) Klient R-Connect - Użytkownik techniczny rejestrowany jest wyłącznie w ramach danej firmy. Nie ma dostępu do funkcjonalności bankowości internetowej, przeglądanie jego szczegółów/modyfikacja danych możliwa jest jedynie z poziomu kontekstu firmy. Certyfikaty komunikacyjne certyfikaty służące do zestawienia obustronnego SSL. Certyfikaty te są przypisane do użytkownika R-Connect. Certyfikaty autoryzacyjne certyfikaty służące do podpisu danych zlecenia. Certyfikaty te są przypisane do kont poszczególnych użytkowników. Polityka bezpieczeństwa - Dla klientów R-Connect wybierane będą te same polityki bezpieczeństwa, jak dla użytkowników R-Online Biznes. Dostępne będą następujące polityki bezpieczeństwa: o o Ograniczenie na adres IP Ograniczenie na czas pracy usługi R-Connect Określona polityka bezpieczeństwa dla klienta R-Connect ustawiana będzie tak, jak obecnie dla użytkowników R-Online Biznes na wniosek papierowy. 1.2. Opis ogólny Dokument opisuje usługę R-Conect. Jest to rozwiązanie umożliwiające komunikację pomiędzy systemami finansowo-księgowymi klientów Banku a systemem bankowości internetowej R-Online Biznes za pomocą usług sieciowych (web-services). Poszczególne elementy rozwiązania są oparte o następujące standardy: Rekomendacja Zarządu Związku Banków Polskich w sprawie przyjęcia standardu wymiany danych finansowych pomiędzy klientem a bankiem oraz bankiem a klientem na rynku polskim z listopada 2010 zwany dalej RBE, Wspólna platforma dla branży finansowej do rozwoju wiadomości o standardowej składni XL opracowana przez International Organization for Standardization http://www.iso20022.org/ zwana dalej ISO 20022.
Usługa R-Connect oferuje klientom biznesowym Banku możliwość znacznie szybszej i efektywniejszej wymiany informacji pomiędzy systemami ERP/FK pracującymi wewnątrz firmy, a systemem bankowości elektronicznej. Dzięki R-Connect możliwe jest pobieranie bieżących danych finansowych dla systemów ERP/FK już z poziomu tychże systemów, bez konieczności importu/eksportu plików zawierających te dane pomiędzy systemem bankowości elektronicznej i systemami księgowymi. Takie rozwiązanie znacznie przyspiesza wymianę informacji pomiędzy Bankiem i klientem jak również upraszcza proces wymiany informacji. W identyczny sposób zostaje uproszczony mechanizm wysyłania zleceń przez klienta bezpośrednio z poziomu systemów ERP/FK. Wymiana danych pomiędzy bankiem a klientem w usłudze R-Connect odbywa się przez wymianę komunikatów w formacie plików XL przy wykorzystaniu technologii web-services. Całość komunikacji jest zabezpieczona przez bezpieczny kanał HTTPS z wykorzystaniem dwustronnego SSL. Dzięki tym technologiom komunikacja pomiędzy Bankiem a klientem jest szyfrowana i nikt niepowołany nie będzie miał dostępu do przesyłanych informacji. Dodatkowo dzięki dwustronnemu SSL Bank otrzymuje możliwość wstępnej weryfikacji klienta, a klient może zweryfikować, czy faktycznie podłączył się do serwera Banku. Do zabezpieczenia wymiany informacji zostaną zastosowane dwie pary kluczy kryptograficznych (klucze publiczne będą używane w formie certyfikatów x.509). Jedna z tych par będzie wykorzystywana na poziomie transportowym do zestawiania obustronnego SSL. Druga para będzie wykorzystywana do wykonania podpisu samego dokumentu zlecenia przesyłanego za pomocą systemu (certyfikat autoryzacyjny).
2. Komunikacja 2.1. Segmentacja komunikatów System nie przeprowadza segmentacji przekazywanych komunikatów komunikaty wygenerowane przez oprogramowanie Klienta przekazywane są w całości. 2.2. Szyfrowanie komunikatów Dane przekazywane pomiędzy klientem banku, a infrastrukturą banku podlegają szyfrowaniu na warstwie sieciowej, z wykorzystaniem obustronnie uwierzytelnionego SSLa. Rozwiązanie to zapewnia poufność komunikatów podczas transportu. 2.3. Zestawienie kanału komunikacyjnego Do transportu komunikatów poprzez sieć publiczną wykorzystany jest protokół HTTP wersji 1.1 oraz protokół SOAP. W związku z tym komunikacja pomiędzy Klientem R-Connect (lub systemem ERP z odpowiednią bramką komunikacyjną), a serwerem R-Connect jest zestawiana z użyciem URL (Uniform Resource Locator). Do stworzenia pełnoprawnego tunelu komunikacyjnego po stronie klienta usługi konieczne jest skonfigurowanie klucza prywatnego oraz certyfikatu, który zostanie przypisany do danego podmiotu po stronie banku. Komunikacja pomiędzy klientem a serwerem ma miejsce według klasycznego modelu klient serwer. Serwer przyjmuje zawsze pasywną rolę w komunikacji, w związku z tym to klient (system ERP lub Klient R-Connect) inicjuje wszelkie połączenia. Według zastosowanego schematu komunikacji, klient usługi wysyła żądanie SOAP z umieszczonym wewnątrz niego komunikatem, sformatowanym według opisanego w dokumencie schematu. Struktura SOAP przesyłana jest zawsze metodą POST. Serwer przesyła odpowiedź SOAP z odpowiadającym mu komunikatem. Pierwszym krokiem jest zawsze inicjalizacja tunelu obustronnego SSLa. Po zestawieniu kanału, wewnątrz niego, przekazywane są żądania SOAP. W przypadku korzystania przez Klienta z systemów finansowo księgowych Comarch, do zestawienia połączenia z bankiem można wykorzystać dedykowany kreator generacji certyfikatów, dostępny pod adresem: Na poziomie sieciowym wykonywane jest także dodatkowe uwierzytelnienie klienta względem serwera, które pozwoli na znaczne zwiększenie bezpieczeństwa względem ataków an-in-themiddle. http://raiffeisenpolbank.com/documents/30393755/31563002/comarch+erp+optima+- +kreator+certyfikat%c3%b3w+komunikacyjnych+raiffeisen.zip
3. Aktywacja usługi R-Connect Warunkiem niezbędnym do korzystania przez Klienta z usługi R-connect jest korzystanie przez Klienta z systemu bankowości internetowej R-Online Biznes. W celu uruchomienia/aktywacji usługi konieczne jest złożenie do Banku wypełnionego dokumentu Wniosek o korzystanie z usługi R-Connect. System R-connect będzie funkcjonował na zasadach określonych w regulaminie systemu bankowości internetowej R-Online Biznes i w.w wniosku. Po aktywacji usługi przez Bank niezbędne jest wygenerowanie kluczy komunikacyjnych (opisane w pkt. 4.4.2) oraz konfiguracja połączenia między systemem ERP/FK a usługą WebSerwis (opisane w pkt. 5) W przypadku korzystania przez Klienta z systemów finansowo księgowych Comarch, do zestawienia połączenia z bankiem można wykorzystać dedykowany kreator generacji certyfikatów, dostępny pod adresem: http://raiffeisenpolbank.com/documents/30393755/31563002/comarch+erp+optima+- +kreator+certyfikat%c3%b3w+komunikacyjnych+raiffeisen Do podpisywania zleceń (przelewów) z poziomu systemów ERP/FK niezbędne jest posiadanie podpisu kwalifikowanego i uwierzytelnienie go w systemie R-Online Biznes. (opisane w pkt. 4.2.3)
4. Zmiany w systemie R-Online Biznes 4.1. Zlecenia 4.1.1. Przetwarzanie zleceń z R-Connect Zlecenia wprowadzone za pomocą kanału R-Connect są prezentowane w systemie R-Online Biznes analogicznie, jak pozostałe zlecenia. Zlecenia przesłane poprzez WebService mogą zostać zapisane jako: Zlecenia pojedyncze. Tak są zapisywane zlecenia, które zostały przesłane z wykorzystaniem komunikatu CreditTransferInitiation, dla których w sekcji <PmtInf>, występuje tylko jedno zlecenie. Paczki. Tak są zapisywane wszystkie zlecenia: o wysłane z wykorzystaniem komunikatu CreditTransferInitiation, dla których nie został spełniony warunek dla zleceń pojedynczych, 4.1.2. Dodatkowe informacje dla zleceń z R-Connect Zlecenia i paczki zleceń wprowadzone za pomocą kanału R-Connect są specjalnie oznaczone w systemie R-Online Biznes. Dodatkowe informacje prezentowane są w szczegółach zlecenia, w sekcji: Informacje o akcjach pracowników. Przykład Ekranu, zawierający sekcję informacyjną, znajduje się poniżej:
Zlecenia przesłane usługą R-Connect są widoczne w systemie R-Online Biznes na odpowiednich ekranach opcji Zlecenia. ożna na nich wykonać wszystkie operacje dostępne w systemie R-Online Biznes, odpowiednio do ich statusu, łącznie z edycją danych zlecenia. 4.2. Administracja 4.2.1. Zarządzanie klientami R-Connect W systemie R-Online Biznes po wybraniu w menu górnym opcji Narzędzia, a następnie w menu bocznym opcji R-Connect istnieje pozycja Zarządzanie klientami R-Connect. Z poziomu ekranu możliwe jest aktywowanie klienta R-Connect, jego deaktywowanie, zarządzanie certyfikatami komunikacyjnymi oraz uprawnieniami wybranego klienta R-Connect Na liście z klientami R-Connect prezentowane są następujące elementy: Nazwa Identyfikator Polityka bezpieczeństwa Oraz następujące linki, pozwalające na wykonanie akcji: Certyfikaty (przejście do formatki Certyfikaty komunikacyjne dla wybranego klienta R-Connect) Uprawnienia (przejście do formatki Uprawnienia Klienta R-Connect dla wybranego klienta R- Connect; Aktywuj ( Akcja jest dostępna dla klientów R-Connect którzy mają status Nieaktywny) Deaktywuj (Akcja jest dostępna dla klientów R-Connect którzy mają status Aktywny) Ekran zamieszczony jest poniżej:
4.2.2. Certyfikaty komunikacyjne W ramach tej funkcji możliwe jest zarządzanie certyfikatami komunikacyjnymi klienta R-Connect. Dostęp do ekranu do zarządzania certyfikatami komunikacyjnymi danego klienta R-Connect możliwy jest z listy klientów R-Connect. Z poziomu ekranu możliwe jest aktywowanie, deaktywowanie, pobranie oraz dodanie nowego certyfikatu. Certyfikat wydawany jest dla klienta R-Connect przypisanego do określonej firmy. Na liście wynikowej prezentowane będą certyfikaty o statusie: Aktywne Nieaktywne Wygasłe (przez okres 1 miesiąca od daty wygaśnięcia certyfikatu) Na liście z certyfikatami komunikacyjnymi klienta R-Connect prezentowane są następujące elementy: Odcisk klucza Data i czas generacji Data i czas wygaśnięcia Status Oraz następujące linki, pozwalające na wykonanie akcji: Aktywuj (Akcja jest dostępna dla certyfikatów, które mają status Nieaktywny) Deaktywuj (Akcja jest dostępna dla certyfikatów, które mają status Aktywny) Pobierz (akcja skutkuje pobraniem certyfikatu; zwracany jest certyfikat, który można zapisać na dysku, link jest prezentowany dla certyfikatów niewygasłych ) Nowy certyfikat komunikacyjny (przejście do ekranu pozwalającego na dodanie nowego certyfikatu komunikacyjnego) Ekran zamieszczony jest poniżej:
4.2.2.1. Nowy certyfikat komunikacyjny Generacja kluczy związanych z certyfikatami komunikacyjnymi odbywa się poza systemem R-Online Biznes. Klient Banku generuje klucze we własnym zakresie (przykładowy sposób generacji certyfikatu komunikacyjnego znajduje się w punkcie 4.2.2.2), a następnie importuje go do systemu R-Online Biznes. Akceptowane są tylko pliki CSR w formacie PKCS#10 oparte o RSA 2048 krótsze klucze są odrzucane. Po dodaniu certyfikatu komunikacyjnego klient może go pobrać i zapisać w wybranym przez siebie miejscu. Dostęp do ekranu umożliwiającego dodanie certyfikatu komunikacyjnego możliwy jest z listy certyfikatów komunikacyjnych klienta R-Connect poprzez wybranie akcji Nowy certyfikat komunikacyjny. Po jej wybraniu pojawia się ekran, na którym możliwe jest wskazanie pliku zawierającego certyfikat. Po wskazaniu pliku i wykonaniu akcji Dodaj certyfikat zostanie sprawdzony pod względem poprawności. W przypadku spełnienia reguł walidacji pojawi się na liście certyfikatów komunikacyjnych klienta R-Connect Prototyp ekranu dodawania nowego certyfikatu komunikacyjnego zamieszczony jest poniżej: 4.2.2.2. Wygenerowanie klucza Klienta Generacja kluczy związanych z certyfikatami komunikacyjnymi odbywa się poza systemem R-Online Biznes. Poniższa instrukcja opisuje jeden z możliwych sposobów wygenerowanie klucza Klienta - przy użyciu narzędzia keytool, dołączanego do środowiska uruchomieniowego Java (JRE). Przed przystąpieniem do generowania klucza należy sprawdzić ścieżkę instalacji JRE (np. C:\Program Files\Java\jre). W celu uczynienia poniższego opisu bardziej czytelnym będziemy się posługiwac następującymi skrótami:
{ścieżka_jre} ścieżka instalacji środowiska uruchomieniowego Java (JRE) {identyfikator_klienta} identyfikator klienta R-Connect, dla którego tworzony jest klucz {nazwa_działu} nazwa działu, np. Księgowość {nazwa_organizacji} nazwa firmy, np. RaiffeisenPolbank Bank Polska S.A. {lokalizacja} miejscowość, np. Kraków {województwo} województwo, np. małopolskie {kod_kraju} dwuliterowy kod kraju, np. PL {nazwa_klucza} nazwa, jaka ma być nadana kluczowi, który zostanie utworzony {hasło} hasło do repozytorium kluczy {nazwa_repozytorium_kluczy} nazwa nowoutworzonego repozytorium kluczy wraz ze ścieżką dostępu do niego {nazwa_pliku_z_żądaniem} nazwa pliku.csr, który zostanie wygenerowany (nazwa pliku, który można dodac do listy certyfikatów komunikacyjnych w aplikacji R-Online Biznes) Aby wygenerować klucz należy postępować zgodnie z poniższymi instrukcjami: 1) Utworzenie repozytorium kluczy (klucz, który wygenerujemy będzie w nim przechowywany) 1.1) Uruchomienie wiersza poleceń (np. poprzez wciśnięcie kombinacji klawiszy Win + R a następnie wpisanie cmd w polu Otwórz i wykonanie akcji OK. ) Przykładowy wygląd okna, pozwalającego na otworzenie wiersza poleceń umieszczony jest poniżej: 1.2) W wierszu poleceń należy wprowadzić kolejno następujące instrukcje: cd {ścieżka_jre} \bin Dla ścieżki JRE, którą posługujemy się w przykładzie polecenie to przyjmuje następującą formę: cd C:\Program Files\Java\jre \bin keytool -genkeypair -keyalg RSA -keysize 2048 -dname "CN={identyfikator_klienta}, OU={nazwa_działu}, O={nazwa_organizacji}, L={lokalizacja}, ST={województwo},
C={kod_kraju}" -alias {nazwa_klucza} -keypass {hasło} -keystore {nazwa_repozytorium_kluczy}.jks -storepass {hasło} -validity 360 Przykładowe polecenie, uzupełnione danymi ma następujący format: keytool -genkeypair -keyalg RSA -keysize 2048 -dname "CN=1142, OU=Ksiegowosc, O= RaiffeisenPolbank Bank Polska S.A., L=Krakow, ST=malopolskie, C=PL" -alias klucz1 - keypass Qwe123 -keystore d:\temp\rbpl-ccs-client.jks -storepass Qwe123 -validity 360 UWAGA: Powyższe polecenie działa dla Javy w wersji 6 lub wyższej. Repozytorium kluczy zostało utworzone, a klucz zapisany wewnątrz. Plik z repozytorium można znaleźć we wskazanej w poleceniu lokalizacji. 2) Utworzenie żądania podpisania klucza 2.1) Uruchomienie wiersza poleceń (analogicznie jak w punkcie 1.1) 2.2) Aby utworzyć żądanie podpisania klucza należy wprowadzić kolejno następujące instrukcje: cd {ścieżka_jre} \bin (analogicznie jak w punkcie 1) Dla ścieżki JRE, którą posługujemy się w przykładzie polecenie to przyjmuje następującą formę: cd C:\Program Files\Java\jre \bin keytool -certreq -alias {nazwa_klucza} -keystore {nazwa_repozytorium_kluczy}.jks - storepass {hasło} -file {nazwa_pliku_z_żądaniem}.csr Przykładowe polecenie, uzupełnione danymi ma następujący format: keytool -certreq -alias klucz1 -keystore d:\temp\rbpl-ccs-client.jks -storepass Qwe123 - file d:\temp\klucz1.csr Żądanie zostało utorzone w lokalizacji, która została podana w poleceniu. Tak wygenerowane żądanie można dodać w R-Online Biznes. Proces dodawania został opisany w punkcie 4.2.2.1. 4.2.3. Zarządzanie certyfikatami autoryzacyjnymi W systemie R-Online Biznes są wykorzystywane certyfikaty autoryzacyjne za pomocą których możliwe jest podpisanie danych zleceń przesyłanych usługą R-Connect. System R-Online Biznes umożliwia rejestrację certyfikatów (kwalifikowanych) wystawionych przez zewnętrzne CA. Certyfikaty te muszą jednak uprzednio zostać zaimportowane przez użytkownika w systemie R-Online Biznes. W systemie R-Online Biznes po wybraniu w menu górnym opcji Narzędzia w menu bocznym znajduje się opcja R-Connect. Po wybraniu opcji R-Connect w menu bocznympojawi się pozycja Zarządzanie certyfikatami autoryzacyjnymi. Z poziomu ekranu możliwe jest deaktywowanie certyfikatu autoryzacyjnego, zapoznanie się ze szczegółami certyfikatu autoryzacyjnego oraz dodanie nowego certyfikatu. Na liście wynikowej prezentowane będą certyfikaty o statusie: Aktywne
Nieaktywne Wygasłe (przez okres 1 miesiąca od daty wygaśnięcia certyfikatu) Dla każdego z nich prezentowane są następujące informacje: Odcisk klucza Data i czas generacji Data i czas wygaśnięcia Status Oraz następujące linki, pozwalające na wykonanie akcji: Aktywuj (Akcja jest dostępna dla certyfikatów, które mają status Nieaktywny) Deaktywuj (Akcja jest dostępna dla certyfikatów, które mają status Aktywny) Dodaj certyfikat (przejście do ekranu pozwalającego na zarejestrowanie nowego certyfikatu autoryzacyjnego) Wybranie wiersza na liście wynikowej skutkuje prezentacją ekranu zawierającego szczegóły certyfikatu. Ekran zamieszczony jest poniżej: 4.2.3.1. Rejestracja nowego certyfikatu autoryzacyjnego Dostęp do ekranu umożliwiającego dodanie certyfikatu autoryzacyjnego możliwy jest z listy certyfikatów autoryzacyjnych zalogowanego użytkownika R-Online Biznes poprzez wybranie akcji Dodaj certyfikat. Po jej wybraniu pojawia się ekran, na którym dostępne jest pole typu import
Certyfikat. Dostępna są akcje Dodaj oraz Powrót. Po wybraniu pliku zawierającego certyfikat (plik z rozszerzeniem.cer) i wykonaniu akcji Dodaj wskazany certyfikat zostanie sprawdzony pod względem poprawności. W przypadku spełnienia reguł walidacji certyfikat pojawi się na liście certyfikatów, a następnie zostanie zaprezentowany komunikat informacyjny Operacja wykonana pomyślnie. R-Online Biznes obsługuje tylko certyfikaty szyfrowane algorytmem Base-64 Do systemu R-Online importowana jest tylko część publiczna certyfikatu. Ekran dodawania nowego certyfikatu autoryzacyjnego zamieszczony jest poniżej: 4.2.3.2. Szczegóły certyfikatu autoryzacyjnego Dostęp do ekranu umożliwiającego podejrzenie szczegółów certyfikatu autoryzacyjnego możliwy jest z listy certyfikatów autoryzacyjnych zalogowanego użytkownika R-Online Biznes poprzez wybranie wiersza na liście wynikowej. Na ekranie zostaną zaprezentowane następujące informacje:
Odcisk klucza Data i czas generacji certyfikatu Data i czas wygaśnięcia certyfikatu Wystawca Osoba generująca Data i czas rejestracji Data i czas deaktywacji Osoba deaktywująca Status R-Online Biznes Z poziomu formatki możliwe jest aktywowanie (akcja dostępna dla certyfikatu w statusie Nieaktywny) bądź deaktywowanie certyfikatu(akcja dostępna dla certyfikatu w statusie Aktywny). W przypadku jeśli certyfikat jest w statusie Aktywny pola: Data i czas deaktywowania Osoba deaktywująca nie będą wyświetlane Prototyp ekranu zawierający szczegóły certyfikatu zamieszczony jest poniżej: 4.3. Logowanie aktywności R-Connect Wszystkie zdarzenia aktywne wykonane przez R-Connect są zapisywane w logach użytkownika.
4.3.1. Historia korzystania z systemu W historii korzystania z systemu (zakładka R-Connect ) dodana jest formatka przedstawiająca aktywność związaną z kanałem R-Connect. Dla każdego nowego zdarzenia prezentowane są dane: Data zdarzenia Klient R-Connect Typ zdarzenia. Status Komunikacja w kanale R-Connect jest przypisana do klienta R-Connect. Typy zdarzeń są widoczne w polu Typ zdarzenia. Typy zdarzeń dostępne dla kanału R-Online: o o o o o o o o o o o o o o Pobranie historii operacji zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetAccountReport Przyrostowe pobranie historii operacji zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetIncrementalAccountReport Pobranie wyciągu z rachunku zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetStatement Pobranie wyciągu operacji kartowych - zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetCardStatement Pobranie salda- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetAccount Wysłanie przelewu w PLN- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości CreditTransferInitiation- przelew w PLN Wysłanie przelewu wewnętrznego- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości CreditTransferInitiation przelew wewnętrzny Wysłanie przelewu walutowego- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości CreditTransferInitiation przelew walutowy Wysłanie przelewu euroregulowanego- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości CreditTransferInitiation przelew euroregulowany Pobranie statusu płatności- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetPaymentStatusReport Wysłanie polecenia zapłaty- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości DirectDebitInitiation Pobranie listy raportów - zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetDocumentList Wygenerowanie raportu - zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości PrepareReport Pobranie raportu- zdarzenie zostanie odłożone po wysłaniu przez klienta do Banku wiadomości GetDocument
4.4. Dyspozycja modyfikacja 4.4.1. Dodanie Klienta R-Connect W systemie R-Online Biznes w menu Administracja, w menu bocznym Dyspozycje modyfikacji istnieje pozycja Nowa dyspozycja. Na formatce został dodany nowy typ dyspozycji modyfikacji - Nowy Klient R-Connect, który umożliwia dodanie nowego Klienta R-Connect. Po wybraniu z listy typów dyspozycji pozycji Nowy Klient R-Connect wyświetli się ekran: Zarządzanie dyspozycją modyfikacji jest analogiczne jak w przypadku innych typów dyspozycji.
5. Połączenie z usługą WebService 5.1. Testowe wywołanie usługi przy pomocy programu SoapUI W celu przetestowania komunikacji poprzez Webservice można wykorzystać oprogramowanie SoapUI, które jest wiodącym narzędziem do testowania usług sieciowych. Producent udostępnia w pełni funkcjonalną wersję bezpłatną tego programu. Jest on napisany w Javie dzięki czemu można z niego korzystać na dowolnym systemie operacyjnym, na którym zainstalowano maszynę wirtualną Javy. 5.1.1. Instalacja narzędzia SoapUI Najprostszą metodą na skorzystanie z narzędzia SoapUI jest zainstalowanie/uruchomienie wersji udostępnionej w technologii Java WebStart. Wersje tę można pobrać bezpośrednio z głównej strony projektu: http://www.soapui.org/. Do dyspozycji dostępne są dwie wersje: podstawowa oraz Enterprise. Do wywoływania usług darmowa wersja podstawowa wystarcza w zupełności. Aby ją zainstalować należy pobrać odpowiednią dla swojego systemu operacyjnego wersję instalatora i podążać za instrukcjami podanymi wewnątrz. Po zainstalowaniu narzędzie jest gotowe do pracy. 5.1.2. odyfikacja repozytorium kluczy dla SoapUI 5.1.2.1. Pobranie certyfikatów potrzebnych do utworzenia repozytorium kluczy Pośród opisanych w rozdziale 4.2.2 funkcjonalności formatki Certyfikaty komunikacyjne istnieje możliwość pobierania certyfikatów potrzebnych do utworzenia prawidłowego repozytorium kluczy. 5.1.2.2. odyfikacja repozytorium narzędziem np.: Portecle W trakcie przygotowywania repozytorium kluczy może zostać wykorzystany program Portecle. Repozytorium zostanie przygotowane w sposób pozwalający na jego bezpośrednie zastosowanie w aplikacji SoapUI. Instrukcja zakłada, że operacja tworzenia klucza klienckiego (a wraz z nim nowego repozytorium kluczy) została pomyślnie przeprowadzona. Opis operacji znajduje się w rozdziale 4.2.2.2.
Po uruchomieniu aplikacji należy otworzyć repozytorium poprzez wybranie opcji File -> Open Keystore File lub skrót klawiaturowy Ctrl+O Po otworzeniu repozytorium należy zaimportować do niego zaufane certyfikaty, pobrane wg instrukcji z rozdziału 5.1.2.1. Aby tego dokonać należy wybrać opcję Import Trusted Certificate. W trakcie procesu importu certyfikatów należy potwierdzić, że wskazany certyfikat jest zaufany. Brak potwierdzenia zaufania do certyfikatu spowoduje nie zaimportowanie go. Certyfikat Banku znajduje się pod adresem: http://raiffeisenpolbank.com/bankowosckorporacyjna/bankowosc-elektroniczna/r-connect w zakładce dokumenty do pobrania. W trakcie importu zaistnieje możliwość podania aliasu dla importowanych certyfikatów. ożna pozostawić wartości domyślne lub zmienić je na dowolne inne, które będą unikalne w obrębie repozytorium. Aliasy dla certyfikatów są jedynie nazwami pod którymi dane certyfikaty będą widoczne w repozytorium i są używane w trakcie odwoływania się do konkretnych certyfikatów. Należy także importować pobrany z aplikacji R-Online Biznes klucz podpisany przez CA (patrz rozdział 4.2.2). Akcję tę można dokonać poprzez kliknięcie prawym przyciskiem myszy na parę kluczy i wybranie opcji Import CA Reply
Następnie należy zapisać zmodyfikowane repozytorium kluczy. Jest ono gotowe do tego, by wykorzystać je do połączenia z usługą WebService np. przy pomocy programu SoapUI. 5.1.3. Opis konfiguracji programu SoapUI. Ustawienia programu SoapUI są dostępne w menu głównym (File -> Preferences) lub poprzez skrót klawiaturowy Ctrl+Alt+P. Ponieważ dostęp do usług sieciowych aplikacji R-Connect jest chroniony dwustronnym SSL em konieczne jest dodanie w konfiguracji programu repozytorium certyfikatów (JKS) zawierającego właściwy certyfikat. Opis tworzenia repozytorium można znaleźć w rozdziale 4.2.2.2, a w rozdziale 5.1.2 jest on uzupełniony o dodanie zaufanych certyfikatów serwera usługi. Niezbędne jest podanie hasła do repozytorium. Należy także ustawić wersję protokołu http na 1.1
Taka konfiguracja pozwala na pomyślne utworzenie projektu. ożna tego dokonać poprzez menu główne (File -> New soapui Project) lub poprzez skrót klawiaturowy Ctrl+N. W polu Project Name należy podać nazwę tworzonego projektu, a w Initial WSDL/WADL adres url opisu wsdl usługi. Zaznaczenie opcji Create Requests spowoduje utworzenie przez narzędzie listy wszystkich akcji udostępnianych przez usługę R-Connect wraz z przykładowymi zapytaniami w formie XL. Po utworzeniu projektu, należy przeprowadzić jego indywidualną konfigurację. Dostęp do preferencji można uzyskać poprzez dwukrotne kliknięcie w nowo utworzony projekt. Pierwszym krokiem powinno wybranie karty Keystores/Certificates w zakładce Security Configurations. Należy tam dodać to samo repozytorium kluczy, które zostało dodane do głównej konfiguracji narzędzia. Po wybraniu pliku niezbędne będzie podanie hasła do repozytorium kluczy.
W przypadku gdy proces dodawania pliku nie przebiegł prawidłowo, kolumna Status będzie zawierać krótki opis problemu. W przypadku, gdy hasło było prawidłowe, a plik właściwy, nowo dodany klucz będzie miał status OK. 5.1.3.1. Połączenie z usługą zabezpieczoną dwustronnym SSL em W przypadku, gdy usługa jest zabezpieczona dwustronnym SSL em przeprowadzona w rozdziale 5.1.3 konfiguracja projektu jest wystarczająca. Przed wysłaniem wiadomości należy wskazać certyfikat, którym transakcja ma być zabezpieczona. ożna tego dokonać w konfiguracji poszczególnego zapytania. Jest ona dostępna po otworzeniu wiadomości. Przycisk Properties znajduje się w lewym dolnym roku narzędzia SoapUI. Za certyfikat odpowiada opcja SSL Keystore. W opcji można ustawić jedno z repozytoriów kluczy wskazanych dla poszczególnego projektu. W przypadku braku opcji do wyboru, zalecane jest powtórzenie konfiguracji z rozdziału 5.1.3.
Tak skonfigurowana wiadomość jest gotowa do wysyłki. 5.1.4. ożliwe problemy w trakcie nawiązywania połączenia i ich ewentualne rozwiązanie. W przypadku, gdy nasz certyfikat komunikacyjny jest nieprawidłowy lub wystąpił błąd podczas konfiguracji klienta, usługa zwróci odpowiedź o treści issing SSL certificate (kod błędu E105) przy próbie wysłania zapytania. Należy wtedy upewnić się czy wszystkie opisane wcześniej czynności niezbędne do połączenia zostały wykonane prawidłowo. 5.2. Przykładowe wywołanie usługi przy pomocy języka PHP Język skryptowy PHP jest bardzo popularny przy tworzeniu niedużych serwisów internetowych. Umożliwia on również podłączenie się do usług sieciowych, takich jak R-Connect. 5.2.1. Opis konfiguracji PHP Aby móc korzystać z usług sieciowych z poziomu PHP konieczne jest włączenie tej funkcjonalności w konfiguracji serwera odpowiedzialnego za obsługę naszych skryptów. Odbywa się to poprzez edycję pliku konfiguracyjnego PHP - php.ini. W konfiguracji tej należy włączyć rozszerzenia php_soap oraz php_openssl. W systemach operacyjnych z rodziny Windows odpowiadają za to linie:
extension=php_openssl.dll extension=php_soap.dll W przypadku gdy na początku którejkolwiek z linii znajduje się średnik, to musi zostać usunięty. Odpowiada on za to, że dana linia jest nieaktywna (wykomentowana). Podczas włączania rozszerzeń należy zwrócić uwagę, czy w pliku php.ini istnieje wpis wskazujący na lokalizację bibliotek z rozszerzeniami oraz czy jest on aktywny, np.: extension_dir="{folder_instalacji_php}\ext\" np.: extension_dir="d:\aplikacje\php-5.3.8\ext\" Po pomyślnej konfiguracji środowiska oraz zrestartowaniu naszego serwera można już wywoływać zapytania do usług sieciowych za pomocą PHP. 5.2.2. Generowanie certyfikatu.pem dla PHP Certyfikat.pem jest niezbędny do korzystania z połączenia zabezpieczonego dwustronnym SSL em w kliencie usług sieciowych pisanym w języku PHP. Do utworzenia certyfikatu w formacie.pem potrzebne jest repozytorium kluczy utworzonego w rozdziale 5.1.2.2, oraz używany wcześniej program Portecle. Po uruchomieniu aplikacji należy otworzyć repozytorium poprzez wybranie opcji File -> Open Keystore File lub skrót klawiaturowy Ctrl+O Następną czynnością po otworzeniu repozytorium jest eksport klucza prywatnego wraz z certyfikatami. Eksport jest możliwy do wykonania z poziomu menu kontekstowego klucza prywatnego, opcja Export.
Niezbędne jest zaznaczenie opcji takich jak na zrzucie ekranu poniżej: Pierwsza z opcji (Export Type) odpowiada za typ wykonywanego eksportu. a to być klucz prywatny z certyfikatami (Private Key and Certificates). Druga z opcji (Export Format) odpowiada za format eksportu. Klient PHP będzie oczekiwał formatu.pem (PE Encoded). Następnym krokiem po zatwierdzeniu opcji jest podanie hasła do eksportowanego klucza klienckiego. Jest to niezbędne ze względu na potrzebę odszyfrowania klucza przed jego eksportem. Po pomyślnym odszyfrowaniu klucza należy zdefiniować hasło jakim będzie chroniony eksportowany certyfikat PE. Zalecane jest, aby certyfikat był chroniony mocnym hasłem. Uniemożliwia to nieautoryzowane użycie go przez osoby niepowołane. Ostatnią czynnością procesu eksportu jest wybranie lokalizacji eksportowanego certyfikatu.z uwagi na przeznaczenie eksportowanego certyfikatu, zaleca się, żeby został on zapisany na dysku w tym samym folderze, w którym zostanie zapisany skrypt PHP tworzony w rozdziale 5.2.3. Znacznie ułatwi to lokalizowanie certyfikatu poprzez stosowanie ścieżki pośredniej (./{nazwa_klucza}.pem). Wskazane jest także, żeby nazwa eksportowanego certyfikatu nie zawierała spacji. Pomyślnie wyeksportowany klucz jest gotowy do użycia w skrypcie.
5.2.3. Przykładowe skrypty łączące się z usługą Poniżej znajdują się skrypty pozwalające połączyć się z usługą R-Connect i wywołać przykładowe zapytanie.. 5.2.3.1. Klient usługi zabezpieczonej dwustronnym SSL em Do połączenia z usługami sieciowymi R-Connect może być wykorzystana klasa SoapClient. Aby rozpocząć korzystanie z niej należy zainicjalizować obiekt tej klasy. Potrzebne do tego są następujące informacje: Adres sieciowy serwera usługi R-Connect Lokalizacja certyfikatu.pem utworzonego w rozdziale 5.2.2 Hasło do certyfikatu (w przypadku braku hasła do certyfikatu ten argument może zostać pominięty) Następnie można wywołać usługę sieciową poprzez wykonanie polecenia $client->dorequest(), gdzie $client, to zmienna reprezentująca utworzony wcześniej obiekt SoapClient. Do wykonania polecenia potrzebne będą: Treść zapytania w formie XL (pobrana z pliku, lub stworzona bezpośrednio w skrypcie) Adres sieciowy serwera usługi R-Connect Nazwa akcji do wywołania <?php // adres serwera $server_location = 'https://wscib.r-bank.pl/cdc00101?wsdl'; // XL można zbudować ręcznie wewnątrz PHP $request = file_get_contents('./getstatements.xml'); // nazwa akcji do wywołania $action = 'urn:ca:std:ccs:rbpl:tech:wsdl:ws.001.01/getstatement'; // lokalizacja certyfikatu $cert = './clientcert.pem'); // hasło do certyfikatu $passphrase = 'Qwe123'); // inicjalizacja klienta SOAP $client = new SoapClient($server_location.'?wsdl', array('local_cert' => $cert, 'passphrase' => $passphrase)); // wywolanie akcji na serwerze $response = $client-> dorequest($request, $server_location, $action, 1);
6. Podpisy Xades Xades jest międzynarodowym standardem podpisu elektronicznego. Główną zaletą podpisu Xades jest możliwość weryfikacji podpisu elektronicznego po długim czasie od jego złożenia. Podpisy są wykonywane przy użyciu certyfikatów autoryzacyjnych uprzednio dodanych w systemie R-Online Biznes. Poniższy opis przedstawia proces podpisywania requestów, wysyłanych przez R-Connect. Proces podpisywania może być wykonywany przy użyciu programu Sigillum Sign, co zostało zilustrowane w poniższym przykładzie:. 1. Program Sigillum Sign musi zostać pobrany i zainstalowany. Pobranie programu jest możliwe ze strony: sigillum.pl/pliki_do_pobrania.html 2. Włączenie programu spowoduje wyświetlenie okna, które zostało zaprezentowane poniżej: 3. Na formularzu z prawej strony należy wskazać plik z rozszerzeniem txt, który ma zostać podpisany.
Przykładowy request przeznaczony do podpisywania zamieszczony jest poniżej <urn:internaltransfer xmlns:urn="urn:ca:std:cdc:tech:xsd:cdc.001.01" xmlns:urn1="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03"> <urn1:document> <urn1:cstmrcdttrfinitn> <urn1:grphdr> <urn1:sgid>jw20110630008</urn1:sgid> <urn1:credttm>2011-06-30t11:59:12</urn1:credttm> <urn1:nboftxs>1</urn1:nboftxs> <urn1:initgpty> <urn1:nm>jan Kowalski</urn1:Nm> <urn1:id> <urn1:orgid> <urn1:othr> <urn1:id>100014201417</urn1:id> </urn1:othr> </urn1:orgid> </urn1:id> </urn1:initgpty> </urn1:grphdr> <urn1:pmtinf> <urn1:pmtinfid>jw201106300011</urn1:pmtinfid> <urn1:pmttd>trf</urn1:pmttd> <urn1:reqdexctndt>2013-03-13</urn1:reqdexctndt> <urn1:dbtr> <urn1:nm>jan Kowalski</urn1:Nm> <urn1:pstladr> <urn1:ctry>pl</urn1:ctry> <urn1:adrline>ul. Jaracza 76</urn1:AdrLine> <urn1:adrline>90-251 Łódź</urn1:AdrLine> </urn1:pstladr> </urn1:dbtr> <urn1:dbtracct> <urn1:id> <urn1:othr> <urn1:id>94160010130002001160875597</urn1:id> </urn1:othr> </urn1:id> </urn1:dbtracct> <urn1:dbtragt> <urn1:fininstnid> <urn1:clrsysmbid> <urn1:clrsysid> <urn1:cd>plknr</urn1:cd> </urn1:clrsysid> <urn1:mbid>16001013</urn1:mbid> </urn1:clrsysmbid> </urn1:fininstnid> </urn1:dbtragt> <urn1:cdttrftxinf> <urn1:pmtid> <urn1:endtoendid>not provided</urn1:endtoendid> </urn1:pmtid> <urn1:pmttpinf> <urn1:ctgypurp> <urn1:cd>intc</urn1:cd> </urn1:ctgypurp> </urn1:pmttpinf> <urn1:amt> <urn1:instdamt Ccy="PLN">10.00</urn1:InstdAmt> </urn1:amt> <urn1:cdtr> <urn1:nm>jan Kowalski</urn1:Nm> <urn1:pstladr> <urn1:ctry>pl</urn1:ctry> <urn1:adrline>ul. Jaracza 76</urn1:AdrLine> <urn1:adrline>90-251 Łódź</urn1:AdrLine>
</urn1:pstladr> </urn1:cdtr> <urn1:cdtracct> <urn1:id> <urn1:iban>pl84160010130002001160875001</urn1:iban> </urn1:id> </urn1:cdtracct> <urn1:rmtinf> <urn1:ustrd>przeksiegowanie wolnych srodkow</urn1:ustrd> </urn1:rmtinf> </urn1:cdttrftxinf> </urn1:pmtinf> </urn1:cstmrcdttrfinitn> </urn1:document> </urn:internaltransfer> 4. Aby podpisac wybrany plik należy przeciągnąć go do tabeli z lewej strony, następnie zaznaczyć i wybrać opcję Podpisz pliki. Poniższy rysunek przedstawia wybór pliku do podpisu oraz opcję Podpisz pliki. 5. Wybranie opcji Podpisz pliki spowoduje pojawienie się okienka z opcjami wyboru ustawienia podpisu.
Należy zaznaczyć certyfikat, którym ma zostać podpisany request w sekcji agazyn Osobiste a następnie wybrać Typ podpisu Otoczony w sekcji Ustawienia formatu podpisu i nacisnąć przycisk Dalej umieszczony w prawym dolnym rogu formularza. 6. Pojawi się kolejne okno, w którym należy nacisnąć przycisk Podpisz.
7. Podpisany dokument ma rozszerzenie.xades. Należy go dodać jako <soap:body> w komunikacie wysyłanym przez R-Connect.
7. Formaty komunikatów 7.1. Lista wiadomości Poniższa tabela prezentuje podstawowe informacje o obsługiwanych wiadomościach. Rozdział Kierunek 1 Nazwa ISO 20022 Definicja uzupełniająca 7.2.1 In GetAccountReport 7.2.2 In GetIncrementalAccountReport 7.2.3 Out BankToCustomerAccountReport camt.052.001.02 7.2.4 In GetStatement 7.2.5 Out BankToCustomerStatement camt.053.001.01 RBE: wyciąg bankowy 7.2.6 In GetCardStatement 7.2.7 Out BankToCustomerCardStatement camt.053.001.02 7.2.8 In GetAccount camt.003.001.04 RBE: zapytanie o saldo 7.2.9 Out ReturnAccount camt.004.001.04 RBE: informacja o saldzie 7.3.1 In CreditTransferInitiation płatność w PLN 7.3.2 In CreditTransferInitiation przelew wewnętrzny pain.001.001.02 pain.001.001.02 RBE: Płatność w PLN RBE: Płatność w PLN 7.3.3 In CreditTransferInitiation przelew walutowy pain.001.001.02 RBE: Płatność w walucie 7.3.4 In CreditTransferInitiation przelew euroregulowany pain.001.001.02 RBE: SEPA CT 7.3.5 In GetPaymentStatusReport 7.3.6 Out PaymentStatusReport pain.002.001.02 RBE: Status zlecenia 1 In wiadomość przyjmowana przez usługę R-Connect; Out wiadomość wysyłana przez usługę R- Connect
7.3.7 In DirectDebitInitiation pain.008.001.02 7.4.1 In GetDocumentList 7.4.2 Out DocumentList 7.4.3 In PrepareReport 7.4.4 In GetDocument 7.4.5 Out BankToCustomerDocument 7.5.1 Out ServiceError tsmt.016.001.03 7.2. oduł Rachunki 7.2.1. GetAccountReport Wiadomość GetAccountReport jest wysyłana przez klienta do banku. Jest to żądanie pobrania historii operacji za dany okres ze wskazanego rachunku klienta. Wiadomość GetAccountReport składa się z dwóch głównych części: identyfikator wiadomości, definicja zapytania o historię operacji. Struktura wiadomości: Nazwa pola Nazwa elementu XL Status Format Uwagi Identyfikator wiadomości Numer rachunku GetAcctRpt +sgid ++Id GetAcctRpt +AcctRptQryDef ++AcctRptCrit +++NewCrit ++++SchCrit +++++AcctId ++++++EQ +++++++IBAN O 35x Unikalny dla danego odbiorcy Nie może zawierać spacji. 2!a26!n Numer rachunku w formacie IBAN
Nazwa pola Nazwa elementu XL Status Format Uwagi Data początkowa dla historii Data końcowa dla historii GetAcctRpt +AcctRptQryDef ++AcctRptCrit +++NewCrit ++++SchCrit +++++AcctRptValDt ++++++DtSch +++++++FrDt GetAcctRpt +AcctRptQryDef ++AcctRptCrit +++NewCrit ++++SchCrit +++++AcctRptValDt ++++++DtSch +++++++ToDt ISO Date ISO Date 7.2.2. GetIncrementalAccountReport Wiadomość GetIncrementalAccountReport jest wysyłana przez klienta do banku. Jest to żądanie przyrostowego pobrania historii operacji (od ostatniego pobrania, w ramach bieżącego dnia) ze wskazanego rachunku klienta. Przyrostowe pobieranie operacji jest realizowane poprzez zawarcie w wywołaniu wiadomości identyfikatora operacji, który jest zwracany dla każdej operacji w wiadomości BankToCustomerAccountReport. Zwrócone zostaną operacje zrealizowane po operacji będącej parametrem wywołania w ramach bieżącego dnia. Wiadomość GetInkrementalAccountReport składa się z dwóch głównych części: identyfikator wiadomości, definicja zapytania o historię operacji. Struktura wiadomości: Nazwa pola Nazwa elementu XL Status Format Uwagi Identyfikator wiadomości GetAcctRpt +sgid ++Id O 35x Unikalny dla danego odbiorcy Nie może zawierać spacji.
Nazwa pola Nazwa elementu XL Status Format Uwagi Numer rachunku Numer ostatniej transakcji GetAcctRpt +AcctRptQryDef ++AcctRptCrit +++NewCrit ++++SchCrit +++++AcctId ++++++EQ +++++++IBAN GetAcctRpt +AcctRptQryDef ++AcctRptCrit +++NewCrit ++++SchCrit +++++AcctRptTxNb ++++++GT 2!a26!n Numer rachunku w formacie IBAN O 18d Zapytanie zwraca operacje o identyfikatorze większym niż przekazany w tym polu. Sytuacja, gdy nie istnieje operacja o przekazanym identyfikatorze lub gdy istnieje, lecz nie należy do rachunku o podanym numerze, nie zostaną zwrócone żadne operacje. Dla każdej operacji jej identyfikator jest zawracany w polu +<NtryDtls> ++<TxDtls> +++<Refs> ++++<TxId> 7.2.3. BankToCustomerAccountReport Wiadomość BankToCustomerAccountReport jest wysyłana przez bank do klient w odpowiedzi na żądanie pobrania historii operacji. Zawiera historię operacji za dany okres z wskazanego rachunku klienta. Wiadomość BankToCustomerAccountReport składa się z dwóch głównych części: nagłówka wiadomości, historii operacji. Struktura wiadomości: Nazwa pola Nazwa elementu XL Status Format Uwagi Identyfikator wiadomości Data i czas utworzenia BkToCstmrAcctRpt +GrpHdr ++sgid BkToCstmrAcctRpt +GrpHdr ++CreDtTm O 35x Unikalny dla danego odbiorcy Nie może zawierać spacji. ISO DateAnd Time
Nazwa pola Nazwa elementu XL Status Format Uwagi Identyfikator wiadomości Data i czas utworzenia Początkowa data i czas dla historii Końcowa data i czas dla historii Numer rachunku Nazwa rachunku Nazwa właściciela rachunku Kod kraju właściciela rachunku BkToCstmrAcctRpt +Rpt ++Id BkToCstmrAcctRpt +Rpt ++CreDtTm BkToCstmrAcctRpt +Rpt ++FrToDt +++FrDtTm BkToCstmrAcctRpt +Rpt ++FrToDt +++ToDtTm BkToCstmrAcctRpt +Rpt ++Acct +++Id ++++IBAN BkToCstmrAcctRpt +Rpt ++Acct +++Nm BkToCstmrAcctRpt +Rpt ++Acct +++Ownr ++++Nm BkToCstmrAcctRpt +Rpt ++Acct +++Ownr ++++PstlAdr +++++Ctry 35x Ten sam identyfikator co w nagłówku ISO DateAnd Time ISO DateAnd Time ISO DateAnd Time Ta sama data co w nagłówku Znacząca jest tylko data, czas zawsze ustawiany na 00:00 Znacząca jest tylko data, czas zawsze ustawiany na 00:00 2!a26!n Numer rachunku w formacie IBAN O 70x Nazwa (alias) rachunku 70x Zwracana jest nazwa właściciela przypisana do rachunku, jeśli nazwa nie została zdefiniowana zwracana jest nazwa firmy. O 2!a Kod kraju dla firmy właściciela rachunku. Element obecny tylko, gdy zwracany jest Adres właściciela rachunku.
Nazwa pola Nazwa elementu XL Status Format Uwagi Adres właściciela rachunku Kod salda Kwota i waluta salda Wskaźnik salda Data dla salda Informacje dodatkowe Pozycja w historii BkToCstmrAcctRpt +Rpt ++Acct +++Ownr ++++PstlAdr +++++AdrLine BkToCstmrAcctRpt +Rpt ++Bal +++Tp ++++Cd BkToCstmrAcctRpt +Rpt ++Bal +++Amt BkToCstmrAcctRpt +Rpt ++Bal +++CdtDbtInd BkToCstmrAcctRpt +Rpt ++Bal +++Dt ++++Dt BkToCstmrAcctRpt +Rpt ++AddtlRptInf BkToCstmrAcctRpt +Rpt ++Ntry Pola w pozycji historii (wewnątrz tagu <Ntry>): O 70x Dopuszcza się maksymalnie dwa wystąpienia tego pola (możliwe w ten sposób uzyskanie maksymalnie 70 znaków). O 4!a Kod salda: O 3!a 18d Zwracany jest adres firmy przypisany do rachunku, jeżeli nie został zdefiniowany zwracany jest adres firmy, OPBD saldo początkowe CLBD saldo końcowe O 4!a Dopuszczalne wartości O O ISO Date 500x Kwota pozycji +Amt 3!a CRDT dla salda 0 DBIT dla salda < 0 O - oże wystąpić 0 lub wiele razy 18d Kwota i waluta operacji. Obowiązkowe wpisanie również kodu waluty (ISO).
Nazwa pola Nazwa elementu XL Status Format Uwagi Wskaźnik pozycji +CdtDbtInd 4!a Dopuszczalne wartości CRDT dla kwoty 0 DBIT dla kwoty < 0 Status pozycji +Sts 4!a Dopuszczalna wartość BOOK. Data księgowania Data operacji Bankowy kod operacji Rozszezony kod operacji Rozszerzony pod kod operacji Kwota i waluta zlecenia przeslanego Numer transakcji w ciągu dnia Identyfikator Instrukcji +BookgDt ++DtTm +ValDt ++DtTm +BkTxCd ++Domn +++Cd +BkTxCd ++Domn +++Fmly ++++Cd +BkTxCd ++Domn +++Fmly ++++SubFmlyCd +AmtDtls ++InstdAmt +NtryDtls ++TxDtls +++Refs ++++sgid +NtryDtls ++TxDtls +++Refs ++++InstrId ISO DateAnd Time ISO DateAnd Time Jeżeli nie ma informacji o godzinie księgowania, zostanie ona zwrócona w postaci 00:00 Jeżeli nie ma informacji o godzinie operacji, zostanie ona zwrócona w postaci 00:00 4x Standardowy kod operacji zwracany przez podstawowy system bankowy O O 4x 4x O 3!a 15d O 35x Numer dla pobierania inkrementalnego historii. O 35x Numer referencyjny operacji (referencje Banku)
Nazwa pola Nazwa elementu XL Status Format Uwagi Referencja/ Sygnatura operacji Identyfikator zlecenia Kwota i waluta zlecenia Dane zleceniodawcy Rachunek zleceniodawcy Kontrahent Rachunek kontrahenta +NtryDtls ++TxDtls +++Refs ++++EndToEnd +NtryDtls ++TxDtls +++Refs ++++TxId +NtryDtls ++TxDtls +++AmtDtls ++++InstdAmt +++++Amt +NtryDtls ++TxDtls +++RltdPties ++++Dbtr +NtryDtls ++TxDtls +++RltdPties ++++DbtrAcct +++++Id ++++++Othr +++++++Id +NtryDtls ++TxDtls +++RltdPties ++++Cdtr +NtryDtls ++TxDtls +++RltdPties ++++CdtrAcct +++++Id ++++++Othr +++++++Id O 35x Referencje klienta O 35x Identyfikator operacji O 3!a15d Pole wypełniane tylko dla operacji potwierdzonych wyciągiem T940. O Dla operacji uznaniowych (zasilających konto) (szczegóły znacznika zawarte w następnej tabeli) O Dla operacji uznaniowych (zasilających konto) Rachunek jest zwracany w tym elemencie niezależnie od tego czy jest w formacie IBAN czy innym O - Dla operacji obciążeniowych (szczegóły znacznika zawarte w następnej tabeli) O - Dla operacji obciążeniowych Rachunek (niezależnie, czy IBAN czy nie) jest zwracany w elemencie Pola dla zleceniodawcy i kontrahenta (<Dbtr>, <Cdtr>)
Nazwa pola Nazwa elementu XL Status Format Uwagi Nazwa zleceniodawcy /kontrahenta +Nm 70x Nazwa pierwotnego zleceniodawcy Finalny odbiorca Tytuł przelewu - strukturalny Tytuł przelewu niestrukturalny +NtryDtls> ++TxDtls +++RltdPties ++++UltmtDbtr +++++Nm +NtryDtls ++TxDtls +++RltdPties ++++UltmtCdtr +++++Nm> +++TxDtls ++++RmtInf +++++Strd +NtryDtls ++TxDtls +++RmtInf ++++Ustrd O 70x Dla operacji uznaniowych (zasilających konto) O 70x Dla operacji obciążeniowych O - Pola dla zleceniodawcy i kontrahenta (<Dbtr>, <Cdtr>) Adres zleceniodawcy /kontrahenta Kraj zleceniodawcy /kontrahenta +PstlAdr ++AdrLine +PstlAdr ++Ctry 7.2.4. GetStatement O 140x Tytuł operacji (niestrukturalny) O 35x Dopuszcza się maksymalnie dwa wystąpienia tego pola C 2!a Obowiązkowe jeśli użyto Adresu <AdrLine> Zwracany jest kraj tylko dla strony wysyłającej dla zleceń wychodzących oraz kontrahenta dla zleceń przychodzących. Dla drugiej strony zawsze zwracany PL Wiadomość GetStatement jest wysyłana przez klienta do banku. Jest to żądanie pobrania wyciągu operacji za dany okres z wskazanego rachunku klienta. Wiadomość GetStatement składa się z dwóch głównych części:
identyfikator wiadomości, definicja zapytania o wyciąg. Odpowiedź banku zależy od formatu wyciągu (pole Format): XL bank wysyła wyciąg w postaci XL, tzn. wiadomość BankToCustomerStatement, PDF bank wysyła wyciąg w postaci PDF (jest to plik, który tworzy system R-Online Biznes po wybraniu przez użytkownika przycisku <Zapisz PDF> na ekranie szczegółow wyciągu: opcja Rachunku / Wyciągi / ekran Wyciąg z rachunku), tzn. wiadomość BankToCustomerDocument. Struktura wiadomości: Nazwa pola Nazwa elementu XL Status Format Uwagi Identyfikator wyciągu Numer rachunku Data sporządzenia wyciągu Data początkowa dla historii GetStmt +sgid ++Id GetStmt +StmtQryDef ++StmtCrit +++NewCrit ++++SchCrit +++++AcctId ++++++EQ +++++++IBAN GetStmt +StmtQryDef ++StmtCrit +++NewCrit ++++SchCrit +++++StmtValDt ++++++DtSch +++++++Dt GetStmt +StmtQryDef ++StmtCrit +++NewCrit ++++SchCrit +++++StmtValDt ++++++DtSch +++++++FrDt 35x Unikalny dla danego odbiorcy Nie może zawierać spacji. 2!a26!d Numer rachunku w formacie IBAN /O ISO Date Dozwolone wystąpienie albo pola Data sporządzenia albo Rok /O ISO Date
Nazwa pola Nazwa elementu XL Status Format Uwagi Data końcowa dla historii Rok sporządzenia wyciągu Numer wyciągu Format GetStmt +StmtQryDef ++StmtCrit +++NewCrit ++++SchCrit +++++StmtValDt ++++++DtSch +++++++ToDt GetStmt +StmtQryDef ++StmtCrit +++NewCrit ++++SchCrit +++++StmtValDt ++++++DtSch +++++++Year GetStmt +StmtQryDef ++StmtCrit +++NewCrit ++++SchCrit +++++StmtId ++++++EQ GetStmt +StmtQryDef ++StmtCrit +++NewCrit ++++SchCrit +++++StmtFrmt /O ISO Date C 4d Dozwolone wystąpienie albo pola Data sporządzenia albo pola Rok C 3d Numer wyciągu w ramach roku. Wymagane, jeśli podano Rok, w przeciwnym razie zabronione. O 3a! Określa format wyciągu: PDF wyciąg w formacie PDF = odpowiedź BankToCustomerDocument, XL wyciąg w formacie XL ISO 20022 = odpowiedź BankToCustomerStatement. Jeśli pole nie występuje, to przyjmuje się wartość domyślną XL. 7.2.5. BankToCustomerStatement Wiadomość BankToCustomerStatement jest wysyłana przez bank do klienta w odpowiedzi na żądanie pobrania wyciągu, tzn. wiadomość GetStatement. Zawiera wyciąg operacji za dany okres ze wskazanego rachunku klienta.