Tcl
Tcl
CardConnect Create Profile
See more CardConnect Examples
Demonstrates how to create a profile.A PUT call to the profile endpoint creates a new profile or adds a new account to an existing profile. ...
See https://developer.cardconnect.com/cardconnect-api?lang=json#create-update-profile-request
Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set http [new_CkHttp]
CkHttp_put_BasicAuth $http 1
CkHttp_put_Login $http "API_USERNAME"
CkHttp_put_Password $http "API_PASSWORD"
# Build and send the following JSON:
# {
# "region": "AK",
# "phone": "7778789999",
# "accttype": "VISA",
# "postal": "19090",
# "ssnl4": "3655",
# "expiry": "0214",
# "city": "ANYTOWN",
# "country": "US",
# "address": "123 MAIN STREET",
# "merchid": "496400000840",
# "name": "TOM JONES",
# "account": "4444333322221111",
# "license": "123451254",
# }
set json [new_CkJsonObject]
CkJsonObject_UpdateString $json "region" "AK"
CkJsonObject_UpdateString $json "phone" "7778789999"
CkJsonObject_UpdateString $json "accttype" "VISA"
CkJsonObject_UpdateString $json "postal" "19090"
CkJsonObject_UpdateString $json "ssnl4" "3655"
CkJsonObject_UpdateString $json "expiry" "0214"
CkJsonObject_UpdateString $json "city" "ANYTOWN"
CkJsonObject_UpdateString $json "country" "US"
CkJsonObject_UpdateString $json "address" "123 MAIN STREET"
CkJsonObject_UpdateString $json "merchid" "MERCHANT_ID"
CkJsonObject_UpdateString $json "name" "TOM JONES"
CkJsonObject_UpdateString $json "account" "4444333322221111"
CkJsonObject_UpdateString $json "license" "123451254"
set url "https://<site>.cardconnect.com:<port>/cardconnect/rest/profile"
set resp [new_CkHttpResponse]
set success [CkHttp_HttpStr $http "PUT" $url [CkJsonObject_emit $json] "utf-8" "application/json" $resp]
if {$success == 0} then {
puts [CkHttp_lastErrorText $http]
delete_CkHttp $http
delete_CkJsonObject $json
delete_CkHttpResponse $resp
exit
}
# A response status of 200 indicates potential success. The JSON response body
# must be examined to determine if it was truly successful or an error.
puts "response status code = [CkHttpResponse_get_StatusCode $resp]"
set jsonResp [new_CkJsonObject]
CkJsonObject_Load $jsonResp [CkHttpResponse_bodyStr $resp]
CkJsonObject_put_EmitCompact $jsonResp 0
puts "response JSON:"
puts [CkJsonObject_emit $jsonResp]
# A successful response looks like this:
# {
# "country": "US",
# "address": "123 MAIN STREET",
# "resptext": "Profile Saved",
# "city": "ANYTOWN",
# "acctid": "1",
# "respcode": "09",
# "defaultacct": "Y",
# "accttype": "VISA",
# "token": "9441149619831111",
# "license": "123451254",
# "respproc": "PPS",
# "phone": "7778789999",
# "profileid": "16392957457306633141",
# "name": "TOM JONES",
# "auoptout": "N",
# "postal": "19090",
# "expiry": "0214",
# "region": "AK",
# "ssnl4": "3655",
# "respstat": "A"
# }
# Use this online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
set country [CkJsonObject_stringOf $jsonResp "country"]
set address [CkJsonObject_stringOf $jsonResp "address"]
set resptext [CkJsonObject_stringOf $jsonResp "resptext"]
set city [CkJsonObject_stringOf $jsonResp "city"]
set acctid [CkJsonObject_stringOf $jsonResp "acctid"]
set respcode [CkJsonObject_stringOf $jsonResp "respcode"]
set defaultacct [CkJsonObject_stringOf $jsonResp "defaultacct"]
set accttype [CkJsonObject_stringOf $jsonResp "accttype"]
set token [CkJsonObject_stringOf $jsonResp "token"]
set license [CkJsonObject_stringOf $jsonResp "license"]
set respproc [CkJsonObject_stringOf $jsonResp "respproc"]
set phone [CkJsonObject_stringOf $jsonResp "phone"]
set profileid [CkJsonObject_stringOf $jsonResp "profileid"]
set name [CkJsonObject_stringOf $jsonResp "name"]
set auoptout [CkJsonObject_stringOf $jsonResp "auoptout"]
set postal [CkJsonObject_stringOf $jsonResp "postal"]
set expiry [CkJsonObject_stringOf $jsonResp "expiry"]
set region [CkJsonObject_stringOf $jsonResp "region"]
set ssnl4 [CkJsonObject_stringOf $jsonResp "ssnl4"]
set respstat [CkJsonObject_stringOf $jsonResp "respstat"]
delete_CkHttp $http
delete_CkJsonObject $json
delete_CkHttpResponse $resp
delete_CkJsonObject $jsonResp