In dit document staat beschreven hoe u een Premium SMS betaling afhandelt via TargetPay door gebruik te maken van onze API (technische koppeling). Om hiermee aan de slag te kunnen heeft u technische kennis nodig. Heeft u zelf geen technische kennis en ook geen programmeur om u hiermee te helpen, kijk dan bij de kant-en-klaar modules.
1.1 Opmerking vooraf
Om de integratie voor u gemakkelijk te maken hebben we voor PHP 5 (en hoger) een aantal voorbeeld classes ontwikkeld. Hiermee integreert u alle betaalwijzen van TargetPay zeer eenvoudig in uw website. U hoeft de bestanden alleen maar te uploaden op uw server. Een uitgebreide handleiding is bijgesloten in het ZIP bestand.
U downloadt het pakket via de volgende link: TargetPayExampleClasses.zip
1.2 Werking van de API in een notedop
Afrekenen met de SMS Pincode variant werkt als volgt:
- U vraagt aan uw bezoeker een bepaald keyword per SMS te sturen naar de shortcode van TargetPay (zie punt 2). Elk keyword vertegenwoordigt een vaste prijs.
Voor een overzicht met alle beschikbare keywords/shortcodes en de bijbehorende prijzen kijkt u bij het tabblad keywords;
- Uw bezoeker ontvangt per SMS een pincode;
- Uw bezoeker vult de pincode in op uw site, onder punt 3 staat beschreven hoe u de pincode kunt verifiëren bij TargetPay;
- Bij een succesvolle betaling kunt u de gekozen dienst leveren aan uw bezoeker.
U toont de bezoeker een betaalscherm met de volgende informatie:
- Keyword (Bijv. BETAAL AA);
- Shortcode, het 4-cijferige nummer waar de sms naartoe gestuurd moet worden (Bijv. 3010);
- Valuta en bedrag;
- Extra regel voor Australie => het lokale support nummer moet vermeld worden "1800-246803"
Naast deze informatie vraagt u de bezoeker om de ontvangen pincode in te voeren op uw website en dan op de knop 'verder' te klikken.
Voorbeeld
Om de betaling te controleren roept u de volgende URL aan met behulp van een HTTP GET of POST:
https://www.targetpay.com/api/sms-pincode
Met de volgende parameters:
Variabele |
Naam |
Formaat |
Verplicht |
rtlo |
Layoutcode |
Numeriek |
Ja |
code |
Door de gebruiker ingevoerde pincode |
Numeriek |
Ja |
keyword |
Gebruikt keyword |
Alfanumeriek |
Ja |
shortcode |
Gebruikte shortcode |
Numeriek |
Ja |
country |
Land |
Numeriek |
Ja |
test |
Testmode |
0 of 1 |
Nee |
Voorbeeld:
https://www.targetpay.com/api/sms-pincode?rtlo=17894&code=123456&keyword=BETAAL+AA&shortcode=3010&country=31
Toelichting per variabele:
- rtlo
Het subaccount waarop de verkopen geboekt moeten worden. Voor het aanleggen en bekijken van subaccounts, zie: www.targetpay.com/subaccounts.
- code
De 6-cijferige pincode die uw bezoeker heeft ingevuld op de site.
- keyword
Het keyword dat staat voor het bedrag dat afgerekend moet worden.
- shortcode
De shortcode waarnaar het keyword verstuurd werd (bijv. 3010 in Nederland).
- country
Het land van uw bezoeker: 31=Nederland .
- test
Als u de waarde 1 meegeeft voor 'test' dan worden alle checks doorlopen, maar zal altijd een OK status terugkomen, ook als de pincode al ingewisseld of niet uitgegeven is. U kunt deze parameter gebruiken om uw scripts te testen
Indien de betaling goed verwerkt is, dan wordt de volgende tekst geretourneerd:
000 OK
Bij deze stap wordt ook vastgesteld of het juiste bedrag betaald is. Wanneer de consument het verkeerde bedrag (dus bijvoorbeeld BETAAL BA voor € 2,85 in plaats van BETAAL BC voor € 2,95) heeft gestuurd per SMS dan zal nooit een status '000 OK' teruggegeven worden!
Indien de betaling niet goed verwerkt is, dan wordt een van de volgende foutcodes teruggestuurd:
102 No layout code specified
103 No pincode specified
104 Pincode length incorrect
105 Internal Error: no connection to SMS gateway
106 Pincode already checked or not paid
107 Layoutcode unknown
108 No keyword specified
109 No country specified
110 No shortcode specified
111 Service is not approved yet. More info at www.targetpay.com/info/smsapproval
- De duurste SMS wordt als laatste verstuurd. Bijvoorbeeld het innen van € 1,75 zal gaan in deze volgorde: 1x € 0,25 daarna 1x € 1,50
- U kunt in een script meerdere pincodes tegelijk verwerken, en op die manier veelvouden van tarieven afrekenen. U doet dan per pincode een aanroep zoals hierboven beschreven.
- Uitgegeven pincodes zijn ca. 24 uur geldig.
|
Het onderstaande script kunt u gebruiken om pincodes te valideren. De variabelen bovenin de functie validatePincode() dienen nog op de juiste waarde te worden ingesteld.
<?php
function validatePincode($code){
// Stel deze parameters in
$rtlo = "xxxxx"; // Uw layoutcode
$keyword="BETAAL+AA"; // Uw Keyword + subkeyword BETAAL AA
$shortcode="3010"; // Shortcode
$co= "31"; // Countrycode, 31=NL, 32=BE
$test="0";
$sRequest="http://www.targetpay.com/api/sms-pincode";
$strParamString = "?rtlo=".$rtlo."&keyword=".$keyword.
"&code=".$code."&shortcode=".$shortcode."&country=".$co.
"&test=".$test;
# get request
$ch = curl_init($sRequest.$strParamString);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1) ;
$strResponse = curl_exec($ch);
curl_close($ch);
return $strResponse;
}
if( $_GET['pincode'] ){
$strResponse = validatePincode( $_GET['pincode'] );
echo $strResponse; // 000 OK indien succesvol
} else {
echo "<FORM method=\"GET\" >";
echo "<input type=\"text\" name=\"pincode\">";
echo "<input type=\"submit\">";
echo "</form>";
}
?>
|