Tcl
Tcl
Adyen Create Payment Session
See more Adyen Examples
Creates an Adyen payment session.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
set http [new_CkHttp]
# 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"
# }
set json [new_CkJsonObject]
CkJsonObject_UpdateString $json "merchantAccount" "YourMerchantAccount"
CkJsonObject_UpdateString $json "sdkVersion" "1.9.7"
CkJsonObject_UpdateString $json "channel" "Web"
CkJsonObject_UpdateString $json "amount.currency" "EUR"
CkJsonObject_UpdateInt $json "amount.value" 17408
CkJsonObject_UpdateString $json "reference" "Your order number"
CkJsonObject_UpdateString $json "countryCode" "NL"
CkJsonObject_UpdateString $json "shopperLocale" "nl_NL"
CkJsonObject_UpdateString $json "origin" "https://www.yourshop.com"
CkJsonObject_UpdateString $json "returnUrl" "https://www.yourshop.com/checkout/completed"
CkHttp_SetRequestHeader $http "X-API-Key" "YourAPIkey"
set resp [new_CkHttpResponse]
set success [CkHttp_HttpJson $http "POST" "https://checkout-test.adyen.com/v41/paymentSession" $json "application/json" $resp]
if {$success == 0} then {
puts [CkHttp_lastErrorText $http]
delete_CkHttp $http
delete_CkJsonObject $json
delete_CkHttpResponse $resp
exit
}
set sbResponseBody [new_CkStringBuilder]
CkHttpResponse_GetBodySb $resp $sbResponseBody
set jResp [new_CkJsonObject]
CkJsonObject_LoadSb $jResp $sbResponseBody
CkJsonObject_put_EmitCompact $jResp 0
set respStatusCode [CkHttpResponse_get_StatusCode $resp]
puts "Status Code = $respStatusCode"
puts "Response Body:"
puts [CkJsonObject_emit $jResp]
if {$respStatusCode >= 400} then {
puts "Response Header:"
puts [CkHttpResponse_header $resp]
puts "Failed."
delete_CkHttp $http
delete_CkJsonObject $json
delete_CkHttpResponse $resp
delete_CkStringBuilder $sbResponseBody
delete_CkJsonObject $jResp
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
set paymentSession [CkJsonObject_stringOf $jResp "paymentSession"]
delete_CkHttp $http
delete_CkJsonObject $json
delete_CkHttpResponse $resp
delete_CkStringBuilder $sbResponseBody
delete_CkJsonObject $jResp