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

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 Perl Downloads

Perl
use chilkat();

$success = 0;

#  This example assumes the Chilkat API to have been previously unlocked.
#  See Global Unlock Sample for sample code.

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

$http->put_BasicAuth(1);
$http->put_Login("API_USERNAME");
$http->put_Password("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",
#  }

$json = chilkat::CkJsonObject->new();
$json->UpdateString("region","AK");
$json->UpdateString("phone","7778789999");
$json->UpdateString("accttype","VISA");
$json->UpdateString("postal","19090");
$json->UpdateString("ssnl4","3655");
$json->UpdateString("expiry","0214");
$json->UpdateString("city","ANYTOWN");
$json->UpdateString("country","US");
$json->UpdateString("address","123 MAIN STREET");
$json->UpdateString("merchid","MERCHANT_ID");
$json->UpdateString("name","TOM JONES");
$json->UpdateString("account","4444333322221111");
$json->UpdateString("license","123451254");

$url = "https://<site>.cardconnect.com:<port>/cardconnect/rest/profile";

$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpStr("PUT",$url,$json->emit(),"utf-8","application/json",$resp);
if ($success == 0) {
    print $http->lastErrorText() . "\r\n";
    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.
print "response status code = " . $resp->get_StatusCode() . "\r\n";

$jsonResp = chilkat::CkJsonObject->new();
$jsonResp->Load($resp->bodyStr());
$jsonResp->put_EmitCompact(0);

print "response JSON:" . "\r\n";
print $jsonResp->emit() . "\r\n";

#  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

$country = $jsonResp->stringOf("country");
$address = $jsonResp->stringOf("address");
$resptext = $jsonResp->stringOf("resptext");
$city = $jsonResp->stringOf("city");
$acctid = $jsonResp->stringOf("acctid");
$respcode = $jsonResp->stringOf("respcode");
$defaultacct = $jsonResp->stringOf("defaultacct");
$accttype = $jsonResp->stringOf("accttype");
$token = $jsonResp->stringOf("token");
$license = $jsonResp->stringOf("license");
$respproc = $jsonResp->stringOf("respproc");
$phone = $jsonResp->stringOf("phone");
$profileid = $jsonResp->stringOf("profileid");
$name = $jsonResp->stringOf("name");
$auoptout = $jsonResp->stringOf("auoptout");
$postal = $jsonResp->stringOf("postal");
$expiry = $jsonResp->stringOf("expiry");
$region = $jsonResp->stringOf("region");
$ssnl4 = $jsonResp->stringOf("ssnl4");
$respstat = $jsonResp->stringOf("respstat");