private IVISRequestStructure CreateIvisRequest(bool isSynchronousRequest)
{
IVISRequestStructure request = new IVISRequestStructure();
request.Header = new RequestHeaderStructure();
request.Header.Destination = isSynchronousRequest ?
"URN:IVIS:100001:ISS-EPS-EPAKPaymentSync-v2-0" :
"URN:IVIS:100001:ISS-EPS-EPAKPayment-v2-0";
// Aizpildam pārējos header laukus (ieskaitot ResponseEndPoint)
// Izveidojam konkrētā pakalpojuma objektu
EP12DataFullStructure body = new EP12DataFullStructure();
IVISServiceExStructure service = new IVISServiceExStructure();
body.Item = service;
// Izveidojam maksājuma pieprasījumu un aizpildam to
service.PaymentInfo = new PaymentInfoStructure();
// Aizpildam pārējos laukus (ServiceInstanceID, EServiceID, Initiator, Receiver, utt.)
request.SetBody(body);
return request;
}
// Asinhronais gadījums
IVISRequestStructure request = CreateIvisRequest(false);
IVISResponseStructure response = new RequestWebServiceProxy().Submit(request);
// Sinhronais gadījums
//.aspx failā:
<asp:HiddenField ID="PaymentRequestID" runat="server" />
<!-- PostBackUrl ir jānorāda pilns ceļš uz Maksājumu Moduļa lapu -->
<asp:Button ID="SendPaymentButton" runat="server" Text="Uz maksājuma moduli"
PostBackUrl="URN.IVIS.100001.EP-MM-v1-0.aspx" />
// .cs failā
IVISRequestStructure request = CreateIvisRequest(true);
IVISResponseStructure response = new RequestWebServiceProxy().SubmitSync(request);
PaymentRequestID.Value = IVISLib.DeserializeBody(response.Body);
// Lietotājs spiež pogu "Uz maksājuma moduli"