Preauthorization Payment Integration
Note
Not all acquirers/payment brands support preauthorization and capture. Before implementing, check with your account manager if supported in your account.
To initiate a preauthorization transaction, send the following request header and body parameters via POST.
POST/preauthorization
Send the payment for the transaction
HEADER PARAMETERS
Content-Type
optional
string
Default content type of the API.
Authorization
required
string
Unique identifier of the integrator.
Content-Type
optional
string
Default content type of the API.
Authorization
required
string
Unique identifier of the integrator.
REQUEST BODY SCHEMA: application/json
payload
required
string
Generated JSON Web Token (JWT) from transaction data signed with integrator's secret using HS256 algorithm.
Secret
issued key used for signing the payload data
Transaction Data
is a JSON-formatted data as shown below
payload
required
string
Generated JSON Web Token (JWT) from transaction data signed with integrator's secret using HS256 algorithm.
Secret
issued key used for signing the payload data
Transaction Data
is a JSON-formatted data as shown below
{
"data":{
"credit_card":{
"card_holder_name":"Abel Maclead",
"number":"0000000000000000",
"expiration_month":"00",
"expiration_year":"00",
"cvv":"000"
},
"customer":{
"first_name":"Abel",
"last_name":"Maclead",
"billing_address":{
"line1":"#88",
"line2":"Boston Ave",
"city_municipality":"Philadelphia",
"zip":"19132",
"state_province_region":"PA",
"country_code":"US"
},
"shipping_address":{
"line1":"#88",
"line2":"Boston Ave",
"city_municipality":"Philadelphia",
"zip":"19132",
"state_province_region":"PA",
"country_code":"US"
},
"contact":{
"email":"amaclead@domain.com",
"mobile":"+1415552671"
}
},
"payment":{
"description":"Payment for a product",
"amount":1000.50,
"currency":"USD",
"option":"{generatedOptionKey}",
"merchant_reference_id":"INV-100001_TEST",
"other_references":[
"REF1", "REF2"
]
},
"route":{
"callback_url":"https://tlpe.io/thankyou",
"notify_user":true
},
"3d_secure":{
"device":{
"timezone":"+0000",
"browser_color_depth":"24",
"browser_language":"en-GB",
"browser_screen_height":"1080",
"browser_screen_width":"1920",
"os":"windows",
"browser_accept_header":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*",
"user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36",
"browser_javascript_enabled":false,
"browser_java_enabled":false,
"accept_content":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3"
}
},
"time_offset":"+08:00",
"customer_ip_address":"0.0.0.0"
}
}
See API Reference > Transaction Body Payload Data for a guided requirement.
Info
For option parameter value, get the generated code from Get Payment Options endpoint response.
For 3DS transaction, page will be redirected to the callback URL set in the payload
where a URL parameter transaction_id will be appended.
Example:
https://tlpe.io/thankyou?transaction_id={transactionId}
Request Samples
curl
-X POST "https://test-api.tlpe.io/preauthorization" \
-H "Content-Type: application/json" \
-H "Authorization: {integratorToken}" \
-d "{
"payload": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
eyJkYXRhIjp7ImN1c3RvbWVyIjp7ImZpcnN0X25hbWUiOiJ7
Zmlyc3ROYW1lfSIsImxhc3RfbmFtZSI6IntsYXN0TmFtZX0i
LCJiaWxsaW5nX2FkZHJlc3MiOnsibGluZTEiOiJ7YWRkcmVz
c0xpbmUxfSIsImxpbmUyIjoie2FkZHJlc3NMaW5lMn0iLCJj
aXR5X211bmljaXBhbGl0eSI6IntjaXR5fSIsInppcCI6Int6
aXBDb2RlfSIsInN0YXRlX3Byb3ZpbmNlX3JlZ2lvbiI6Intz
dGF0ZX0iLCJjb3VudHJ5X2NvZGUiOiJ7Y291bnRyeUNvZGV9
In0sInNoaXBwaW5nX2FkZHJlc3MiOnsibGluZTEiOiJ7YWRk
cmVzc0xpbmUxfSIsImxpbmUyIjoie2FkZHJlc3NMaW5lMn0i
LCJjaXR5X211bmljaXBhbGl0eSI6IntjaXR5fSIsInppcCI6
Int6aXBDb2RlfSIsInN0YXRlX3Byb3ZpbmNlX3JlZ2lvbiI6
IntzdGF0ZX0iLCJjb3VudHJ5X2NvZGUiOiJ7Y291bnRyeUNv
ZGV9In0sImNvbnRhY3QiOnsiZW1haWwiOiJ7ZW1haWxBZGRy
ZXNzfSIsIm1vYmlsZSI6Inttb2JpbGVOdW1iZXJ9In19LCJw
YXltZW50Ijp7ImRlc2NyaXB0aW9uIjoie3RyYW5zYWN0aW9u
RGVzY3JpcHRpb259IiwiYW1vdW50IjoxMDAsImN1cnJlbmN5
Ijoie2N1cnJlbmN5Q29kZX0iLCJvcHRpb24iOiJ7Z2VuZXJh
dGVkT3B0aW9uS2V5fSIsIm1lcmNoYW50X3JlZmVyZW5jZV9p
ZCI6IntyZWZlcmVuY2V9Iiwib3RoZXJfcmVmZXJlbmNlcyI6
WyJ7cmVmZXJlbmNlMX0iLCJ7cmVmZXJlbmNlMn0iXX0sInJv
dXRlIjp7ImNhbGxiYWNrX3VybCI6IntjYWxsYmFja1VybH0i
LCJub3RpZnlfdXNlciI6dHJ1ZX19fQ.21qPOEoXodlV_pmMe
_7xvuH9QGLnyIcq0nmnj_8fwAc"
}"
public Dictionary<string, dynamic> Preauthorization()
{
Dictionary<string, dynamic> responseData;
string payload = "{\"payload\":\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImNyZWRpdF9jYXJkIjp7ImNhcmRfaG9sZGVyX25hbWUiOiJWYWx1ZWQgQ3VzdG9tZXIiLCJudW1iZXIiOiI0MTExMTExMTExMTExMTExIiwiZXhwaXJhdGlvbl9tb250aCI6IjEyIiwiZXhwaXJhdGlvbl95ZWFyIjoiMjIiLCJjdnYiOiIxMjMifSwiY3VzdG9tZXIiOnsiZmlyc3RfbmFtZSI6Ikp1YW4iLCJsYXN0X25hbWUiOiJEZWxhIENydXoiLCJiaWxsaW5nX2FkZHJlc3MiOnsibGluZTEiOiI5MDUgVmljZW50ZSBNYWRyaWdhbCIsImxpbmUyIjoiNjc5MyBBeWFsYSBBdmVudWUiLCJjaXR5X211bmljaXBhbGl0eSI6Ik1ha2F0aSBDaXR5IiwiemlwIjoiMTIyNiIsInN0YXRlX3Byb3ZpbmNlX3JlZ2lvbiI6Ik1ldHJvIE1hbmlsYSIsImNvdW50cnlfY29kZSI6IlBIIn0sInNoaXBwaW5nX2FkZHJlc3MiOnsibGluZTEiOiI5MDUgVmljZW50ZSBNYWRyaWdhbCIsImxpbmUyIjoiNjc5MyBBeWFsYSBBdmVudWUiLCJjaXR5X211bmljaXBhbGl0eSI6Ik1ha2F0aSBDaXR5IiwiemlwIjoiMTIyNiIsInN0YXRlX3Byb3ZpbmNlX3JlZ2lvbiI6Ik1ldHJvIE1hbmlsYSIsImNvdW50cnlfY29kZSI6IlBIIn0sImNvbnRhY3QiOnsiZW1haWwiOiJqdWFuLmRlbGFjcnV6QGFsdHBheW5ldC5jb20iLCJtb2JpbGUiOiIrNjM5MTIzNDU2Nzg5In19LCJwYXltZW50Ijp7ImRlc2NyaXB0aW9uIjoiU2FtcGxlIHRyYW5zYWN0aW9uIiwiYW1vdW50IjoxMCwiY3VycmVuY3kiOiJQSFAiLCJvcHRpb24iOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpJVXpJMU5pSjkuZXlKcGMzTWlPaUpVVEZCRklpd2ljM1ZpSWpvaVZFeFFSU0JDWVhObElGSnZkWFJsY2lCQmRYUm9aVzUwYVdOaGRHbHZiaUlzSW1GMVpDSTZJbFJNVUVVZ1FtRnpaU0JTYjNWMFpYSWlMQ0psZUhBaU9qRTJNamMzTWpFMU56SXNJbWxoZENJNk1UWXlOelUwT0RjM01pd2lhblJwSWpvaU56WTRZalZtTm1RdFlXTTNNQzAwT0RZMUxUaGxObVF0WmpSa016Wm1PV0k0TmpReUlpd2laR0YwWVNJNklqVTBNalUxTmpGaExXWTNNV1V0TkdRNVpTMDVNVFV5TFRsbE5UQTVOV1l3TldVeU5TSjkuVVk2d1ZsUnIxU0toaE15SzNxN1FWRUo3TkRBYW5wZTgzRWk1N3h0Y1o0RSIsIm1lcmNoYW50X3JlZmVyZW5jZV9pZCI6IjIwMjEwOTI5LTMifSwicm91dGUiOnsiY2FsbGJhY2tfdXJsIjoiaHR0cHM6Ly9hbHRwYXluZXQuY29tIiwibm90aWZ5X3VzZXIiOnRydWV9LCJ0aW1lX29mZnNldCI6IiswODowMCJ9fQ.dNMBNJx7oHNufLchHBTnx5tKYC2qpHLAp6RCcSUcHSA\"}";
string url = "https://test-api.tlpe.io/preauthorization";
byte[] buffer = Encoding.ASCII.GetBytes(payload);
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
request.Method = "POST";
request.Headers["Authorization"] = "{integratorToken}";
request.ContentType = "application/json";
Stream PostData = request.GetRequestStream();
PostData.Write(buffer, 0, buffer.Length);
PostData.Close();
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
StringReader sr = new StringReader(reader.ReadToEnd());
JsonReader jreader = new JsonTextReader(sr);
JsonSerializer jss = new JsonSerializer();
responseData = jss.Deserialize<Dictionary<string, dynamic>>(jreader);
reader.Close();
responseStream.Close();
}
return responseData;
}
Public Function Preauthorization() As Dictionary(Of String, Object)
Dim payload As String = "{""payload"":""eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImNyZWRpdF9jYXJkIjp7ImNhcmRfaG9sZGVyX25hbWUiOiJKb2huIERvZSIsIm51bWJlciI6IjQxMTExMTExMTExMTExMTEiLCJleHBpcmF0aW9uX21vbnRoIjoiMDEiLCJleHBpcmF0aW9uX3llYXIiOiIyMiIsImN2diI6IjEyMyJ9LCJjdXN0b21lciI6eyJmaXJzdF9uYW1lIjoiSm9obiIsImxhc3RfbmFtZSI6IkRvZSIsImJpbGxpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwic2hpcHBpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwiY29udGFjdCI6eyJlbWFpbCI6ImpvaG5kb2VAZG9tYWluLmNvbSIsIm1vYmlsZSI6Iis2MzkxMjM0NTY3ODkifX0sInBheW1lbnQiOnsiZGVzY3JpcHRpb24iOiJQYXltZW50IGZvciBhIHByb2R1Y3QiLCJhbW91bnQiOjEwMDAuNSwiY3VycmVuY3kiOiJQSFAiLCJvcHRpb24iOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpJVXpJMU5pSjkuZXlKcGMzTWlPaUpVVEZCRklpd2ljM1ZpSWpvaVZFeFFSU0JDWVhObElGSnZkWFJsY2lCQmRYUm9aVzUwYVdOaGRHbHZiaUlzSW1GMVpDSTZJbFJNVUVVZ1FtRnpaU0JTYjNWMFpYSWlMQ0psZUhBaU9qRTJNamd3TkRVeU9UQXNJbWxoZENJNk1UWXlOemczTWpRNU1Dd2lhblJwSWpvaVkyWmtNall3TnprdFptUm1OQzAwWVdRM0xUazROMlF0WVdJd01tVmhZVGxpTWpjMklpd2laR0YwWVNJNklqVTBNalUxTmpGaExXWTNNV1V0TkdRNVpTMDVNVFV5TFRsbE5UQTVOV1l3TldVeU5TSjkuYWJORUd0RVpEa29kWVhlYU92MG5rMmhWbWl2MUdzZnNDaHBrbl8yRVFfQSIsIm1lcmNoYW50X3JlZmVyZW5jZV9pZCI6IklOVi0xMjMiLCJvdGhlcl9yZWZlcmVuY2VzIjpbIlJFRjEiLCJSRUYyIl19LCJyb3V0ZSI6eyJjYWxsYmFja191cmwiOiJodHRwczovL2FsdHBheW5ldC5jb20iLCJub3RpZnlfdXNlciI6dHJ1ZX0sInRpbWVfb2Zmc2V0IjoiKzA4OjAwIn19.tdtMETGcPZ2eBoNLMj2LOla2xWSvjzZ_H9kRfF47c28""}"
Dim url As String = "https://test-api.tlpe.io/preauthorization"
Dim request As WebRequest = WebRequest.Create(url)
request.Method = "POST"
request.Headers.Add("Authorization", "{integratorToken}")
request.ContentType = "application/json"
Dim byteArray As Byte() = Encoding.UTF8.GetBytes(payload)
request.ContentLength = byteArray.Length
Dim dataStream As Stream = request.GetRequestStream()
dataStream.Write(byteArray, 0, byteArray.Length)
dataStream.Close()
Dim response As WebResponse = request.GetResponse()
Dim responseStream = response.GetResponseStream()
Dim reader As New StreamReader(responseStream)
Dim responseReader As StringReader = New StringReader(reader.ReadToEnd())
Dim jreader As JsonReader = New JsonTextReader(responseReader)
reader.Close()
responseStream.Close()
response.Close()
Dim jss As New JsonSerializer()
Dim responseData As Dictionary(Of String, Object) = jss.Deserialize(Of Dictionary(Of String, Object))(jreader)
Return responseData
End Function
import http.client
import json
conn = http.client.HTTPSConnection('test-api.tlpe.io')
payload = json.dumps({'payload': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImNyZWRpdF9jYXJkIjp7ImNhcmRfaG9sZGVyX25hbWUiOiJKb2huIERvZSIsIm51bWJlciI6IjQxMTExMTExMTExMTExMTEiLCJleHBpcmF0aW9uX21vbnRoIjoiMDEiLCJleHBpcmF0aW9uX3llYXIiOiIyMiIsImN2diI6IjEyMyJ9LCJjdXN0b21lciI6eyJmaXJzdF9uYW1lIjoiSm9obiIsImxhc3RfbmFtZSI6IkRvZSIsImJpbGxpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwic2hpcHBpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwiY29udGFjdCI6eyJlbWFpbCI6ImpvaG5kb2VAZG9tYWluLmNvbSIsIm1vYmlsZSI6Iis2MzkxMjM0NTY3ODkifX0sInBheW1lbnQiOnsiZGVzY3JpcHRpb24iOiJQYXltZW50IGZvciBhIHByb2R1Y3QiLCJhbW91bnQiOjEwMDAuNSwiY3VycmVuY3kiOiJQSFAiLCJvcHRpb24iOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpJVXpJMU5pSjkuZXlKcGMzTWlPaUpVVEZCRklpd2ljM1ZpSWpvaVZFeFFSU0JDWVhObElGSnZkWFJsY2lCQmRYUm9aVzUwYVdOaGRHbHZiaUlzSW1GMVpDSTZJbFJNVUVVZ1FtRnpaU0JTYjNWMFpYSWlMQ0psZUhBaU9qRTJNamd3TkRVeU9UQXNJbWxoZENJNk1UWXlOemczTWpRNU1Dd2lhblJwSWpvaVkyWmtNall3TnprdFptUm1OQzAwWVdRM0xUazROMlF0WVdJd01tVmhZVGxpTWpjMklpd2laR0YwWVNJNklqVTBNalUxTmpGaExXWTNNV1V0TkdRNVpTMDVNVFV5TFRsbE5UQTVOV1l3TldVeU5TSjkuYWJORUd0RVpEa29kWVhlYU92MG5rMmhWbWl2MUdzZnNDaHBrbl8yRVFfQSIsIm1lcmNoYW50X3JlZmVyZW5jZV9pZCI6IklOVi0xMjMiLCJvdGhlcl9yZWZlcmVuY2VzIjpbIlJFRjEiLCJSRUYyIl19LCJyb3V0ZSI6eyJjYWxsYmFja191cmwiOiJodHRwczovL2FsdHBheW5ldC5jb20iLCJub3RpZnlfdXNlciI6dHJ1ZX0sInRpbWVfb2Zmc2V0IjoiKzA4OjAwIn19.tdtMETGcPZ2eBoNLMj2LOla2xWSvjzZ_H9kRfF47c28'})
headers = {'Content-Type': 'application/json',
'Authorization': '{integratorToken}'}
conn.request('POST', '/preauthorization', payload, headers)
res = conn.getresponse()
data = res.read()
print data.decode('utf-8'))
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://test-api.tlpe.io/preauthorization',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => '{
"payload":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImNyZWRpdF9jYXJkIjp7ImNhcmRfaG9sZGVyX25hbWUiOiJKb2huIERvZSIsIm51bWJlciI6IjQxMTExMTExMTExMTExMTEiLCJleHBpcmF0aW9uX21vbnRoIjoiMDEiLCJleHBpcmF0aW9uX3llYXIiOiIyMiIsImN2diI6IjEyMyJ9LCJjdXN0b21lciI6eyJmaXJzdF9uYW1lIjoiSm9obiIsImxhc3RfbmFtZSI6IkRvZSIsImJpbGxpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwic2hpcHBpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwiY29udGFjdCI6eyJlbWFpbCI6ImpvaG5kb2VAZG9tYWluLmNvbSIsIm1vYmlsZSI6Iis2MzkxMjM0NTY3ODkifX0sInBheW1lbnQiOnsiZGVzY3JpcHRpb24iOiJQYXltZW50IGZvciBhIHByb2R1Y3QiLCJhbW91bnQiOjEwMDAuNSwiY3VycmVuY3kiOiJQSFAiLCJvcHRpb24iOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpJVXpJMU5pSjkuZXlKcGMzTWlPaUpVVEZCRklpd2ljM1ZpSWpvaVZFeFFSU0JDWVhObElGSnZkWFJsY2lCQmRYUm9aVzUwYVdOaGRHbHZiaUlzSW1GMVpDSTZJbFJNVUVVZ1FtRnpaU0JTYjNWMFpYSWlMQ0psZUhBaU9qRTJNamd3TkRVeU9UQXNJbWxoZENJNk1UWXlOemczTWpRNU1Dd2lhblJwSWpvaVkyWmtNall3TnprdFptUm1OQzAwWVdRM0xUazROMlF0WVdJd01tVmhZVGxpTWpjMklpd2laR0YwWVNJNklqVTBNalUxTmpGaExXWTNNV1V0TkdRNVpTMDVNVFV5TFRsbE5UQTVOV1l3TldVeU5TSjkuYWJORUd0RVpEa29kWVhlYU92MG5rMmhWbWl2MUdzZnNDaHBrbl8yRVFfQSIsIm1lcmNoYW50X3JlZmVyZW5jZV9pZCI6IklOVi0xMjMiLCJvdGhlcl9yZWZlcmVuY2VzIjpbIlJFRjEiLCJSRUYyIl19LCJyb3V0ZSI6eyJjYWxsYmFja191cmwiOiJodHRwczovL2FsdHBheW5ldC5jb20iLCJub3RpZnlfdXNlciI6dHJ1ZX0sInRpbWVfb2Zmc2V0IjoiKzA4OjAwIn19.tdtMETGcPZ2eBoNLMj2LOla2xWSvjzZ_H9kRfF47c28"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: {integratorToken}'
) ,
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
require 'rest-client'
require 'json'
response = RestClient::Request.execute(
method: :post,
url: "https://test-api.tlpe.io/preauthorization",
payload: '{"payload": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImNyZWRpdF9jYXJkIjp7ImNhcmRfaG9sZGVyX25hbWUiOiJKb2huIERvZSIsIm51bWJlciI6IjQxMTExMTExMTExMTExMTEiLCJleHBpcmF0aW9uX21vbnRoIjoiMDEiLCJleHBpcmF0aW9uX3llYXIiOiIyMiIsImN2diI6IjEyMyJ9LCJjdXN0b21lciI6eyJmaXJzdF9uYW1lIjoiSm9obiIsImxhc3RfbmFtZSI6IkRvZSIsImJpbGxpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwic2hpcHBpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwiY29udGFjdCI6eyJlbWFpbCI6ImpvaG5kb2VAZG9tYWluLmNvbSIsIm1vYmlsZSI6Iis2MzkxMjM0NTY3ODkifX0sInBheW1lbnQiOnsiZGVzY3JpcHRpb24iOiJQYXltZW50IGZvciBhIHByb2R1Y3QiLCJhbW91bnQiOjEwMDAuNSwiY3VycmVuY3kiOiJQSFAiLCJvcHRpb24iOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpJVXpJMU5pSjkuZXlKcGMzTWlPaUpVVEZCRklpd2ljM1ZpSWpvaVZFeFFSU0JDWVhObElGSnZkWFJsY2lCQmRYUm9aVzUwYVdOaGRHbHZiaUlzSW1GMVpDSTZJbFJNVUVVZ1FtRnpaU0JTYjNWMFpYSWlMQ0psZUhBaU9qRTJNamd3TkRVeU9UQXNJbWxoZENJNk1UWXlOemczTWpRNU1Dd2lhblJwSWpvaVkyWmtNall3TnprdFptUm1OQzAwWVdRM0xUazROMlF0WVdJd01tVmhZVGxpTWpjMklpd2laR0YwWVNJNklqVTBNalUxTmpGaExXWTNNV1V0TkdRNVpTMDVNVFV5TFRsbE5UQTVOV1l3TldVeU5TSjkuYWJORUd0RVpEa29kWVhlYU92MG5rMmhWbWl2MUdzZnNDaHBrbl8yRVFfQSIsIm1lcmNoYW50X3JlZmVyZW5jZV9pZCI6IklOVi0xMjMiLCJvdGhlcl9yZWZlcmVuY2VzIjpbIlJFRjEiLCJSRUYyIl19LCJyb3V0ZSI6eyJjYWxsYmFja191cmwiOiJodHRwczovL2FsdHBheW5ldC5jb20iLCJub3RpZnlfdXNlciI6dHJ1ZX0sInRpbWVfb2Zmc2V0IjoiKzA4OjAwIn19.tdtMETGcPZ2eBoNLMj2LOla2xWSvjzZ_H9kRfF47c28"}',
headers: { authorization: '{integratorToken}', content_type: 'application/json', accept: 'application/json'}
)
responseJson = JSON.parse(response)
puts JSON.pretty_generate(responseJson)
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://test-api.tlpe.io/preauthorization',
'headers': {
'Content-Type': 'application/json',
'Authorization': '{integratorToken}'
},
body: JSON.stringify({
"payload": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImNyZWRpdF9jYXJkIjp7ImNhcmRfaG9sZGVyX25hbWUiOiJKb2huIERvZSIsIm51bWJlciI6IjQxMTExMTExMTExMTExMTEiLCJleHBpcmF0aW9uX21vbnRoIjoiMDEiLCJleHBpcmF0aW9uX3llYXIiOiIyMiIsImN2diI6IjEyMyJ9LCJjdXN0b21lciI6eyJmaXJzdF9uYW1lIjoiSm9obiIsImxhc3RfbmFtZSI6IkRvZSIsImJpbGxpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwic2hpcHBpbmdfYWRkcmVzcyI6eyJsaW5lMSI6IlZpY2VudGUgTWFkcmlnYWwgQnVpbGRpbmciLCJsaW5lMiI6IkF5YWxhIEF2ZW51ZSIsImNpdHlfbXVuaWNpcGFsaXR5IjoiTWFrYXRpIENpdHkiLCJ6aXAiOiIxMjM0Iiwic3RhdGVfcHJvdmluY2VfcmVnaW9uIjoiTWV0cm8gTWFuaWxhIiwiY291bnRyeV9jb2RlIjoiUEgifSwiY29udGFjdCI6eyJlbWFpbCI6ImpvaG5kb2VAZG9tYWluLmNvbSIsIm1vYmlsZSI6Iis2MzkxMjM0NTY3ODkifX0sInBheW1lbnQiOnsiZGVzY3JpcHRpb24iOiJQYXltZW50IGZvciBhIHByb2R1Y3QiLCJhbW91bnQiOjEwMDAuNSwiY3VycmVuY3kiOiJQSFAiLCJvcHRpb24iOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpJVXpJMU5pSjkuZXlKcGMzTWlPaUpVVEZCRklpd2ljM1ZpSWpvaVZFeFFSU0JDWVhObElGSnZkWFJsY2lCQmRYUm9aVzUwYVdOaGRHbHZiaUlzSW1GMVpDSTZJbFJNVUVVZ1FtRnpaU0JTYjNWMFpYSWlMQ0psZUhBaU9qRTJNamd3TkRVeU9UQXNJbWxoZENJNk1UWXlOemczTWpRNU1Dd2lhblJwSWpvaVkyWmtNall3TnprdFptUm1OQzAwWVdRM0xUazROMlF0WVdJd01tVmhZVGxpTWpjMklpd2laR0YwWVNJNklqVTBNalUxTmpGaExXWTNNV1V0TkdRNVpTMDVNVFV5TFRsbE5UQTVOV1l3TldVeU5TSjkuYWJORUd0RVpEa29kWVhlYU92MG5rMmhWbWl2MUdzZnNDaHBrbl8yRVFfQSIsIm1lcmNoYW50X3JlZmVyZW5jZV9pZCI6IklOVi0xMjMiLCJvdGhlcl9yZWZlcmVuY2VzIjpbIlJFRjEiLCJSRUYyIl19LCJyb3V0ZSI6eyJjYWxsYmFja191cmwiOiJodHRwczovL2FsdHBheW5ldC5jb20iLCJub3RpZnlfdXNlciI6dHJ1ZX0sInRpbWVfb2Zmc2V0IjoiKzA4OjAwIn19.tdtMETGcPZ2eBoNLMj2LOla2xWSvjzZ_H9kRfF47c28"
})
};
request(options, function(error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
200 Successful Response - Non-3DS
RESPONSE SCHEMA: application/json
timestamp
string
Transaction timestamp
status
string
HTTP status code
message
string
HTTP status code message/description
path
string
Endpoint path used for the transaction
data
object
Contains transaction-related response
transaction_id
string
Payment reference number of the transaction
status_code
string
API status code
status_description
string
API status code message/description
200 Successful Response - 3DS
RESPONSE SCHEMA: application/json
timestamp
string
Transaction timestamp
status
string
HTTP status code
message
string
HTTP status code message/description
path
string
Endpoint path used for the transaction
data
object
Contains transaction-related response
transaction_id
string
Payment reference number of the transaction
status_code
string
API status code
status_description
string
API status code message/description
redirect_url
string
Payment URL of the transaction
422 Erroneous Response
RESPONSE SCHEMA: application/json
timestamp
string
Transaction timestamp
status
string
HTTP status code
message
string
HTTP status code message/description
path
string
Endpoint path used for the transaction
data
object
Contains transaction-related response
status_code
string
API status code
status_description
string
API status code message/description
Response Samples
{
"timestamp":"2020-07-14T09:29:03.806+0000",
"status":200,
"message":"Request processed successfully",
"path":"/preauthorization",
"data":{
"transaction_id":"{transactionId}",
"status_code":"OK.08.00",
"status_description":"Preauthorization successful"
}
}
{
"timestamp":"2020-07-14T09:29:03.806+0000",
"status":200,
"message":"Request processed successfully",
"path":"/preauthorization",
"data":{
"transaction_id":"{transactionId}",
"status_description":"Preauthorization pending",
"status_code":"OK.08.10",
"redirect_url":"{redirectURL}"
}
}
{
"timestamp":"2020-07-14T09:29:49.843+0000",
"status":422,
"messages":"Preauthorization failed",
"path":"/preauthorization",
"data":{
"status_code":"ER.40.00",
"status_description":"Preauthorization failed"
}
}
See API Reference > Response Messages for a guided reference.