Sample code for 30+ languages & platforms
Perl Requires Chilkat v11.0.0+

Adyen Create Payment Session

See more Adyen Examples

Creates an Adyen payment session.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

$http = chilkat::CkHttp->new();

#  Use this online tool to generate the code from sample JSON:
#  Generate Code to Create JSON

#  The following JSON is sent in the request body, and is constructed by the code that follows.

#  {
#    "merchantAccount": "YourMerchantAccount",
#    "sdkVersion": "1.9.7",
#    "channel": "Web",
#    "amount": {
#      "currency": "EUR",
#      "value": 17408
#    },
#    "reference": "Your order number",
#    "countryCode": "NL",
#    "shopperLocale": "nl_NL",
#    "origin": "https://www.yourshop.com",
#    "returnUrl": "https://www.yourshop.com/checkout/completed"
#  }
$json = chilkat::CkJsonObject->new();
$json->UpdateString("merchantAccount","YourMerchantAccount");
$json->UpdateString("sdkVersion","1.9.7");
$json->UpdateString("channel","Web");
$json->UpdateString("amount.currency","EUR");
$json->UpdateInt("amount.value",17408);
$json->UpdateString("reference","Your order number");
$json->UpdateString("countryCode","NL");
$json->UpdateString("shopperLocale","nl_NL");
$json->UpdateString("origin","https://www.yourshop.com");
$json->UpdateString("returnUrl","https://www.yourshop.com/checkout/completed");

$http->SetRequestHeader("X-API-Key","YourAPIkey");

$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpJson("POST","https://checkout-test.adyen.com/v41/paymentSession",$json,"application/json",$resp);
if ($success == 0) {
    print $http->lastErrorText() . "\r\n";
    exit;
}

$sbResponseBody = chilkat::CkStringBuilder->new();
$resp->GetBodySb($sbResponseBody);

$jResp = chilkat::CkJsonObject->new();
$jResp->LoadSb($sbResponseBody);
$jResp->put_EmitCompact(0);

$respStatusCode = $resp->get_StatusCode();
print "Status Code = " . $respStatusCode . "\r\n";
print "Response Body:" . "\r\n";
print $jResp->emit() . "\r\n";

if ($respStatusCode >= 400) {
    print "Response Header:" . "\r\n";
    print $resp->header() . "\r\n";
    print "Failed." . "\r\n";
    exit;
}

#  Sample JSON response:

#  {
#    "paymentSession": "eyJjaGVja291 ... iMS45LjcifQ=="
#  }

#  Sample code for parsing the JSON response...
#  Use the following online tool to generate parsing code from sample JSON:
#  Generate Parsing Code from JSON

$paymentSession = $jResp->stringOf("paymentSession");