
Sinhronais maksājums
Sadaļa apraksta maksājuma moduļa izsaukumu sinhronam e-pakalpojumam.
Lai veiktu sinhronu maksājumu e-pakalpojumam jāveic šādas darbības:
-
Jāizveido IVISRequest struktūra, kas jāaizpilda šādi:
- IVISRequest.Header.MessageID=Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Header.MessageType=Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Header.TransactionID=Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Header.CorrelationID=Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Header.Destination= URN:IVIS:100001:ISS-EPS-EPAKPaymentSync-v2-0;
- IVISRequest.Header.Test=Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Header.MilestoneID=Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Header.ResponseEndPoint=ISS servisa vai pakalpojuma formas URN, kurai atdot vadību pēc maksājumu moduļa un Iedzīvotāju maksājumu nodrošināšanas izpildes (šis parametrs ir obligāts maksājumu gadījumā);
- IVISRequest.Header.NextMilestoneID=Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Body.IVISServiceData.ServiceInstanceID= Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Body.IVISServiceData.EServiceID= Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Body.IVISServiceData.Receiver= Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Body.IVISServiceData.Notification= Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Body.IVISServiceData.AttachmentList= Atbilstoši izsaucēja e-pakalpojuma projektējumam;
- IVISRequest.Body.IVISServiceData.ErrorList= Atbilstoši izsaucēja e-pakalpojuma projektējumam;
-
Maksājumu informācija tiek nodota sadaļā IVISRequest.Body.IVISServiceData.PaymentInfo.PaymentRequestList, kas tiek aizpildīta šādi:
- PaymentRequest.ServiceStep=Pakalpojuma soļa numurs. Tiek definēts PPK, izveidojot pakalpojumu un tam piesaistot atbilstošu soli pakalpojumā);
-
PaymentRequest.PriceList — cenrādis. Tiek definēts PPK, pakalpojumam izveidojot cenrādi ar atbilstošām cenrāža pozīcijām un to vērtībām. Ja soļa apmaksai nepieciešams veikt vairākus maksājumus, tad PPK jādefinē atbilstošs cenrādis:
- Position=Cenrāža pozīcija. PPK definētais cenrāža pozīcijas kods;
- Item=Vienību skaits vai summa;
- ItemElementName=“Quantity”, ja tiek norādīts vienību skaits, vai “Amount”, ja tiek norādīta summa;
-
PaymentRequest.ClientInfo — klienta informācija:
- ClientName=Lietotāja nosaukums vai uzvārds, kas lieto pakalpojumu un izvēlas apmaksu;
- ClientFirstName=Lietotāja vārds;
- ClientCode=Lietotāja reģistrācijas numurs vai personas kods. Personas kods daļas atdalītas ar “-”;
- ClientEMail=Lietotāja e-pasta adrese;
- ClientPhone=Lietotāja tālruņa numurs;
- ClientAddress=Lietotāja adrese;
- PaymentRequest.ResponseURL=Interfeisa atgriešanās adrese. Pakalpojuma adrese, kas tiek atvērta lietotājam pēc apmaksas veikšanas. Jāveido tā, lai nododot vadību beigās varētu pievienot maksāšanas pieprasījuma identifikatoru;
- PaymentRequest.ServerResponseURL=Maksājuma statusa nodošanas adrese. Pakalpojuma adrese, kurai tiek nodots papildus paziņojums par maksāšanas pieprasījuma statusa maiņu, ja pakalpojuma loģikai nav nepieciešama – var neeksistēt. Jāveido tā, lai nododot vadību beigās varētu pievienot maksāšanas pieprasījuma identifikatoru;
- PaymentRequest.NoInvoice=Pazīme, ka nevajag veidot attaisnojuma dokumenta failu;
- PaymentRequest.ParentPaymentRequestID=Saistītā maksāšanas pieprasījuma identifikators;
- PaymentRequest.SwiftCode=Bankas SWIFT kods, ar kuru autorizējies lietotājs. Netiek aizpildīts, ja lietotājs autorizējies neizmantojot banku autorizācijas līdzekļus;
- PaymentRequest.PaymentObject= Maksājuma mērķis. Maksājumā tiks izmantots izsaucēja nodots mērķis, ja PPK atzīmēts ka mērķi drīkst mainīt. Saņemtajam mērķim sākumā tiks pievienots maksājuma sistēmas identifikators 34 simboli un “ ” (atstarpes simbols). Maksimālais mērķa garums 140 simboli, izņemot Swedbank — 70 — un SEB banka — 100 simboli;
- PaymentRequest.InvoiceIssueDate=Attaisnojuma dokumenta izrakstīšanas datums ārējā pakalpojumā, ja tāds eksistē;
- PaymentRequest.ExpiryDate=Ārējā pakalpojumā noteikts derīguma termiņš, ja tāds eksistē;
-
PaymentRequest.AllowedBanks - Pakalpojuma apmaksāšanai atļautās internetbankas. Bankas tiek norādītas ar SWIFT kodiem. Ja nav norādīta neviena, tad tiek attēlotas visas apmaksāšanas iespējas, izņemot kredītkartes, kuras tiek kontrolētas atsevišķā procesā:
- SwiftCode=Bankas SWIFT kods;
- IVISRequest.Body=Atbilstoši izsaucēja e-pakalpojuma projektējumam; IVISRequest.Body.IVISServiceData.PaymentInfo.PaymentRequest struktūra satur arī citus neobligātus laukus, kas ir aprakstīti IVISService (URN:IVIS:100001:XSD-IVIS-IVISService-v2-0) XML shēmā, kuri ir neobligāti, bet ja specifiskos pakalpojumu gadījumos ir nepieciešami un bankas, kurās tiek veikta apmaksa tos atbalsta, tad var izmantot.
- Jāizsauc pieprasījumu servisa (URN:IVIS:100001:ISS-EPS-RequestWebService-v1-9) metode SubmitSync(), kurai padod izveidoto IVISRequest struktūru. IVIS sinhroni atgriež maksājumu pieprasījuma ID un MM interfeisa izsaukšanas saiti, IVISResponse.Body atbilstoši shēmai URN:IVIS:100001:XSD-Payments-Payments-v2-0-TYPE-PaymentRequestResponse-v1-0;
- Jāizsauc MM interfeisa izsaukšanas saite;
-
Pēc apmaksas veikšanas Maksājumu modulis un Iedzīvotāju maksājumu veic sekojošas darbības:
- Nodod vadību PaymentRequest.ResponseURL norādītajai adresei;
- Veido jaunu izsaukumu IVISRequest.Header.ResponseEndPoint norādītajam modulim.