Add a pricing configuration
Overview
Use the addPricingConfiguration method to add a new pricing configuration for your account.
Parameters
sessionID |
Required (string) |
|
Session identifier, the output of the Login method. Include sessionID into all your requests. Avangate throws an exception if the values are incorrect. The sessionID expires in 10 minutes. |
PricingConfiguration |
Required (object) |
|
Use this object to add a new pricing configuration for your account. |
ProductCode |
Required (string) |
|
The code of the produt you assign the configuration to. |
Response
bool(true)
Request
<?php $host = "https://api.avangate.com"; $client = new SoapClient($host . "/soap/4.0/?wsdl", array( 'location' => $host . "/soap/4.0/", "stream_context" => stream_context_create(array( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false ) )) )); function hmac($key, $data) { $b = 64; // byte length for md5 if (strlen($key) > $b) { $key = pack("H*", md5($key)); } $key = str_pad($key, $b, chr(0x00)); $ipad = str_pad('', $b, chr(0x36)); $opad = str_pad('', $b, chr(0x5c)); $k_ipad = $key ^ $ipad; $k_opad = $key ^ $opad; return md5($k_opad . pack("H*", md5($k_ipad . $data))); } $merchantCode = "YOURCODE123"; //your account's merchant code available in the 'System settings' area of the cPanel: https://secure.avangate.com/cpanel/account_settings.php $key = "SECRET_KEY"; //your account's secret key available in the 'System settings' area of the cPanel: https://secure.avangate.com/cpanel/account_settings.php $now = gmdate('Y-m-d H:i:s'); //date_default_timezone_set('UTC') $string = strlen($merchantCode) . $merchantCode . strlen($now) . $now; $hash = hmac($key, $string); try { $sessionID = $client->login($merchantCode, $now, $hash); } catch (SoapFault $e) { echo "Authentication: " . $e->getMessage(); exit; } $PricingConfiguration = new stdClass(); $PricingConfiguration->Default = True; $PricingConfiguration->Name = 'New Pricing Configuration Through API'; $PricingConfiguration->BillingCountries = array(); $PricingConfiguration->BillingCountries[0] = 'RO'; $PricingConfiguration->BillingCountries[1] = 'DE'; $PricingConfiguration->PricingSchema = 'DYNAMIC'; $PricingConfiguration->PriceType = 'NET'; $PricingConfiguration->DefaultCurrency = 'USD'; $PricingConfiguration->Prices = new stdClass(); $PricingConfiguration->Prices->Regular = array(); $PricingConfiguration->Prices->Regular[0] = new stdClass(); $PricingConfiguration->Prices->Regular[0]->Amount = 69.09; $PricingConfiguration->Prices->Regular[0]->Currency = 'USD'; $PricingConfiguration->Prices->Regular[0]->MinQuantity = 1; $PricingConfiguration->Prices->Regular[0]->MaxQuantity = 35; $PricingConfiguration->Prices->Regular[0]->OptionCodes = array(); $PricingConfiguration->Prices->Regular[0]->OptionCodes[0] = new stdClass(); $PricingConfiguration->Prices->Regular[0]->OptionCodes[0]->Code = 'G77ICHEM1C'; $PricingConfiguration->Prices->Regular[0]->OptionCodes[0]->Options = array(); $PricingConfiguration->Prices->Regular[0]->OptionCodes[0]->Options[0] = 'zh5onfolw7'; $PricingConfiguration->Prices->Regular[0]->OptionCodes[0]->Options[1] = '75rjldfcnz'; $PricingConfiguration->Prices->Regular[0]->OptionCodes[1] = new stdClass(); $PricingConfiguration->Prices->Regular[0]->OptionCodes[1]->Code = 'BAWAQB8LZP'; $PricingConfiguration->Prices->Regular[0]->OptionCodes[1]->Options = array(); $PricingConfiguration->Prices->Regular[0]->OptionCodes[1]->Options[0] = 'r3oi06opvi'; $PricingConfiguration->Prices->Regular[0]->OptionCodes[1]->Options[1] = '76gqbq4bhd'; $PricingConfiguration->Prices->Regular[1] = new stdClass(); $PricingConfiguration->Prices->Regular[1]->Amount = 64.66; $PricingConfiguration->Prices->Regular[1]->Currency = 'USD'; $PricingConfiguration->Prices->Regular[1]->MinQuantity = 36; $PricingConfiguration->Prices->Regular[1]->MaxQuantity = 83; $PricingConfiguration->Prices->Regular[1]->OptionCodes = array(); $PricingConfiguration->Prices->Regular[1]->OptionCodes[0] = new stdClass(); $PricingConfiguration->Prices->Regular[1]->OptionCodes[0]->Code = '8RNXV3T3RE'; $PricingConfiguration->Prices->Regular[1]->OptionCodes[0]->Options = array(); $PricingConfiguration->Prices->Regular[1]->OptionCodes[0]->Options[0] = 'rorqkqnd9p'; $PricingConfiguration->Prices->Regular[1]->OptionCodes[0]->Options[1] = 'aeu89gqdg6'; $PricingConfiguration->Prices->Regular[1]->OptionCodes[1] = new stdClass(); $PricingConfiguration->Prices->Regular[1]->OptionCodes[1]->Code = 'DJYD713MKC'; $PricingConfiguration->Prices->Regular[1]->OptionCodes[1]->Options = array(); $PricingConfiguration->Prices->Regular[1]->OptionCodes[1]->Options[0] = 'y2z2squ7c1'; $PricingConfiguration->Prices->Regular[1]->OptionCodes[1]->Options[1] = 'g74qfskbjg'; $PricingConfiguration->Prices->Renewal = array(); $PricingConfiguration->Prices->Renewal[0] = new stdClass(); $PricingConfiguration->Prices->Renewal[0]->Amount = 7.89; $PricingConfiguration->Prices->Renewal[0]->Currency = 'USD'; $PricingConfiguration->Prices->Renewal[0]->MinQuantity = 84; $PricingConfiguration->Prices->Renewal[0]->MaxQuantity = 100; $PricingConfiguration->Prices->Renewal[0]->OptionCodes = array(); $PricingConfiguration->Prices->Renewal[0]->OptionCodes[0] = new stdClass(); $PricingConfiguration->Prices->Renewal[0]->OptionCodes[0]->Code = '73QCSXYH0E'; $PricingConfiguration->Prices->Renewal[0]->OptionCodes[0]->Options = array(); $PricingConfiguration->Prices->Renewal[0]->OptionCodes[0]->Options[0] = '54xu7mngqm'; $PricingConfiguration->Prices->Renewal[0]->OptionCodes[0]->Options[1] = 'p6m8im2unl'; $PricingConfiguration->Prices->Renewal[0]->OptionCodes[1] = new stdClass(); $PricingConfiguration->Prices->Renewal[0]->OptionCodes[1]->Code = '0QD0CF0OIE'; $PricingConfiguration->Prices->Renewal[0]->OptionCodes[1]->Options = array(); $PricingConfiguration->Prices->Renewal[0]->OptionCodes[1]->Options[0] = 'ytbac9wpmh'; $PricingConfiguration->Prices->Renewal[0]->OptionCodes[1]->Options[1] = 'lpkxxqsqxb'; $PricingConfiguration->Prices->Renewal[1] = new stdClass(); $PricingConfiguration->Prices->Renewal[1]->Amount = 76.99; $PricingConfiguration->Prices->Renewal[1]->Currency = 'USD'; $PricingConfiguration->Prices->Renewal[1]->MinQuantity = 101; $PricingConfiguration->Prices->Renewal[1]->MaxQuantity = 544; $PricingConfiguration->Prices->Renewal[1]->OptionCodes = array(); $PricingConfiguration->Prices->Renewal[1]->OptionCodes[0] = new stdClass(); $PricingConfiguration->Prices->Renewal[1]->OptionCodes[0]->Code = '03APF0H4QF'; $PricingConfiguration->Prices->Renewal[1]->OptionCodes[0]->Options = array(); $PricingConfiguration->Prices->Renewal[1]->OptionCodes[0]->Options[0] = '15ce5uw2j6'; $PricingConfiguration->Prices->Renewal[1]->OptionCodes[0]->Options[1] = 'e88d5hk0tb'; $PricingConfiguration->Prices->Renewal[1]->OptionCodes[1] = new stdClass(); $PricingConfiguration->Prices->Renewal[1]->OptionCodes[1]->Code = 'PT00TYI2VY'; $PricingConfiguration->Prices->Renewal[1]->OptionCodes[1]->Options = array(); $PricingConfiguration->Prices->Renewal[1]->OptionCodes[1]->Options[0] = '10c24smlbl'; $PricingConfiguration->Prices->Renewal[1]->OptionCodes[1]->Options[1] = '0ondbwdk3q'; $PricingConfiguration->PriceOptions = array(); $PricingConfiguration->PriceOptions[0] = new stdClass(); $PricingConfiguration->PriceOptions[0]->Code = 'FKQ8CFLYKM'; $PricingConfiguration->PriceOptions[0]->Required = false; $PricingConfiguration->PriceOptions[1] = new stdClass(); $PricingConfiguration->PriceOptions[1]->Code = 'TH1HKFOTFR'; $PricingConfiguration->PriceOptions[1]->Required = true; $ProductCode = 'API_Imported_123456'; try { $NewPricingConfiguration = $client->addPricingConfiguration($sessionID, $PricingConfiguration, $ProductCode); } catch (SoapFault $e) { echo "NewPricingConfiguration: " . $e->getMessage(); exit; } var_dump("NewPricingConfiguration", $NewPricingConfiguration); ?>