Bygg en betaltjänst till din webbshop
Förord
Kom igång
Du måste teckna ett PSP konto med
Betalväxeln/PSP är ett företag som tillhandahåller betalningslösningar för handel på Internet.
Enkelt sagt motsvarar en Betalväxel/PSP kortterminalen i en fysisk butik,
dvs. den tekniska plattformen för betalningen.
Betalväxeln/PSP erbjuder olika typer av betalningslösningar som konsumenten kan betala med och även hela butikslösningar. Som Internetbutik räcker det med en uppkoppling mot ett betalväxelföretag för att få tillgång till alla tjänsterna.
Butiken bestämmer vilken betalväxel/PSP man vill skriva avtal med och när det är klart kontaktar betalväxeln/PSP banken för eventuellt avtal.
Innan du börjar bygga behöver du veta vilken typ av betalservice du vill ha. Det finns flera olika alternativ och prisklasser, allt är beror på antal transaktioner och snittnota. TellusPay Micro lämpar sig för dig som inte vill ha någon fast kostnad och endast vill betala per transaktion. TellusPay Basic / Web lämpar sig för dig som har > 5 transaktioner / vecka eller vill betala lägre transaktionsavgifter (c:a 5 kr / transaktion). TellusPay Server är för dig som inte vill skicka vidare köparen till TellusPay för auktorisation. Med server modellen kan du själv auktorisera kortköpen i egen miljö. Ett krav för att göra detta är dock en 128bit SSL kryptering som kan tillhandahållas av TellusPay.
TellusPay [Micro / Basic / Web]
Denna modell av betallösningen "skickar" köparen till en SSL säkrad sida där han / hon kan slutföra betalningen.För att implementera dessa modeller med ASP på en Windows server kan koden se ut såhär.
On Error Resume Next
Redemption = "0000000"
TransID = "0000"
Data = "1:Testorder:1:1000"
TransactionType = "1"
ISOLanguage = "SE"
ISOCurrency = "752"
DirectCapture = "1"
Set objHTTP = Server.CreateObject("Microsoft.XMLHTTP")
objHTTP.Open "GET", "https://secure.telluspay.com/WebOrder/add/?TP01="& DirectCapture &"&TP700="& Redemption &"&TP701=" & TransID &"&TP740="& Data &"&TP901="& TransactionType &"&TP491="& ISOLanguage &"&TP490="& ISOCurrency, False
objHTTP.Send
strHTML = objHTTP.responseText
Set objHTTP = Nothing
If err.number = 0 then
response.redirect "https://secure.telluspay.com/WebOrder/?"& Trim(strHTML)
Else
Response.Write "Allmänt fel!
" & err.description
End If
Förklaring till datafält
Redemption
Kundnummer hos TellusPay
TransID
Butiken / säljföretagets unika ordernummer. Detta nummer används för att identifiera köpet gentemot en lagd order.
Data
Beskrivning av vad som köps enl. följande:
<ArtikelNummer>:<Beskrivning>:<Antal>:<Pris i ören>. Flera produkter separeras med "," tex:
1:Glasspinne:1:1000,2:Penna:1:500
ISOLanguage och ISOCurrency
ISOLanguage anger språk på siten enligt iso "SE" = Svenska, "US" = Engelska
ISOCurrency anger valutakoden 752 = SEK, 840 = USD, 978 = EUR etc.
DirectCapture
Anger om beloppet skall dras direkt eller om det bara ska reserveras på köparens konto för att dras när varan levereras.
Återrapportering [Micro / Basic / Web]
När auktorisationen är genomförd kommer kunden skickas tillbaka till en förinställd URL hos dig. Systemet gör då även en återrapportering av köpet till en av dig förinställd URL: ett exempel kan vara:
http://minserver.se/payment/PayStatus.asp?OrderNo=234&ResponseCode=00&InvoiceID=3774766
Det man måste tänka på är att låsa IP adressen för återrapporteringen till 62.119.134.70 eller secure.telluspay.com
Svarskoder
Nedan följer en lista på de vanligaste svarskoderna från TellusPayKod | Beskrivning |
---|---|
00 | Godkänd transaktion |
T0 | Godkänd test-transaktion |
01 | Ring för auktorisation (endast fysiska betalningar) |
05 | Köpet nekades av banken |
14 | Okänt kortnummer |
33 | Kortet har utgått (expire) |
36 | Spärrat kort |
X1 | Felaktigt kundnummer (TellusPayID ej hittad) |
X5 | Ej tillåten valuta |
V0 | Återköp / Kreditering OK |
E1 | Ingen kontakt med banken |
Händelseförlopp
TellusPay Server [COM+ / XML]
För att implementera denna modell med ASP på en Windows server krävs en programvara från TellusPay. Såhär ser det ut när man anropar programvaran via API.
Set TellusPay = Server.CreateObject("TellusPay.TransGate")
TellusPay.TellusPayID = "00000000"
TellusPay.TerminalID = "000000000000"
TellusPay.Amount = "100"
TellusPay.CardData = "4111111111111111=0506"
TellusPay.CurrencyCode = "752"
TellusPay.CVV2 = "975"
TellusPay.IP = "192.0.0.1"
TellusPay.OrderNo = "OURORDER3772663"
TellusPay.PersonalNumber = "0000000000"
TellusPay.ProcessingCode = "000000"
TellusPay.DirectCapture = "1"
TPBuffer = TellusPay.Authorize
Set TellusPay = Nothing
ResponseFromBank = Split(TPBuffer,",")
Response.Write "Response Code: " & ResponseFromBank(0) & "
"
Response.Write "AuthNumber: " & ResponseFromBank(1) & "
"
Förklaring till datafält
TellusPayID
Kundnummer hos TellusPay
TerminalID
Unikt ID för just din terminal (server)
Amount
Beloppet som skall auktoriseras (anges i lägsta valuta - ören)
CardData
Vid läst kort (magnetkort) skall hela "Track2" anges här. Vid manuellt knappad auktorisation skall kortnummer förljt av "=" och sedan giltighetsdatumet anges.
CurrencyCode
Valutakod enligt iso (752 = SEK)
CVV2
Säkerhetskoden på kortet (CVV2) anges i detta fält, vid 3D-Secure transaktioner anges CAVV värdet här.
IP
Köparens identifierade IP adress anges här.
OrderNo
Butiken / säljföretagets unika ordernummer. Detta nummer används för att identifiera köpet gentemot en lagd order.
PersonalNumber
Personnummer (endast vid POS försäljning - i fysisk butik)
ProcessingCode
Anger hur transaktionen skall processas om det skall vara ex: köp, kontroll, spärr, uttag, insättning, kreditering etc.
DirectCapture
Anger om beloppet skall dras direkt eller om det bara ska reserveras på köparens konto för att dras när varan levereras.
Alternativa betalningsvägar
Utöver kreditkortsbetalning finns även sk. direktbetalning mot internetbank (dosa eller koder), Verified by Visa (3D-Secure med garanterade betalningar), Telefonbetalningar (0900-nummer), Premium SMS betalningar, Faktureringslösningar. Det finns även online kreditupplysningar och logistik inplementeringar från Posten, UPS och DHL. Allt anropas på liknande sätt som beskrivs i denna artikel. Det kommer fler artiklar som beskriver tjästerna närmre inom en snar framtid.
Kontakta TellusPay
Kontakta TellusPay för ett nytt konto enligt nedan:Samport Technologies AB
Trade Center, Box 830
SE-301 18 HALMSTAD
Tel.vxl: 035-182060
E-post: kundtjanst@samport.se
http://www.samport.se
http://www.telluspay.se
Pelle Johansson
Jag rekommenderar denna tjänst framför de andra jag tidigare testat. Dels för dess dynamiska egenskaper men även för möjligheter till återrapportering, säkerhet och flexibilitet. Sen stöds alla betaltyper som en webbägare kan tänkas behöva.
Jonas Boman
Jag har precis satt upp en webbshop med samma kod. Exempler från Samport själva. Här är det bra mycket bättre förklarat dock.