PaymentMethod.php
PaymentMethod.php
<?php
require_once __DIR__.'/vendor/autoload.php';
$username = "set me";
$apiKey = "set me";
$vatid = "";
$paymentRoleName = "";
$onlyChangeNicknameFlag = "";
$useCompanyInformationOnFile = false;
$companyName = "newCompany";
$firstName = "Jhon";
$lastName = "Travolta";
$streetAddress = "Av. opsss";
$country = "Bolivia";
$state = "Cochabamba";
$city = "Cochabamba";
$postalCode = "656284325";
$email = "noreply@softlayer.com";
$phone = "7888665598";
$cardNickname = "set me";
$cardNumber = "set me";
$expirationMonth = "set me";
$expirationYear = "set me";
$securityCode = "set me";
$accountService = \SoftLayer\SoapClient::getClient('SoftLayer_Account', null, $username, $apiKey);
$countryService = \SoftLayer\SoapClient::getClient('SoftLayer_Locale_Country', null, $username, $apiKey);
$objectMask = "mask[states]";
$countryService -> setObjectMask($objectMask);
$request = new stdClass();
$request -> billingNameCompany = $companyName;
$request -> billingNameFirst = $firstName;
$request -> billingNameLast = $lastName;
$request -> billingAddressLine1 = $streetAddress;
$request -> billingCountryCode = $country;
$request -> billingState = $state;
$request -> billingCity = $city;
$request -> billingPostalCode = $postalCode;
$request -> billingEmail = $email;
$request -> billingPhoneVoice = $phone;
$request -> cardNickname = $cardNickname;
$request -> cardAccountNumber = $cardNumber;
$request -> cardExpirationMonth = $expirationMonth;
$request -> cardExpirationYear = $expirationYear;
$request -> creditCardVerificationNumber = $securityCode;
$requestFlag = false;
try {
if($useCompanyInformationOnFile)
{
$account = $accountService -> getObject();
$request -> billingNameCompany = $account -> companyName;
$request -> billingNameFirst = $account -> firstName;
$request -> billingNameLast = $account -> lastName;
$request -> billingAddressLine1 = $account -> address1;
if(isset($account -> address2))
{$request -> billingAddressLine2 = $account -> address2;}
$request -> billingCountryCode = $account -> country;
$request -> billingState = $account -> state;
$request -> billingCity = $account -> city;
$request -> billingPostalCode = $account -> postalCode;
$request -> billingEmail = $account -> email;
$request -> billingPhoneVoice = $account -> officePhone;
$requestFlag = true;
}
else{
$countries = $countryService -> getAvailableCountries();
foreach($countries as $countryObj)
{
if($countryObj -> longName == $country)
{
$request -> billingCountryCode = $countryObj -> shortName;
if(sizeof($countryObj -> states)>0)
{
if($state != "")
{
foreach($countryObj -> states as $stateObj)
{
if(strpos($stateObj -> longName, $state) !== false)
{
$request -> billingState = $stateObj -> shortName;
$requestFlag = true;
break;
}
}
if($requestFlag == false)
{
print_r("The state that you specified is not valid or doesn't exist.");
}
}
else{print_r("You need to specified a value in '\$state'");}
}
else{
$request -> billingState = "OT";
$requestFlag = true;
}
}
}
}
if($requestFlag)
{
$result = $accountService -> requestCreditCardChange($request, $vatid, $paymentRoleName, $onlyChangeNicknameFlag);
print_r($result);
}
} catch(Exception $e) {
echo "Unable to submit a credit card change request: " . $e -> getMessage();
}