Implementatie AssurePay ASP.NET. ideal



Vergelijkbare documenten
Technische Handleiding. ideal

REST Implementatie. Versie ideal

Taxis Pitane Business Suite Taxi Online API. Censys BV Eindhoven v1.0.1

SMS Webservice Implementatie handleiding

ASRemote WebService. Via deze webservice kunt u:

Technische aansluit documentatie Versie

Taxis Pitane Soap Technologie koppeling ritopdrachten. Censys BV

Katholieke Hogeschool Kempen ASP

Technical Specification SOFORT Banking

1. XML VELDEN Verplichte Velden Signature 4 2. XML BETALINGSVERZOEK Hoe werkt het? Volledig betalingsverzoek 9

Technical Note. API Beschrijving Aangetekend Mailen

HTTP SMS API Technische Specificatie messagebird.com versie mei 2014

Automatische Installatie op IIS server

Technische handleiding ideal

Magento 1.4.x, 1.5.x, 1.6.x en 1.7.x module. Version 3.2

1. Index Inleiding Webservice CalculateFile CalculationCount...3

API handleiding Pompoen SMS

Technische Documentatie TaxatieVoertuig A2SP 2015

Technische handleiding ideal

Rabo SmartPin API koppeling

Technische handleiding Mister Cash

EAN XForms. Een demo XML communicatie voor het MKB

Rijbewijsvalidatie SOAP service

public Bier ( string N, double P, Brouwerij B) { Naam = N; AlcoholPerc = P; Brouwer = B;

REST API. Versie 3.2.1

Handleiding Publicatie Module Enquête Systeem

ANB5Web API Documentatie. Revisie

Technical Specification SOFORT Banking

Technische documentatie Overdracht bedrijfsvoorraad B2B AFS 6.2

Technische Documentatie SOFORT Banking

Dit kan gebruikt worden in zowel een ASP.NET web applicatie als een desktop applicatie.

TaskCentre Web Service Connector: Creëren van requests in Synergy Enterprise

MESSAGE&to=RECEIVER&sender=FROM

Object Oriented Programming

Technische documentatie APK AFS 6.2

Aanvullende toets Gameprogrammeren (INFOB1GP) Woensdag 24 december 2014, uur

DigiD-authenticatie in SharePoint

Service API Specificatie. Key2Parkeren Koppelvlak Kentekenwijziging

Werken met de ABN Amro Test omgeving

Belscores. Gegevensstroom BEL_GS01 Push belscores

Toegang Educatieve ICT Systemen

NIS Notarieel Informatie Systeem

De SAP Cloud Connector 2.0 maakt SAPUI5 ontwikkeling via de WEB-IDE mogelijk met data uit je eigen backend systeem.

HDN DARTS WEB AUTHENTICATIE

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.

Stappenplannen MailPlus SOAP API

Externe pagina s integreren in InSite en OutSite

SMSStunter gateway API

Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, uur

Gebruikers Handleiding Webservice Verzekering Afsluiten

Cartalk: Simplified REST interface

Censys BV - Eindhoven. Communicatieprotocol. Taxis Pitane Soap Server

Instellen Microsoft Outlook .

Aansluit handleiding Omgevingsloket online. Webservices INREGELOMGEVING (INR) Directie Concern Informatievoorziening

Installatie en configuratie documentatie

Creëren van een instantie van de gegenereerde.net class, standaard initialisatie door.net

Security web services

Open SQL Server Management Studio en log in als Administator. Je ziet dan wat je in figuur 2.1 ziet.

ideal QR Implementatie Guidelines

Modelleren en Programmeren

ANB5Web API Documentatie. Revisie

Proware Cloud Webbuilder Versie 2.30

WCF claims-based authorization

Tentamen Inleiding Programmeren (IN1608WI), duur van de toets 2 uur Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

ibabs Public WCF Service

Inhoud. Revisiehistorie Inleiding... 4

Installatiehandleiding Cane Webservices.nl Integratie

NHibernate als ORM oplossing

Uitwerkingen derde deeltentamen Gameprogrammeren Vrijdag 6 november 2015, uur

AJAX (XMLHttpRequest)

Handleiding Authenticatie

Beschrijving OpenTunnel koppelvlak met MijnOverheid BerichtenBox

BoToVa-service.nl Toetsing en Validatie Service

Tentamen Objectgeorienteerd Programmeren IN1205 Voorbeeld

ABC Bank Backend Functioneel Ontwerp

Openbare webservice diergeneeskunderegister

Met een LightSwitch applicatie een OData service uit de Windows Azure Marketplace consumeren

Sisow. Handleiding Versie

ideal op je Webnode website

Domein API Handleiding

Uitwerking Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, uur

ideal Betaal Formulier (Ondersteund o.a. ideal, MisterCash, Direct E-Banking en Credit Card)

Leer-Rijk Leveranciers API

Handleiding Testvoorziening istandaarden (TiS) 4 mei 2017

Handleiding Gebruik Request Tracker. Inhoud. Versie Januari 2016

Installatiehandleiding Business Assistent

Uniforme Pensioen Aangifte (UPA)

FMSservice. Omschrijving API VeiligStallen

Organiseer uw verschillende SOAP services in één scenario

Werken op afstand via internet

Aquo Domeintabellen Services (Aquo DS) Handleiding Webservice

ideal QR betalen via een QR-code

ideal QR Merchant Implementatie Guidelines (NL)

Verslag. Projectteam: 107 Datum: 16 oktober 2008 Project leden: Lennard Fonteijn Harish Marhe Nicoletta Saba Turgay Saruhan Robin Tummers

RA Handleiding Reisadviseur INLOGGEN: ONDERHOUD: WEBSITE STRUCTUUR. Menu & Pagina structuur. Pagina s aanmaken. Weblink aanmaken

Webterminal Operators Manual NL Coupon

Installatie Groeps Login app

Transcriptie:

Implementatie AssurePay ASP.NET ideal

Implementatie AssurePay ASP.NET 2 van 11 Inhoudsopgave Microsoft ASP.NET... 3 Classic ASP... 9

Implementatie AssurePay ASP.NET 3 van 11 Microsoft ASP.NET Implementeren met Microsoft ASP.NET is zeer eenvoudig. WebServices kunnen eenvoudig worden geconsumeerd. Hieronder zie je hoe eenvoudig dit is in Microsoft's Visual Web Developer 2008 Express Edition: Vul "https://www.sisow.nl/sisow/assurepay.asmx" in in het URL veld en bovenstaand plaatje verschijnt. Er wordt 1 WebService gevonden met de volgende functies: GetBanken: hiermee kan de actuele lijst van aangesloten banken worden verkregen; GetSHA1Login en GetSHA1Login2: deze zullen in de nabije toekomst komen te vervallen. Oorspronkelijk bedoeld om een SHA1 waarde te verkrijgen van onder andere de componenten gebruikersnaam, wachtwoord, transactiebedrag en betalingskenmerk; GetStatus: hiermee kan de status van een ideal transactie worden bepaald; GetTransaction: idem als GetStatus, maar tevens met de mogelijkheid om alle informatie, verkregen uit de ideal transactie, op te vragen; GetURL: hiermee wordt de URL bepaald waarmee een ideal transactie kan worden gestart; GetURL2: idem, echter geeft deze functie ook de ideal Transaction ID terug;

Implementatie AssurePay ASP.NET 4 van 11 Nadat de referentie naar de WebService van Assure Pay is toegevoegd kan men uitermate simplistisch binnen de IDE (Integrated Development Environment) hiervan gebruik maken. Zie onderstaand voorbeeld: Er wordt een instantie van het AssurePay klasse geïnitieerd, waarna de functies beschikbaar komen alsof het een lokale klasse betreft.

Implementatie AssurePay ASP.NET 5 van 11 In onderstaand voorbeeld zie je in de method StartTransaction hoe een ideal transactie gestart kan worden. Aanroep van GetURL2 retourneert of een fout of een URL. Een fout is te herkennen, doordat de geretourneerde waarde dan begint met "error=". Door middel van de aanroep "Response.Redirect(url)" wordt de ideal transactie gestart.

Implementatie AssurePay ASP.NET 6 van 11 De terugkoppeling van het resultaat van de ideal transactie zou er als volgt uit kunnen zien:

Implementatie AssurePay ASP.NET 7 van 11 Controleer of de QueryString parameters "txid", "ec" en "status" aanwezig zijn. Eventueel de aanvullende controle met behulp van de aanverwant opgeslagen sessie variabelen "txid" en "ec". Verdere controle, voor de volledige zekerheid (de status variabele kan gemanipuleerd zijn), gebeurt middels GetStatus en/of GetTransaction. Zie onderstaand voorbeeld:

Implementatie AssurePay ASP.NET 8 van 11 Als laatste kan men hieronder zien hoe een dropdown (ddbank), voor de keuze van de gewenste bank, gevuld kan worden met de informatie verkregen uit de GetBanken functie: Zo eenvoudig kan een ideal betaling met behulp van de WebService functies van Assure Pay worden geïmplementeerd in bijvoorbeeld de gratis IDE van Microsoft Visual Web Developer 2008 Express Edition.

Implementatie AssurePay ASP.NET 9 van 11 Classic ASP Voor Classic ASP is volgende (mogelijke) wrapper te gebruiken: using System; public class AssurePay private string user; private string password; MSXML2.XMLHTTP30Class xmlhttp; MSXML2.DOMDocument30Class domdoc; public AssurePay(string gebruiker, string wachtwoord) user = gebruiker; password = wachtwoord; private bool send(string method) string msg; // opbouwen SOAP bericht msg = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"; msg += "<soap:envelope xmlns:xsi=\"http://www.w3.org/2001/xmlschema-instance\" xmlns:xsd=\"http://www.w3.org/2001/xmlschema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">"; msg += "<soap:body>"; msg += method; msg += "</soap:body>"; msg += "</soap:envelope>"; null); // verstuur SOAP bericht xmlhttp = new MSXML2.XMLHTTP30Class(); xmlhttp.open("post", "https://www.sisow.nl/sisow/assurepay.asmx", false, null, xmlhttp.setrequestheader("content-type", "text/xml; charset=utf-8"); xmlhttp.setrequestheader("content-length", msg.length.tostring()); xmlhttp.send(msg); return false; // lees response domdoc = new MSXML2.DOMDocument30Class(); domdoc.load(xmlhttp.responsexml); return false; return true; public string[] GetBanken() string[] banken = null; if (!send("<getbanken xmlns=\"http://tempuri.org/\"/>"))

Implementatie AssurePay ASP.NET 10 van 11 MSXML2.IXMLDOMNode node = domdoc.documentelement.selectnodes("//getbankenresult")[0]; int len = node.childnodes.length; banken = new string[len]; for (int i = 0; i < len; i++) banken[i] = node.childnodes[i].text; return banken; public string GetStatus(string transaction) string msg = "<GetStatus xmlns=\"http://tempuri.org/\">"; msg += "<gebruiker>" + user + "</gebruiker>"; msg += "<wachtwoord>" + password + "</wachtwoord>"; msg += "<transaction>" + transaction + "</transaction>"; msg += "</GetStatus>"; if (!send(msg)) return domdoc.documentelement.selectnodes("//getstatusresult")[0].text; public string GetTransaction(string transaction, out string stamp, out string amount, out string account, out string name, out string city, out string purchaseid, out string description, out string message) stamp = amount = account = name = city = purchaseid = description = message = ""; string msg = "<GetTransaction xmlns=\"http://tempuri.org/\">"; msg += "<gebruiker>" + user + "</gebruiker>"; msg += "<wachtwoord>" + password + "</wachtwoord>"; msg += "<transaction>" + transaction + "</transaction>"; msg += "</GetTransaction>"; if (!send(msg)) domdoc = new MSXML2.DOMDocument30Class(); domdoc.load(xmlhttp.responsexml); stamp = domdoc.documentelement.selectnodes("//stamp")[0].text; amount = domdoc.documentelement.selectnodes("//amount")[0].text; account = domdoc.documentelement.selectnodes("//account")[0].text; name = domdoc.documentelement.selectnodes("//name")[0].text; city = domdoc.documentelement.selectnodes("//city")[0].text; purchaseid = domdoc.documentelement.selectnodes("//purchaseid")[0].text; description = domdoc.documentelement.selectnodes("//description")[0].text; message = domdoc.documentelement.selectnodes("//message")[0].text; return domdoc.documentelement.selectnodes("//gettransactionresult")[0].text; public string GetURL(string bank, long bedrag, string kenmerk, string omschrijving, string returnurl, string entrance) string msg = "<GetURL xmlns=\"http://tempuri.org/\">";

Implementatie AssurePay ASP.NET 11 van 11 msg += "<gebruiker>" + user + "</gebruiker>"; msg += "<wachtwoord>" + password + "</wachtwoord>"; msg += "<bank>" + bank + "</bank>"; msg += "<bedrag>" + bedrag + "</bedrag>"; msg += "<kenmerk>" + kenmerk + "</kenmerk>"; msg += "<omschrijving>" + omschrijving + "</omschrijving>"; msg += "<returnurl>" + returnurl + "</returnurl>"; msg += "<entrance>" + entrance + "</entrance>"; msg += "</GetURL>"; if (!send(msg)) return domdoc.documentelement.selectnodes("//geturlresult")[0].text; public string GetURL2(string bank, long bedrag, string kenmerk, string omschrijving, string returnurl, string entrance, out string txid) txid = ""; string msg = "<GetURL2 xmlns=\"http://tempuri.org/\">"; msg += "<gebruiker>" + user + "</gebruiker>"; msg += "<wachtwoord>" + password + "</wachtwoord>"; msg += "<bank>" + bank + "</bank>"; msg += "<bedrag>" + bedrag + "</bedrag>"; msg += "<kenmerk>" + kenmerk + "</kenmerk>"; msg += "<omschrijving>" + omschrijving + "</omschrijving>"; msg += "<returnurl>" + returnurl + "</returnurl>"; msg += "<entrance>" + entrance + "</entrance>"; msg += "</GetURL2>"; if (!send(msg)) txid = domdoc.documentelement.selectnodes("//txid")[0].text; return domdoc.documentelement.selectnodes("//geturl2result")[0].text; Een andere mogelijkheid, voor Classic ASP, om met de gateway van Assure Pay te koppelen is de REST methode.