Update reseller information
Last updated: 07-Jan-2026
Rate this article:
Overview
Use this method to update the details for an existing reseller entity in the Avangate platform.
Parameters
| Parameter | Type/Description |
|---|---|
| sessionID | Required (string) |
| Session identifier, which is the output of the Login method. An exception will be thrown if the values are incorrect. | |
| Reseller | Required (object) |
Response
| Parameter | Type/Description |
|---|---|
| Result | Boolean |
Request
<?php
declare(strict_types=1);
class Configuration
{
public const MERCHANT_CODE = 'MERCHANT';
public const MERCHANT_KEY = 'SECRET_KEY';
public const URL = 'https://api.2checkout.com/soap/6.0';
public const ACTION = 'updateReseller';
//array or JSON
public const PAYLOAD = <<<JSON
{
"PartnerCode": "Test Avangate",
"ResellerCode": "Q6WSZXXAA7",
"FirstName": "test",
"LastName": "test",
"Company": "Test Partner 44",
"Email": "test1111@example.com",
"Address": "a4126f5939",
"City": "bbbb",
"PostalCode": "4acbc843c0",
"Country": "RO",
"State": "kkk",
"Phone": "kkk",
"Fax": "gfgdfg"
}
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;
$algo = 'sha256';
$hash = hash_hmac($algo, $string, $key);
$client->__setCookie('XDEBUG_SESSION', 'PHPSTORM');
return $client->login($merchantCode, $date, $hash, $algo);
}
}
try {
$client = new Client();
var_dump($client->call());
} catch (Exception $ex) {
var_dump($ex);
}
Related articles
Rate this article: