Minibank24
Z Wikipedii
Zasugerowano, aby ten artykuł zintegrować z artykułem Bank Zachodni WBK. |
Ten artykuł wymaga dopracowania zgodnie z zaleceniami edycyjnymi. Należy w nim poprawić: artykuł należy skrócić, w tej chwili wygląda jak NPA z podręcznika użytkownika i zawiera bardzo wiele całkowicie zbędnych informacji technicznych. Po naprawieniu wszystkich błędów można usunąć tę wiadomość. |
Minibank24 - system bankowości elektronicznej przeznaczony dla średnich i dużych firm współpracujących z Bankiem Zachodnim WBK.
Minibank24 umożliwia zdalne dokonywanie operacji bankowych oraz dostęp do informacji o rachunkach i usługach oferowanych przez bank. Udostępnia mechanizmy prezentacji i analizy danych oraz współdziałanie z aplikacjami zewnętrznymi (np. systemami finansowo-księgowymi).
Spis treści |
[edytuj] Opis techniczny
Minibank24 jest systemem przeznaczonym do elektronicznego porozumiewania się klienta z bankiem za pośrednictwem Internetu (protokół SSL). Aplikacja działa tylko pod systemami Microsoft Windows w oparciu o lokalną bazę Microsoft SQL 2000.
W skład instalacji klienckiej wchodzi kilka elementów:
- aplikacja klienta - odpowiedzialna za część prezentacyjną i transakcyjną aplikacji
- aplikacja administracyjna - zarządzanie użytkownikami i uprawnieniami
- aplikacja narzędziowa - kopie bazy, zrzuty tabel
- aplikacja archiwizująca - automatyczny backup bazy
- lokalna baza Microsoft SQL 2000
- czytnik kart procesorowych + sterowniki + karty procesorowe
- minikonwerter - dodatkowe narzędzie umożliwiające konwersję z formatów klienta do formatu zgodnego z Minibank24 (umożliwia stworzenie schematu konwersji danych) celem importu pliku operacji z aplikacji finansowo-księgowej klienta.
Instalacja środowiska klienta może zostać zrealizowana na pojedynczej stacji pc oraz w ramach lokalnej sieci klienta. W przypadku instalacji sieciowej, baza instalowana jest na jednej stacji (lub serwerze), a dostęp do niej realizowany jest z pozostałych stanowisk pc, na których musi zostać zainstalowana aplikacja klienta Minibank24.
[edytuj] Bezpieczeństwo
Kryptografia zrealizowana została przy wykorzystaniu niekwalifikowanego podpisu elektronicznego z kluczem prywatnym (wydawanym przez Bank Zachodni WBK) przechowywanym na karcie procesorowej - pierwsze tego typu rozwiązanie na polskim rynku[potrzebne źródło]. Każdy użytkownik łączący się z bankiem lub podpisujący operację musi posiadać chronioną PINem kartę procesorową.
Uprawnienia definiują dostęp do poszczególnych opcji aplikacji, typów transakcji, rachunków, limity kwotowe oraz macierz podpisów (podpisy jedno- lub dwuosobowe).
[edytuj] Historia
Pierwsza instalacja została uruchomiona w lipcu 2001 roku. System Minibank24 zastąpił wcześniejszą aplikację Minibank, która działała od 1994 w Wielkopolskim Banku Kredytowym S.A. Aplikacja Minibank była napisana w języku FoxPro, działała pod Microsoft Windows 3.11 w oparciu o bazę danych dBase. Aplikacja pozwalała klientowi na podgląd oraz dokonywanie operacji na rachunkach firmy w pojedynczym oddziale banku. Szyfrowanie komunikacji z bankiem oparte było na kluczu symetrycznym DES przechowywanym w sprzętowym urządzeniu HASP wpiętym do portu równoległego.
[edytuj] Typy operacji
- operacje krajowe
- operacje płacowe
- przelewy na ZUS
- przelewy na Urząd Skarbowy (US)
- polecenie zapłaty
- kredyty uruchomienie (rewolwing) i spłata
- uruchomienie i likwidacja lokaty
- operacje zagraniczne (SWIFT)
- sprzedaż i kupno walut
- wnioski
Operacje realizowane są w trybie ELIXIR lub SORBNET (wszystkie powyżej miliona złotych lub na życzenie klienta również na mniejsze kwoty).
Aplikacja klienta Minibank24 umożliwia "ręczną" rejestrację operacji z front-end'u lub ich import (eksport) z aplikacji zewnętrznych (gotowe transakcje przygotowane wcześniej np. w systemie finansowo-księgowym klienta). System umożliwia również wymianę informacji dotyczących historii rachunku, wyciągu oraz danych słownikowych.
[edytuj] Formaty plików
Do wymiany danych z innymi zewnętrznymi aplikacjami służą następujące formaty plików:
typ danych | kierunek | formaty |
---|---|---|
operacje krajowe złotowe, płacowe, US, ZUS, polecenie zapłaty | eksport/import | UNL, UNI, UNZ, DBF, Eliksir-O |
operacje zagraniczne (SWIFT) | eksport/import
import |
UNZ
MT103 |
historia rachunku | eksport | UNL, MT940, OFX |
wyciąg | eksport | MT940 |
kontrahenci | eksport/import | UNL |
[edytuj] Operacje
[edytuj] UNL i DBF
struktura plików dla operacji krajowych, płacowych, US i ZUS
Nazwa pola | Typ i rozmiar pola | Opis |
---|---|---|
KOD | N(10) | Numer paczki operacji |
POZ | N(3) | Numer operacji |
NR_ODDZ_W | C(10) | Numer oddziału strony WN |
NR_RACH_W | C(12) | Numer rachunku strony WN |
NR_KONTA_W | C(12) | Numer konta strony WN |
NR_SUBK_W | C(12) | Numer subkonta strony WN |
NR_SUBK_PW | C(12) | Numer subkonta podstawowego strony WN |
NR_ODDZ_M | C(10) | Numer oddziału strony MA |
NR_RACH_M | C(12) | Numer rachunku strony MA |
NR_KONTA_M | C(12) | Numer konta strony MA |
NR_SUBK_M | C(12) | Numer subkonta strony MA |
NR_SUBK_PM | C(12) | Numer subkonta podstawowego strony MA |
TYTUL | C(140) | Tytuł operacji |
KWOTA | N(20,2) | Kwota przelewu |
KOD_WALUTY | C(3) | Kod waluty |
KLIENT_M | C(140) | Dane adresowe posiadacza rachunku strony MA |
SUMA_K | N(10) | Suma kontrolna |
[edytuj] UNL i DBF dla PZ
Struktura plików dla operacji polecenia zapłaty
Nazwa pola | Typ i rozmiar pola | Opis |
---|---|---|
KOD | N(10) | Numer paczki operacji |
POZ | N(3) | Numer operacji |
NR_ODDZ_W | C(10) | Numer oddziału strony WN |
NR_RACH_W | C(12) | Numer rachunku strony WN |
NR_KONTA_W | C(12) | Numer konta strony WN |
NR_SUBK_W | C(12) | Numer subkonta strony WN |
NR_SUBK_PW | C(12) | Numer subkonta podstawowego strony WN |
NR_ODDZ_M | C(10) | Numer oddziału strony MA |
NR_RACH_M | C(12) | Numer rachunku strony MA |
NR_KONTA_M | C(12) | Numer konta strony |
MA NR_SUBK_M | C(12) | Numer subkonta strony MA |
NR_SUBK_PM | C(12) | Numer subkonta podstawowego strony MA |
TYTUL | C(140) | Tytuł operacji |
KWOTA | N(20,2) | Kwota przelewu |
KOD_WALUTY | C(3) | Kod waluty |
KLIENT_M | C(140) | Dane adresowe posiadacza rachunku strony MA |
ID_PLATN | C(20) | Identyfikator płatności |
SUMA_K | N(10) | Suma kontrolna |
[edytuj] UNI
Struktura plików dla wszystkich typów operacji (oprócz operacji SWIFT)
Nazwa pola z | Typ i rozmiar pola | Opis |
---|---|---|
NR_PACZKI | N | Numer paczki operacji |
NR_OPERACJI | N | Numer operacji |
NR_ODDZIALU_WN | C(8) | Numer oddziału strony WN |
NR_RACHUNKU_WN | C(54) | Numer rachunku strony WN |
NR_ODDZIALU_MA | C(8) | Numer oddziału strony MA |
NR_RACHUNKU_MA | C(54) | Numer rachunku strony |
MA NAZWA_BANKU_MA | C(263) | Nazwa banku MA – dla operacji SWIFT (nr_banku + nazwa_banku + adres + kraj) |
TYTUL | C(140) | Tytuł operacji |
KWOTA | N | Kwota przelewu |
KOD_WALUTY | C(3) | Kod waluty |
DANE_KLIENTA | C(140) | Dane adresowe klienta (strona MA) |
INSTRUKCJA I NR_TABELI_KURS. | C(290) | dla operacji SWIFT (instrukcja + nr tabeli kursowej) |
ID_PLATN | C(20) | Identyfikator płatności – dla polecenia zapłaty |
ATRYBUTY | C(10) | Typ transferu |
KOD_TYPU_OPER | N | Kod typu operacji |
DATA_WYK | C(10) | Data wykonania operacji |
PUSTE_POLE | C(8) | Zarezerwowane dla przyszłych zastosowań |
SUMA_K | N(10) | Suma kontrolna |
[edytuj] UNZ
Struktura plików dla wszystkich typów operacji
Nazwa pola | Typ i rozmiar pola | Opis |
---|---|---|
NR_PACZKI | N | Numer paczki operacji |
NR_OPERACJI | N | Numer operacji |
NR_ODDZIALU_WN | C(8) | Numer oddziału strony WN |
NR_RACHUNKU_WN | C(54) | Numer rachunku strony WN |
NR_ODDZIALU_MA | C(8) | Numer oddziału strony MA |
NR_RACHUNKU_MA | C(54) | Numer rachunku strony MA |
NAZWA_BANKU_MA | C(263) | Nazwa banku MA – dla operacji SWIFT
(nr_banku + nazwa_banku + adres + kraj) |
TYTUL | C(140) | Tytuł operacji |
KWOTA | N(19,2) | Kwota przelewu |
KOD_WALUTY | C(3) | Kod waluty |
DANE_KLIENTA | C(140) | Dane adresowe klienta (strona MA) |
INSTRUKCJA I NUMER TABELI | C(290) | dla operacji SWIFT (instrukcja + nr tabeli kursowej) |
ID_PLATN | C(20) | Identyfikator płatności – dla polecenia zapłaty |
ATRYBUTY | C(10) | Typ transferu |
KOD_TYPU_OPER | N(3) | Kod typu operacji |
DATA_WYK | C(10) | Data wykonania operacji. Format RRRR-MM-DD |
ATRYBUTY_NEG | C(256) | Dodatkowe atrybuty operacji SWIFT (opis pola – poniżej); typ_transakcji (1 znak) + tryb_realizacji (1 znak) + stałe_tytuły (1 znak) + nr_transakcji (16 znaków) + kurs_wynegocjowany (15 znaków) + przyczyna_niedostarczenia_dokumentow (105 znaków) |
KOSZTY | C(256) | Informacje o kosztach przelewu (opis pola – poniżej); kto_koszty + nr_iban_koszty + kod_waluty_koszty |
REFERENCJA | C(16) | Informacje o referencjach własnych |
PUSTE POLE_1 | C(256) | Zarezerwowane dla przyszłych zastosowań |
PUSTE POLE_2 | C(256) | Zarezerwowane dla przyszłych zastosowań |
PUSTE POLE_3 | C(256) | Zarezerwowane dla przyszłych zastosowań |
SUMA_K | N(10) | Suma kontrolna |
[edytuj] Opis pól
dedykowanych dla operacji SWIFT:
Pole: Nazwa banku (NAZWA_BANKU_MA)
Lp | Opis |
---|---|
1 | LP banku – numer banku (wymagane) |
2 | BIC banku – kod SWIFT (wymagane jeśli istnieje) |
3 | Nazwa banku (wymagane) |
4 | Miasto banku (wymagane) |
5 | Kraj banku (wymagane) |
6 | Numer oddziału (wymagane jeśli istnieje) |
7 | Adres banku (wymagane) |
8 | Nazwa oddziału banku (wymagane jeśli istnieje) |
Pole: Instrukcja i nr. tabeli
Lp | Opis |
---|---|
1 | Kwota ma (nie używane przy imporcie) |
2 | Kwota (nie używane przy imporcie) |
3 | Kod waluty MA |
4 | Opcje |
5 | Instrukcja - (pole tekstowe dotyczące płatności) |
6 | Numer tabeli kursowej (nie używane przy imporcie) |
Pole: Atrybuty negocjowane (ATRYBUTY_NEG)
Separatorem poszczególnych części pola jest znak o kodzie ASCII 254
Lp | Opis |
---|---|
1 | typ_transakcji (pole wymagane dla operacji SWIFT) – obecnie używane wartości:
0 – transakcja standardowa (wartość domyślna) 1 – transakcja negocjowana 3 – transakcja limitowa z negocjacją |
2 | tryb_realizacji (pole wymagane dla operacji SWIFT) – obecnie używane wartości:
0 – zwykła (wartość domyślna) 1 – pilna 2 – ekspresowa |
3 | stałe_tytuły (pole wymagane dla operacji SWIFT) – wartości:
1 – zapłata za towar sprowadzony z zagranicy 2 – zapłata za usługę wykonywaną za granicą 3 – zapłata czynszu za używanie nieruchmości za granicą 4 – wynagrodzenie za pracę nierezydenta wykonywaną za granicą 5 – składka członkowska |
4 | nr_transakcji char(16) (pole wymagane dla transakcji SWIFT negocjowanych oraz negocjowanych z limitem) |
5 | kurs_wynegocjowany numeric(10,4) (pole wymagane dla transakcji SWIFT negocjowanych oraz negocjowanych z limitem) |
6 | przyczyna_niedostarczenia_dokumentow char(105) (pole wymagane dla operacji SWIFT) |
Pole: Koszty (KOSZTY)
Separatorem poszczególnych części pola jest znak o kodzie ASCII 254
Lp | Opis |
---|---|
1 | kto_koszty (pole wymagane dla operacji SWIFT) obecnie używane wartości:
1 – BEN (odbiorca/odbiorca) 2 – OUR (nadawca/nadawca) 3 – SHA (nadawca/odbiorca) |
2 | nr_iban_koszty varchar(70), jeśli pole będzie puste lub importowany będzie rachunek, którego nie ma w lokalnej bazie danych – podstawiony zostanie rachunek WN |
3 | kod_waluty_koszty char(3), jeśli w polu podany zostanie błędny kod waluty – podstawiony zostanie kod waluty rachunku (pobrany z lokalnej bazy danych) |
Separatorem w ramach pól jest znak o kodzie ASCII 254.
Pola 1,2,6 z „Instrukcja i nr. tabeli” nie są używane podczas importu ponieważ kwoty przeliczane są wg aktualnej tabeli kursowej lub kursu negocjowanego.
Tytuł importowanej operacji złożony będzie z 2 części. Pierwsza część – tytuł stały – zdefiniowany w polu: atrybuty_neg. Druga część zdefiniowana w polu „tytul”. Obie części łączone będą wg schematu: część pierwsza + przecinek + spacja + część druga (dopełnienie do 140 znaków).
[edytuj] Typy operacji (kod operacji)
- operacja płacowa (1)
- operacja krajowa (2)
- operacja ZUS (3)
- polecenie zapłaty (4)
- uruchomienie kredytu (5)
- spłata kredytu (6)
- likwidacja lokaty (7)
- ustanowienie lokaty - stand. param. (9)
- operacja SWIFT (10)
- sprzedaż waluty - stand. param. (11)
- kupno waluty - stand. param. (12)
- operacja płacowa (13)
- operacja krajowa (14)
- polecenie zapłaty (15)
- operacja US (16)
- operacje US (17)
- przelew z dyskietki (102)
[edytuj] Typ transferu
- 0 przelew wewnętrzny
- 1 elixir
- 2 tani przelew (typ nieobsługiwany obecnie w banku – zostanie automatycznie zamieniony w trakcie importu na elixir)
- 3 sybir
- 4 swift
- 5 elixir – ZUS
- 6 sorbnet
- 7 elixir - US
Separatorem pól jest , (przecinek). Dodatkowo pola tekstowe objęte są znakami |
Puste pola tekstowe nie muszą być wypełniane spacjami do określonego rozmiaru pola.
Przykład:
1,2,|Wpłata na konto|,3,|Józef Wiśniewski|,4,5,||,||,6,7
Separatorem między wierszami (rekordami) są: znak końca linii i znak powrotu karetki.
[edytuj] Algorytm obliczania sumy kontrolnej
- Suma obliczana jest w wierszach, na podstawie zawartości poszczególnych pól czyli bez uwzględniania separatorów pól, ich ograniczników, znaków przejścia do nowej linii itp. Poniższe operacje należy wykonać dla każdego wiersza (rekordu):
- Zmienić typy danych przechowywanych w poszczególnych polach na znakowy.
- Obliczyć dla każdego pola sumę pośrednią, dodając wartości liczbowe kodów ASCII wszystkich znaków zapisanych w polu.
- Przydzielić wagi kolejnym polom od 1 do n (od lewej do prawej).
- Dla każdego pola przeliczyć sumę pośrednią z uwzględnieniem przydzielonych uprzednio wag wg wzoru: suma_k_tmp=suma_k_tmp*(2**waga).
- Zapis 2**waga oznacza cyfrę 2 podniesioną do potęgi wagi danego pola.
- Dodać sumy pośrednie dla wszystkich pól rekordu tworząc suma_k_tot.
- Jeśli suma łączna jest większa od 9999999999, to należy wykonać jest dzielenie przez 10, tak długo aż będzie spełniony warunek suma_k_tot<=9999999999
- Zaokrąglić sumę suma_k_tot, obcinając część ułamkową.
- Wpisać obliczoną sumę kontrolną do pola suma_k.
UWAGA! Kwotę operacji przed wyliczeniem sumy kontrolnej należy zaokrąglić zgodnie z regułami matematycznymi. Przy obliczaniu sumy kontrolnej dla każdego pola tekstowego, nie należy uwzględniać początkowych i końcowych spacji.
[edytuj] Eliksir-O
struktura importowanego/eksportowanego pliku operacji
Lp. | Etykieta | Nazwa pola | Opis | Rozmiar | Wymagane |
---|---|---|---|---|---|
01 | Typ komunikatu | N(3) | N | ||
02 | 31 | Data obciążenia/uznania rachunku RRRRMMDD | D | N | |
03 | 32 | Kwota | Bez separatora miejsca dziesiętnego Np. kwotę 123,23 zapisujemy 12323 | N(15) | T |
04 | Numer oddziału nadawcy | N(8) | T | ||
05 | Numer oddziału odbiorcy | N(8) | T | ||
50 pp.1 | Rachunek klienta nadawcy | C(34) | T | ||
07 | 59 pp.1 | Rachunek klienta adresata | C(34) | T | |
08 | 50 pp.2 | Nazwa klienta nadawcy | 4*C(35) | T | |
09 | 59 pp.2 | Nazwa klienta adresata | 4*C(35) | N | |
10 | 52 | Numer oddziału uczestnika pośredniego | N(8) | N | |
11 | 58 | Numer oddziału finalny adresat | N(8) | N | |
12 | 70 | Tytuł operacji lub dla operacji ZUS informacje dodatkowe o składce | Opis transakcji lub
Linia 1 NIP Płatnika Linia 2 Typ Identyfik. Uzupełniający Linia 3 Typ wpłaty Deklaracja (RRRRMM) Nr. Deklaracji |
4*C(35)
N(10) C(1) C(14) C(1) N(6) N(2) |
T |
13 | 71 | Numer czeku | C(10) | N | |
14 | 77 | Szczegóły reklamacji | 4*C(35) | N | |
15 | 21 | Dodatkowa identyfikacja spraw | Kod dokumentu dod. ident.spraw | N(2)
C(32) |
N |
16 | 72 | Informacje międzybankowe | 6*C(35) | N | |
17 | 80 pp.1 | Dowolny tekst | C(35) | N |
[edytuj] MT103
struktura plików dla importu operacji SWIFT
opis pól nagłówka
Numer / Nazwa pola | Pole wymagane (W)/ Pole opcjonalne (O) | Format | Opis |
---|---|---|---|
:01: DATA UTWORZENIA PLIKU | W | 12!d | Data i godzina utworzenia pliku, format daty YYYYMMDDGGMM |
:02: NAZWA PLIKU | W | 20x | Nazwa, pod którą plik przechowywany jest na dysku twardym |
:03: LICZBA POLECEŃ | W | 5n | Liczba poleceń przelewu w pliku |
:04: KWOTA ŁĄCZNA | W | 17n | Suma kontrolna – suma kwot wszystkich przelewów z pola :32A: |
:05: BANK STRONY ZLECAJĄCEJ | O | 11a | Kod SWIFT banku płatnika. W przypadku BZ WBK S.A. jest to WBKPPLPPXXX |
:06: STRONA ZLECAJĄCA | O | 4*35x | Nazwa i adres strony zlecającej |
opis pól transakcji
Numer / Nazwa pola | Pole wymagane (W)/ Pole opcjonalne (O) | Format | Opis |
---|---|---|---|
:32A: OPIS PŁATNOŚCI
PODPOLE 1: DATA WALUTY PODPOLE 2: WALUTA PODPOLE 3: KWOTA |
W W |
3!a 15d |
Kod waluty (symbol w standardzie ISO) Kwota z przecinkiem (,) jako znak dziesiętny |
:33B:
PODPOLE 1: KWOTA ZLECENIODAWCY PODPOLE 2: WALUTA ZLECENIODAWCY |
O |
3!a |
Kod waluty (symbol w standardzie ISO) |
:50K:
PODPOLE 1: RACHUNEK STRONY ZLECAJĄCEJ PODPOLE 2: NAZWA I ADRES STRONY ZLECAJĄCEJ |
W |
4*35x |
Nazwa i adres strony zlecającej |
:57D:
NUMER ROZLICZENIOWY ODDZIAŁU BANKU (O ILE JEST DOSTĘPNY) KOD SWIFT (O ILE JEST DOSTĘPNY) NAZWA BANKU BENEFICJENTA (2 LINIE) ADRES BANKU BENEFICJENTA (2 LINIE) |
O
|
[/34x]
|
Numer rachunku oddziału Banku beneficjenta (o ile jest dostępny)
|
:59: BENEFICJENT
PODPOLE 1: NR RACHUNKU BENEFICJENTA PODPOLE 2: ADRES BENEFICJENTA |
W |
4*35x |
Adres beneficjenta |
:70: SZCZEGÓŁY PŁATNOŚCI | O | 4*35x | Tytuł płatności |
:71A: OPŁATY | W | 3!a | Kto ponosi koszty (BEN, SHA, OUR) |
Format MT103 należy do rodziny formatów MT. Podobnie jak wszystkie formaty z tej rodziny, jest to format tekstowy (o rozszerzeniu *.mt103) o strukturze hierarchicznej (nie liniowej).
Uwaga: Format importu implementowany w aplikacji klienta jest niestandardową modyfikacją formatu MT103 zaproponowaną przez BZWBK S.A.
Legenda:
- W – pole wymagane
- O – pole opcjonalne
- a - znak nienumeryczny
- n - znak numeryczny
- x – dowolny znak
- liczba z „!” – wymagana długość pola
- liczba bez „!” – dopuszczalna długość pola
[edytuj] Wyciąg i historia rachunku
[edytuj] UNL dla historii
struktura eksportowanego zbioru z historią rachunku
Pole | Typ | Maksymalna liczba znaków | Opis |
---|---|---|---|
Kod_oper | Integer (4 bajty) | 9 | Kod operacji - typologia z systemu bankowego |
Nr_iban_wn | Char(70) | 70 | Pełen numer rachunku: albo numer IBAN albo długi numer – strona WN |
Adres_wn | Char(140) | 140 | Dane adresowe strony WN |
Nr_iban_wn | Char(70) | 70 | Pełen numer rachunku: albo numer IBAN albo długi numer – strona MA |
Adres_ma | Char(140) | 140 | Dane adresowe strony MA |
Data_oper | Date | 10 | Data operacji (księgowania) |
Data_waluty | Date | 10 | Data waluty |
Tytul_oper | Char(140) | 140 | Tytuł operacji (możliwie najdłuższy) |
Kwota_oper | Decimal(14,2) | 15 | Kwota przelewu ze znakiem:
Kwota ujemna – dotyczy strony WN Kwota ujemna – dotyczy strony MA Kwota wyrażona w walucie rachunku odpowiedniej strony. |
Format pliku:
- Pola oddzielane są separatorem: Tab
- Separator dziesiętny dla liczby: ‘.’
- Format daty: ‘dd-mm-yyyy’
[edytuj] OFX
struktura eksportowanego zbioru z historią rachunku
Tag | Opis |
---|---|
ORG | nazwa organizacji finansowej – parametr nazwa_banku z tabeli Parametry |
FID | numer organizacji finansowej – parametr nr_banku z tabeli Parametry |
DTSERVER | em_od (data początkowa, począwszy od której dane są pobierane) |
CURDEF | kod_waluty z tabeli Waluty lub zmienna ofx_export_currency z tabeli Parametry (zmienna ofx_export_currency zawiera kod waluty PLZ który jest wymagany dla zachowania zgodności z aplikacją MSMoney; wartość zmiennej jest parametrem globalnym aplikacji) |
BANKID(1) | nr_oddziału (maksymalnie 9 znaków) |
ACCTID(1) | nr_konta (maksymalnie 22 znaki – kolejne znaki są odrzucane) |
ACCTTYPE (1) | rodzaj_rachunku (SAVINGS lub CREDITLINE) |
DTSTART | em_od (godzina ustawiona na 00:00:01) |
DT_END | em_do (godzina ustawiona na 23:59:59) |
TRNTYPE | Jeśli dla kodu danej operacji istnieje wpis w kolumnie kod_ofx w tabeli kody_mt940, zostaje wpisany jako TRNTYPE, w przeciwnym wypadku wstawiana jest wartość CREDIT (jeśli kwota > 0) lub DEBIT (jeśli kwota jest < 0) |
FITID | unikalny identyfikator transakcji – składa się z klucza data_oper oraz lp |
NAME | strona operacji (maks. 32 znaki) – adres_str |
BANKID (2) | numer oddziału strony operacji (maks. 9 znaków) |
ACCTID (2) | numer rachunku strony operacji (maks. 22 znaki, reszta jest odrzucana) |
ACCTKEY | suma kontrolna numeru oddziału oraz rachunku (maks 22 znaki, obecnie 2) |
BALAMT (1) | saldo rachunku po ostatniej operacji (pole saldo_operacji) |
DTASOF (1) | data_oper |
BALAMT (2) | saldo rachunku po ostatniej operacji (pole saldo_operacji) |
DTASOF (2) | data_oper |
[edytuj] MT940
struktura eksportowanego pliku historii rachunku i wyciągu
Pole | Status | Nazwa pola | Format | Opis |
---|---|---|---|---|
20 | W | Numer referencyjny transakcji | 16x | Pole zawiera datę wyciągu oraz numer oddziału. |
25 | W | Identyfikator rachunku | 35x | Pole zawiera numer rachunku w formacie IBAN. |
28C | W | Numer wyciągu/ Numer sekwencyjny | 5n[/5n] | Pole zawiera numer wyciągu a także numer strony wyciągu. Każda strona może mieć maksymalnie 10 operacji. |
60a | W | Saldo początkowe | 1!a6!n3!a15d | Saldo początkowe. „a” może przyjąć następujące oznaczenia: F oznacza pierwsze wystąpienie salda, M oznacza saldo początkowe z przeniesienia. Zawiera także znak salda (C – saldo dodatnie, D – saldo ujemne), datę a także symbol waluty. |
61 | O | Linia wyciągu | 6!n[4!n]2a[1!a]15d1!a3!c16x[//16x[34x]] | Zawiera datę zaksięgowania operacji, stronę operacji (C – uznanie, D – obciążenie), trzeci znak waluty, kwotę operacji, kod SWIFT a także referencje własną (znacznik NONREF oznacza brak referencji). |
86 | O | Informacje dla właściciela rachunku | 6*65x | Zawiera dodatkowe informacje na temat drugiej strony operacji (strona uznana/obciążona w zależności od znaku operacji). |
62a | W | Saldo końcowe | 1!a6!n3!a15d | Znak “a” może przyjąć następujące wartości M – oznaczające że saldo jest z przeniesienia, F – oznacza ostatnie wystąpienie salda na wyciągu. Dodatkowo zawiera znak salda (C – saldo dodatnie, D – saldo ujemne), datę, symbol waluty oraz kwotę. |
Uwaga: Format importu implementowany w aplikacji klienta jest niestandardową modyfikacją formatu MT940 zaproponowaną przez BZWBK S.A.
Legenda
Status :
- O – pole opcjonalne
- W – pole wymagane
Typ pola:
- x - dowolny znak
- a - znak nie numeryczny
- n - znak numeryczny
- d - liczba dziesiętna
Długość pola:
- liczba z wykrzyknikiem oznacza wymaganą długość pola,
- liczba bez wykrzyknika - dopuszczalną długość pola,
Przykład:
1!a - oznacza pole nienumeryczne o długości 1 35x - pole zawierające dowolne znaki o maksymalnej długości 35
[edytuj] Modyfikacje pól
Pole 86 - W podstawowym pliku eksportu historii rachunku w formacie MT940 w polu :86: przekazywany jest niepełny (tylko 65 znaków) tytuł transakcji. Nowy format eksportu historii rachunku w formacie MT940 umieszcza w polu :86: dodatkowe informacje na temat drugiej strony operacji (strona uznana/obciążona w zależności od znaku operacji). Zmiana polega na dodaniu (zgodnie z zasadami formatu tego pola: 6 linii o długości nie większej niż 65 znaków) oprócz pełnego tytułu transakcji również informacji o kontrahencie (drugiej stronie transakcji). Każde podpole zaczyna się od odpowiedniego znacznika ">" (separator podpól), tj.:
- >20tytuł_operacji (max 140 znaków)
- >31cały_nr_rachunku_kontrahenta_w_formacie_IBAN (max 28 znaków)
- >32nazwa_i_dane_adresowe_kontrahenta (max 140 znaków)
Pole :86: składa się z 6 linii, każda po 65 znaków. W długość linii należy wliczyć również dwa znaki końca linii: <CR><LF> oraz trzy znaki znacznika podpola ">##", gdzie ## oznacza dwucyfrowy symbol podpola. Po znaczniku podpola następuje sekwencja znaków alfanumerycznych zawierających uzupełniające informacje. Każde nowe podpole nie zaczyna się od nowej linii, co oznacza, że pole :86: stanowi jedną całość podzieloną na 6 linii po 65 znaków z podpolami rozdzielonymi ">##" oraz znakami końca linii <CR><LF>. Każda nowa linia nie rozpoczyna się od symbolu podpola ">##" - znakiem podpola jest oznaczony sam początek podpola, a reszta, w nowej linii, stanowi jego naturalną kontynuację.
Przykład:
:20:20030213 :25:PL89109016070000000060005341 :28C:0/1 :60F:C030212PLN353307,83 :61:030213DN35,00B2CGNONREF :86:>20zapłata za fakturę vat 101/2003, 102/2003, 103/2003, 104/20 003 i faktury vat z bieżącego roku 1/2004, 2/2004, 3/2004, 4 /2004 oraz inne fak.>3198109023720000000604007566>32P.H.U. W agonex Kołopex Poland, 61-661 Poznań, ul. Płomiennie Zielone Wzgór za 100/21 :62F:C030213PLN377504,66
Pole 28C może przybierać 2 formaty (pole numer wyciągu):
1. RRRR/aaa/b gdzie:
- RRRR - rok
- aaa - numer kolejnego wyciągu w roku RRRR
- b - numer kolejnej sekcji wyciągu począwszy od 1
2. rraaa/b gdzie
- rr- dwie ostatnie cyfry roku z RRRR
- aaa - numer wyciągu w roku RRRR
Nazwa pliku z ekstraktem z historii rachunku formatowana jest w następujący sposób: RACHWALUTA-DATA.MT np.: 60005341PLN-20040311.MT przy czym:
- RACH - pełny numer rachunku IBAN, dla którego generowany jest eksport;
- WALUTA - rachunku j.w.;
- DATA w formacie: RRRRMMDD;
- MT - rozszerzenie pliku identyfikujące typ jako ekstrakt z historii rachunku w formacie MT940.
W jednym pliku może znajdować się historia tylko jednego rachunku z jednego dnia.
Przykład:
pliku o nazwie: 60005341PLN-20040311.MT z dwiema operacjami: {1:F01060005341 }{2:0940060005341 N}{4: :20:040311/10901607 :25:PL89109016070000000060005341 :28C:0/1 :60F:C040311PLN123551749,64 :61:040311DN147,85M245NONREF :86:>20Zapłata za fakturę VAT 12345/2004. Jeszcze należy uwzględnić inne faktury VAT które są do zapłaty z dnia 5.03.2004 i innyc h wcześniejszych.>31PL00102030886546545654>32Jakaś firma z inne go banku sprawdzenie dla ]31i ]32a tak┐e ]20czy zostaną te znac zniki specjalne w adresie firmy zewnętrznej, które testuje. :61:040311DN147,00M240NONREF :86:>20Zapłata za fakturę VAT 12345/2004. Jeszcze należy uwzględnić inne faktury VAT które są do zapłaty z dnia 5.03.2004 i innyc h wcześniejszych.>31PL00102030886546545654>32Jakiś pracownik z innego banku sprawdzenie dla ]31i ]32a także ]20czy zostaną te znaczniki specjalne w adresie firmy zewnętrznej, którą tes. :62F:C040311PLN123551454,79 -}
[edytuj] Referencje własne
Na formatce umożliwiającej rejestrowanie transakcji, znajduje się pole Referencja własna, które umożliwia wprowadzanie informacji alfanumerycznej o maksymalnej długości 16 znaków. W eksporcie MT940 referencja jest wstawiana do pola :61: po kodzie transakcji. W przypadku braku referencji własnej wstawiana jest w tym miejscu wartość NONREF, np.: :61:040305CN123,45M245NONREF. Referencja własna przekazywana jest dla operacji: krajowych, płacowych i kredytowych. Referencja własna jest obsługiwana w plikach o formacie UNZ i MT940 z eksportowanymi importowanymi operacjami w aplikacji klienta.
[edytuj] Eksport wyciągu
W ekstrakcie z wyciągów w formacie MT940 przekazywane są dodatkowo: 1. referencje własne (ostatnia wartość w polu :61:), wprowadzane podczas rejestracji operacji krajowych złotowych, płacowych, uruchomienia kredytu rewolwingowego. 2. w polu :28C: przekazywany jest numer wyciągu w formacie RRRR/XXX, gdzie:
- RRRR – rok,
- XXX – kolejny numer wyciągu dla rachunku w roku.
Nazwa pliku z ekstraktem z wyciągów formatowana jest w następujący sposób: IBANWALUTA_NR-WYCIAGU_DATAWYCIAGU.eMT np.: PL89109016070000000060005341PLN_2004-002_20040927.eMT przy czym:
- IBAN - pełny numer rachunku IBAN, dla którego generowany jest wyciąg;
- WALUTA - rachunku j.w.;
- NR_WYCIAGU - kolejny numer wyciągu, z tym, że znak "/" z numeru zastępowany jest znakiem "-";
- DATAWYCIAGU w formacie: RRRRMMDD;
- eMT – rozszerzenie pliku identyfikujące typ jako ekstrakt z Wyciągu w formacie MT940.
W jednym pliku może znajdować się tylko jeden pełny wyciąg z jednego rachunku.
Przykład:
pliku o nazwie: PL89109016070000000060005341PLN_2004-002_20040927.eMT z pięcioma operacjami: {1:F01056022897 }{2:0940056022897 N}{4: :20:040927/10901564 :25: PL89109016070000000060005341 :28C:2004/002/1 :60F:D040927PLN1341285,61 :61:040927CN40000,00M401ref_kredyt :86:>20Uruchomienie kredytu KRED.DLA PODMIOTÓW GOSP.PLN>31281090156 40000000100763461>32RENOLL SPÓŁKA AKCYJNA UL. KORFANTEGO 374 61 8-200 ŻARY LUBUSKIE :61:040927DN2,34M245moja referencja :86:>20kraj test>3126109015640000000056005854>32P.H.U. WAGONEX KOŁO PEX POLAND 61-661 POZNAŃ UL.PŁOMIENNE ZIELONA WZGÓRZA 100 21 :61:040927DN165,47M420NONREF :86:>20/TI/1DB8033444/OKR/04M01/SFP/CIT-10/TXT/mój tekst>317210101 2120059912221000000>32Drugi Śląski Urząd Skarbowy Bielsko-Biała :61:040927DN1456,00M403NONREF :86:>2092313914421DB8033444 A20040200ii>31831010102300002613951 00000>32Rachunek ZUS PL 83 10101023 0000261395100000 :61:040927DN10054,00M240ref_plac :86:>20pensja 01>3126109015640000000056005854>32 P.H.U. WAGONEX K OŁOPEX POLAND 61-661 POZNAŃ UL.PŁOMIENNE ZIELONA WZGÓRZA 100 21 :62M:D040927PLN1312963,42 -}
[edytuj] Słowniki
import, eksport słowników
Przy eksporcie i imporcie wykorzystywany jest ten sam format pliku. Podczas importu w pole id_kontrahenta można wpisać dowolną liczbę całkowitą. Poszczególne pola są rozdzielona znakiem tabulacji a pierwsza linia jest linią nagłówkową pól.
[edytuj] Kontrahenci
struktura tabeli Kontrahenci (dot. operacje krajowe, złotowe)
Nazwa pola | Typ i rozmiar pola | Opis |
---|---|---|
Id_kontrpartnera | Long | Identyfikator wewnętrzny w systemie Minbank24 |
Identyfikator | Char(20) | Identyfikator wprowadzony przez użytkownika |
Nazwa_skrocona | Char(40) | Nazwa skrócona kontrahenta |
nazwa_pelna | Char(140) | Nazwa pełna, adres |
nr_iban | Char(70) | Numer rachunku w formacie IBAN |
symbol_kraju | Char(2) | Symbol kraju |
liczba_kontrolna | Char(2) | Liczba kontrolna rachunku |
nr_oddzialu | Char(8) | Nr oddziału |
nr_rachunku | Char(48) | Nr rachunku |
Nip | Char(13) | NIP kontrahenta |
kod_typu_kontrpartnera | Long | Kod typu kontrahenta =1 |
[edytuj] Dłużnicy
struktura tabeli Dłużnicy (operacje polecenia zapłaty)
Nazwa pola | Typ i rozmiar pola | Opis |
---|---|---|
Id_kontrpartnera | Long | Identyfikator wewnętrzny w systemie Minbank24 |
nazwa_skrocona | Char(40) | Nazwa skrócona dłużnika |
nr_oddzialu | Char(8) | Nr oddziału |
nr_rachunku | Char(48) | Nr rachunku |
nazwa_pelna | Char(140) | Nazwa pełna, adres |
Id_platnosci | Char(140) | Idenfyfikator płatności |
Identyfikator | Char(20) | Identyfikator wprowadzony przez użytkownika |
Kod_typu_kontrpartnera | Long | Kod typu kontrahenta =2 |
Symbol_kraju | Char(2) | Symbol kraju |
Liczba_kontrolna | Char(2) | Liczba kontrolna rachunku |
Nr_iban | Char(70) | Numer rachunku w formacie IBAN |
Nip | Char(13) | NIP kontrahenta |
[edytuj] Pracownicy
struktura tabeli Pracownicy (operacje płacowych)
Nazwa pola | Typ i rozmiar pola | Opis |
---|---|---|
Id_kontrpartnera | Long | Identyfikator wewnętrzny w systemie Minbank24 |
nazwa_skrocona | Char(40) | Nazwa skrócona pracownika |
Kwota | Numeric(9) | Kwota wypłaty |
Nr_listy_plac | Char(12) | Nr listy płac |
Nr_oddzialu | Char(8) | Nr oddziału |
Nr_rachunku | Char(48) | Nr rachunku |
Nazwa_pelna | Char(140) | Nazwa pełna, adres |
Kod_typu_kontrpartnera | Long | Kod typu kontrahenta =4 |
Symbol_kraju | Char(2) | Symbol kraju |
Liczba_kontrolna | Char(2) | Liczba kontrolna rachunku |
Nr_iban | Char(70) | Numer rachunku w formacie IBAN |
Identyfikator | Char(20) | Identyfikator wprowadzony przez użytkownika |
[edytuj] Beneficjenci
struktura tabeli Beneficjenci (operacje SWIFT)
Nazwa pola | Typ i rozmiar pola | Opis |
---|---|---|
Id_kontrpartnera | Long | Identyfikator wewnętrzny w systemie Minbank24 |
nazwa_skrocona | Char(40) | Nazwa skrócona beneficjenta |
nr_rachunku | Char(48) | Numer rachunku (liczba_kontrolna+numer_oddziału+nr_rachunku) |
identyfikator | Char(20) | Identyfikator wprowadzony przez użytkownika |
kod_typu_kontrpartnera | Long | Kod typu kontrahenta = 3 |
nazwa_pelna | Char(140) | Nazwa pełna, adres |
symbol_kraju | Char(2) | Symbol kraju |
liczba_kontrolna | Char(2) | Pole niewykorzystywane przy imporcie |
nr_oddzialu | Char(8) | Pole niewykorzystywane przy imporcie |
nr_iban | Char(70) | Pole niewykorzystywane przy imporcie |
lp | Long | Numer banku beneficjenta |
nazwa | Char(40) | Nazwa banku beneficjenta |
miasto | Char(50) | Miasto banku beneficjenta |
kraj | Char(50) | Kraj banku beneficjenta |
id_kontrpartnera | Long | Identyfikator wewnętrzny w systemie Minbank24 (powielenie wartości z pierwszego pola) |
bic | Char(40) | BIC banku beneficjenta |
adres | Char(90) | Adres banku beneficjenta |
nr_oddz | Char(40) | Numer oddziału banku beneficjenta |
nazwa_oddz | Char(90) | Nazwa oddziału banku beneficjenta |
data_importu | Pole niewykorzystywane przy imporcie |