Betalingsmodul
Betalingsmodul
 
 

Betalingsmodul

Spørgsmål:

Remote Capture

Svar:

Dette script giver mulighed for at ekspedere / afvise ordre på betalingsserveren vha. et .ASP eller VB script. ASP Scriptet består af 2 filer: capture.html og remoteCapture.asp.
Vi anbefaler at du har grundlæggende kendskab til .ASP før du benytter scriptet.

Hvis ordren er ekspederet eller afvist korrekt, returnere remotecapture.asp intet. Hvis der opstår fejl i processen, returneres fejlkoden fra PBS.

Download eks.: remotecapture_asp.zip
Download eks.: remotecapture_vbs.zip

Nedenstående vises eksemplet remotecapture_asp:


Eksempel for capture.html:

<html>
<head><title>Capture.html</title></head>
<body>
<table width=400>
<tr>
<td colspan=2><b>Indtast dine data her:</b><hr></td>
</tr>
<tr>
<td>Brugernavn:</td>
<td><input name=payuser></td>
</tr>
<tr>
<td>password:</td>
<td><input name=password></td>
</tr>
<tr>
<td>order nr:</td>
<td><input name=order></td>
</tr>
<tr>
<td>Afvis/ekspeder:</td>
<td><select name=todo> <option value="capture" selected>Ekspeder<option value="cancel">Afvis</td>
<td><input type=submit value="Udfør"></td>
</tr>
</table>
</body>
</head>

 

Eksempel for reomtecapture.asp på direkte beløb:
<%
payUsername = trim(request("payuser"))
payPassword = trim(request("password"))
oid = trim(request("order"))
todo = trim(request("todo"))

Const payTimeout = 15 'sec

Function RegExpGet(pattern, txt)
On Error Resume Next

Dim regEx
Dim Match
Dim Matches
Dim n : n = ""

txt = REPLACE(txt,vbCrlf," ")
txt = REPLACE(txt,Chr(10)," ")

Set regEx = New RegExp
regEx.Global = True
regEx.IgnoreCase = True
regEx.Pattern = pattern
Set Matches = regEx.Execute(txt)

IF Matches.Count > 0 THEN
For Each Match in Matches
n = Match.SubMatches(0)
Exit For
Next
END IF Set regEx = Nothing

RegExpGet = n
End Function '

*******************

' job = capture/cancel
' oid = Order ID.
'
' url = https://pay.scannet.dk/shop/ordre.aml?Ordre= &Nummer= &
'
' Example: ' https://pay.scannet.dk/shop/ordre.aml?Ordre=36297&Nummer=36297&approveorder=1&Ekspeder=1
' *******************
Function SendToPay(job, oid)
On Error Resume Next

Dim payQuery : payQuery = ""
Select Case LCase(job)
Case "capture"
payQuery = "&approveorder=1&Ekspeder=1"
Case "cancel"
payQuery = "&declineorder=1&Afvis=1"
End Select

Dim h
Set h = Server.CreateObject("Msxml2.ServerXMLHTTP.3.0")
h.Open "GET", "https://pay.scannet.dk/shop/ordre.aml?Nummer=" & oid & "&Ordre=" & oid & payQuery, false, payUsername, payPassword
h.SetTimeouts (payTimeout*1000), (payTimeout*1000), (payTimeout*1000), (payTimeout*1000)
h.Send()
IF Err.Number = 0 THEN
SendToPay = RegExpGet("ActionCode=([0-9]+)", h.responseText)
END IF
Set h = Nothing
End Function
%>
<strong>Hæv penge:</strong><br>
Retur kode: <%=SendToPay(todo,oid)%>



Hvordan ville du karakteriserer dette indhold (hvor 5 er bedst)?


Senest opdateret: 10-08-2009, 10:17.
A/S ScanNet - Birkemose Allé 11 - 6000 Kolding - Tlf. (+45) 75 53 35 00 - Fax (+45) 75 53 35 09 - scannet@scannet.dk