Pangalingi päringute all on mõeldud HTTP POST päringut spetsifitseeritud parameetritega. Iga päring sisaldab endas teenuse numbrit. Igale teenusele vastab oma loetelu parameetritest ja päringu käsitlemise algoritm. Päringud Kaupmehelt Pangale suunatakse URLile: https://www.lhv.ee/banklink.
Vastavuses uuendatud tehnilise spetsifikatsiooniga.
Kaupmees saadab Panka allkirjastatud maksekorralduse andmed, mida Klient internetipangas muuta ei saa. Peale edukat makset koostatakse Kaupmehele päring “1111”, ebaõnnestunud makse puhul “1911”.
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (1011). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_SND_ID | 15 | Päringu koostaja (Kaupmehe) ID. |
4 | VK_STAMP | 20 | Päringu ID. |
5 | VK_AMOUNT | 12 | Maksmisele kuuluv summa. Komakohad ja sendid eristatud punktiga ".". Tuhandete eraldajat ei asutata. |
6 | VK_CURR | 3 | Makse valuuta (EUR). |
7 | VK_ACC | 34 | Saaja konto number. |
8 | VK_NAME | 70 | Saaja nimi. |
9 | VK_REF | 35 | Maksekorralduse viitenumber. |
10 | VK_MSG | 95 | Maksekorralduse selgitus. |
11 | VK_RETURN | 255 | URL, kuhu vastatakse edukal tehingu sooritamisel. |
12 | VK_CANCEL | 255 | URL, kuhu vastatakse ebaõnnestunud tehingu puhul. |
13 | VK_DATETIME | 24 | Päringu algatamise kuupäev ja kellaaeg ISO 8601 formaadis sekundi täpsusega koos ajatsooni infoga. Nt 2013-03- 13T07:21:14+0200. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
Kaupmees saadab panka Kliendi sooviavalduse Tehingu tegemiseks. Makse saaja nimi ja konto number võetakse Panga ja Kaupmehe vahelisest lepingust. Peale edukat makset koostatakse Kaupmehele päring “1111”, ebaõnnestunud makse puhul “1911”.
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (1012). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_SND_ID | 15 | Päringu koostaja (Kaupmehe) ID. |
4 | VK_STAMP | 20 | Päringu ID. |
5 | VK_AMOUNT | 12 | Maksmisele kuuluv summa. Komakohad ja sendid eristatud punktiga ".". Tuhandete eraldajat ei kasutata. |
6 | VK_CURR | 3 | Makse valuuta (EUR). |
7 | VK_REF | 35 | Maksekorralduse viitenumber. |
8 | VK_MSG | 95 | Maksekorralduse selgitus. |
9 | VK_RETURN | 255 | URL, kuhu vastatakse edukal tehingu sooritamisel. |
10 | VK_CANCEL | 255 | URL, kuhu vastatakse ebaõnnestunud tehingu puhul. |
11 | VK_DATETIME | 24 | Päringu algatamise kuupäev ja kellaaeg ISO 8601 formaadis sekundi täpsusega koos ajatsooni infoga. Nt 2013-03-13T07:21:14+0200. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
Kasutatakse vastamiseks maksekorralduse toimumisest
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (1111). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_SND_ID | 15 | Päringu koostaja (Panga) ID. |
4 | VK_REC_ID | 15 | Päringu vastuvõtja (Kaupmehe) ID. |
5 | VK_STAMP | 20 | Päringu ID. |
6 | VK_T_NO | 20 | Maksekorralduse number. |
7 | VK_AMOUNT | 12 | Makstud summa. Komakohad ja sendid eristatud punktiga ".". Tuhandete eraldajat ei kasutata. |
8 | VK_CURR | 3 | Makse valuuta (EUR). |
9 | VK_REC_ACC | 34 | Saaja konto number. |
10 | VK_REC_NAME | 70 | Saaja nimi. |
11 | VK_SND_ACC | 34 | Maksja konto number. |
12 | VK_SND_NAME | 70 | Maksja nimi. |
13 | VK_REF | 35 | Maksekorralduse viitenumber. |
14 | VK_MSG | 95 | Maksekorralduse selgitus. |
15 | VK_T_DATETIME | 24 | Maksekorralduse kuupäev ja kellaaeg ISO 8601 formaadis sekundi täpsusega koos ajatsooni infoga. Nt 2013-03-13T07:21:14+0200. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
- | VK_AUTO | 1 | Y = panga poolt automaatselt saadetud vastus. N = vastus kliendi liikumisega kaupmehe lehele. |
Kasutatakse ebaõnnestunud tehingust teatamiseks.
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (1911). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_SND_ID | 15 | Päringu koostaja (Panga) ID. |
4 | VK_REC_ID | 15 | Päringu vastuvõtja (Kaupmehe) ID. |
5 | VK_STAMP | 20 | Päringu ID. |
6 | VK_REF | 35 | Maksekorralduse viitenumber. |
7 | VK_MSG | 95 | Maksekorralduse selgitus. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
- | VK_AUTO | 1 | Y = panga poolt automaatselt saadetud vastus. N = vastus kliendi liikumisega kaupmehe lehele. |
Vastavuses uuendatud tehnilise spetsifikatsiooniga.
Kaupmehele edastatakse Panga poolt tuvastatud kasutaja andmed. Turvalisuse huvides peab sõnumi saaja lisaks allkirjale (VK_MAC) kontrollima ka sõnumi saaja ID-d (VK_REC_ID) ning sõnumi genereerimise kuupäeva ja kellaaega (VK_DATETIME), mis tohib erineda kontrollimise hetkel kehtivast maksimaalselt ±5 minutit.
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (3012). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_USER | 16 | Kokkuleppeline kasutaja identifikaator. |
4 | VK_DATETIME | 24 | Sõnumi genereerimise kuupäev ja kellaaeg ISO 8601 formaadis sekundi täpsusega koos ajatsooni infoga. Nt 2013-03-13T07:21:14+0200. |
5 | VK_SND_ID | 15 | Sõnumi koostaja (Panga) ID. |
6 | VK_REC_ID | 15 | Sõnumi saaja (Kaupmehe) ID. |
7 | VK_USER_NAME | 140 | Kasutaja nimi. |
8 | VK_USER_ID | 20 | Kasutaja isikukood. |
9 | VK_COUNTRY | 2 | Isikukoodi riik (kahetäheline ISO 3166-1). |
10 | VK_OTHER | 150 | Muu info kasutaja kohta. |
11 | VK_TOKEN | 2 | Autentimisvahendi identifikaatori kood: 1 - ID-kaart; 2 - Mobiil-ID; 5 - ühekordsed koodid (v.a. PIN-kalkulaator); 6 - PIN-kalkulaator; 7 - korduvkasutusega kaart; 9 – Smart-ID; 12 - Biomeetria. |
12 | VK_RID | 30 | Sessiooniga seotud identifikaator. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
Kaupmehele edastatakse vastusena päringule 4012 Panga poolt tuvastatud kasutaja andmed ja nonssi koopia. Turvalisuse huvides peab sõnumi saaja lisaks allkirjale (VK_MAC) ja nonssile (VK_NONCE) kontrollima ka sõnumi saaja ID-d (VK_REC_ID) ning sõnumi genereerimise kuupäeva ja kellaaega (VK_DATETIME), mis tohib erineda kontrollimise hetkel kehtivast maksimaalselt ±5 minutit.
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (3013). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_DATETIME | 24 | Sõnumi genereerimise kuupäev ja kellaaeg ISO 8601 formaadis sekundi täpsusega koos ajatsooni infoga. Nt 2013-03-13T07:21:14+0200. |
4 | VK_SND_ID | 15 | Sõnumi koostaja (Panga) ID. |
5 | VK_REC_ID | 15 | Sõnumi saaja (Kaupmehe) ID. |
6 | VK_NONCE | 50 | Päringus olnud nonssi koopia. |
7 | VK_USER_NAME | 140 | Kasutaja nimi. |
8 | VK_USER_ID | 20 | Kasutaja isikukood. |
9 | VK_COUNTRY | 2 | Isikukoodi riik (kahetäheline ISO 3166-1). |
10 | VK_OTHER | 150 | Muu info kasutaja kohta. |
11 | VK_TOKEN | 2 | Autentimisvahendi identifikaatori kood: 1 - ID-kaart; 2 - Mobiil-ID; 5 - ühekordsed koodid (v.a. PIN-kalkulaator); 6 - PIN-kalkulaator; 7 - korduvkasutusega kaart; 9 – Smart-ID; 12 - Biomeetria. |
12 | VK_RID | 30 | Sessiooniga seotud identifikaator. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
Kaupmehe poolt Pangale saadetav päring kasutaja tuvastamiseks. Teenus avatud vastava lepingu sõlminud kaupmeestele. Vastuspäringu kood 3012.
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (4011). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_SND_ID | 15 | Sõnumi koostaja (Kaupmehe) ID. |
4 | VK_REPLY | 4 | Oodatava vastuspaketi kood (3012). |
5 | VK_RETURN | 255 | Kaupmehe URL, kuhu vastatakse. |
6 | VK_DATETIME | 24 | Sõnumi genereerimise kuupäev ja kellaaeg ISO 8601 formaadis sekundi täpsusega koos ajatsooni infoga. Nt 2013-03-13T07:21:14+0200. |
7 | VK_RID | 30 | Sessiooniga seotud identifikaator. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
Kaupmehe poolt Pangale saadetav päring kasutaja tuvastamiseks. Teenus avatud vastava lepingu sõlminud kaupmeestele.
Vastuspäringu kood 3013.
Jrk | Väljanimi | Pikkus | Kirjeldus |
---|---|---|---|
1 | VK_SERVICE | 4 | Teenuse number (4012). |
2 | VK_VERSION | 3 | Kasutatav krüptoalgoritm (008 või 009). |
3 | VK_SND_ID | 15 | Sõnumi koostaja (Kaupmehe) ID. |
4 | VK_REC_ID | 15 | Sõnumi saaja (Panga) ID. |
5 | VK_NONCE | 50 | Päringu koostaja poolt genereeritud juhuslik nonss. |
6 | VK_RETURN | 255 | Kaupmehe URL, kuhu vastatakse. |
7 | VK_DATETIME | 24 | Sõnumi genereerimise kuupäev ja kellaaeg ISO 8601 formaadis sekundi täpsusega koos ajatsooni infoga. Nt 2013-03-13T07:21:14+0200. |
8 | VK_RID | 30 | Sessiooniga seotud identifikaator. |
- | VK_MAC | 700 | Kontrollkood e. allkiri. |
- | VK_ENCODING | 12 | Sõnumi kodeering. ISO-8859-1 või UTF-8 (vaikeväärtus) või WINDOWS-1257. |
- | VK_LANG | 3 | Soovitav suhtluskeel (EST, ENG või RUS). |
LHV aktsepteerib sertifikaadipäringut ehk n-ö self-signed sertifikaati. Pangalingi lepingu sõlmimisel saadab pank kaupmehele avaliku võtme sertifikaadi, mille klient peab sisestama oma süsteemi ning sellega valideeritakse panga poolt saadetud pakette.
Klient peab genereerima omale avaliku ja salajase võtmepaari. Võtme loomisel soovitame lähtuda järgmistest tingimustest:
Kasutame X.509 standardile vastavaid .PEM formaadis võtmeid/sertifikaate st. sisu on BASE64 kodeeringus ning märgendite –BEGIN… – ja –END… – vahel. Kliendi poolt genereeritud salajase võtme minimaalne pikkus peab olema 2048 bitti.
Võtmepaari saab genereerida käsurealt openssl utiliidi abil:
openssl genrsa 2048 > privkey.pem
openssl req -new -key privkey.pem -out cert-req.pem
Avalik võti tuleb panka tagasi saata ning seejärel pangalink aktiveeritakse.
Päringutes kasutatava elektroonse allkirja VK_MAC arvutus toimub kokkuleppelise algoritmi alusel. Algoritmi versiooni määrab päringu parameeter VK_VERSION. Allkiri VK_MAC edastatakse päringutes BASE64 kodeerituna. Kasutusel kaks versiooni:
Selgitused: