Retrieve installments
Use the getInstallments method to retrieve information about the number of installments available for a specific selection of products/services.
Supported payment methods
Credit / debit cards: local Visa and MasterCard cards in Brazil and Turkey.
Request parameters
sessionID
Required (string)
Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.
Required (object)
An object designed to collect all data necessary for an order, including billing, product/subscription plan, and payment details.
Request sample
<?php
declare(strict_types=1);
class Configuration
{
public const MERCHANT_CODE = '';
public const MERCHANT_KEY = '';
public const URL = 'http://api.avangate.local/soap/6.0';
public const ACTION = 'getInstallments';
public const ADDITIONAL_OPTIONS = null;
//array or JSON
public const PAYLOAD = <<<JSON
{
"Amount" : 500,
"Country": "BR",
"Currency": "BRL",
"FiscalCode" :"345.675.677-7",
"EesToken": ["c49702ea-b0c5-4d39-9f5b-ba43ccf26785"]
}
JSON;
}
class Client
{
public function call(
string $url = Configuration::URL,
$payload = Configuration::PAYLOAD,
string $action = Configuration::ACTION
): ?object {
if (is_array($payload)) {
$payload = json_encode($payload);
}
if (!empty($payload)) {
// SoapClient works with objects(StdClass)
$payload = json_decode($payload);
}
$soapClient = $this->getClient($url);
$sessionId = $this->getSession($soapClient);
$args = array_filter([$sessionId, $payload]);
return $soapClient->$action(...$args);
}
public function getClient(string $url): SoapClient
{
return new SoapClient(
$url.'?wsdl',
[
'location' => $url,
'cache_wsdl' => WSDL_CACHE_NONE,
]
);
}
public function getSession(SoapClient $client)
{
$date = gmdate('Y-m-d H:i:s');
$merchantCode = Configuration::MERCHANT_CODE;
$key = Configuration::MERCHANT_KEY;
$string = strlen($merchantCode).$merchantCode.strlen($date).$date;
$hash = hash_hmac('md5', $string, $key);
$client->__setCookie('XDEBUG_SESSION', 'PHPSTORM');
return $client->login($merchantCode, $date, $hash);
}
}
$client = new Client();
$result = $client->call();
var_dump($result);Response parameters
InstallmentsOption
Array of objects Details below.
InstallmentsOption.Number
Int
The number of installments.
InstallmentsOption.Amount
Double
Standalone installment value. (Total order value / Number of installments)
InstallmentsOption.Currency
String
Order currency.
Last updated
Was this helpful?