For the complete documentation index, see llms.txt. This page is also available as Markdown.

Delete upsell campaign

Use the deleteUpSellCampaign method via SOAP API 6.0 to permanently delete an upsell campaign in any status (active, disabled, expired).

Request parameters

Parameter
Type / Description

upSellCampaignCode

Required (string) The identifying code of the upsell campaign.

Request sample

<?php
declare(strict_types=1);

class Configuration
{
    public const MERCHANT_CODE = '';
    public const MERCHANT_KEY = '';
    public const URL = 'http://api.2checkout.com/soap/6.0';
    public const ACTION = 'deleteUpsellCampaign';
    public const ADDITIONAL_OPTIONS = null;
    public const PAYLOAD = "f4b76ac3-6b2e-492f-a468-b34103876470";
}

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);
        }

        $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);
    }
}

try {
    $client = new Client();
    var_dump($client->call());
} catch (Exception $ex) {
    var_dump($ex);
}

Response

  • 204 - 'No content' if SUCCESS

  • 4xx if FAILED with distinct error messages

Error handling

Error code
Message

UPSELL_CAMPAIGN_NOT_FOUND

Upsell campaign with code test was not found.

UPSELL_CAMPAIGN_CODE_EMPTY

Code is not set

UPSELL_CAMPAIGN_CODE_TOO_LONG

Code exceeds allowed max length (255)

Last updated

Was this helpful?