Add special price promotion
Overview
Use the AddSpecialPricePromotion method via SOAP API 6.0 to create a promotion with a special price.
Request parameters
Parameters | Type | Required | Description |
---|---|---|---|
Promotion | Object | Required | Contains all details of the promotion. |
PriceMatrix | Array of Objects | Required | Only for this type of promotion; is generated by getPriceMatrix and used to set promotion special prices. |
Coupon | Object | Required | Type of coupon applied to the promotion. |
Request sample
<?php require('PATH_TO_AUTH'); $promotionObject = new stdClass; $promotionObject->Name = 'YOUR_PROMOTION_TITLE'; $promotionObject->Description = 'YOUR_PROMOTION_DESCRIPTION'; $promotionObject->DefaultCurrency = "EUR"; $promotionObject->StartDate = date('Y-m-d', strtotime('1 month ago')); $promotionObject->EndDate = date('Y-m-d', strtotime('+1 month')); $promotionObject->Type = 'SPECIAL_PRICE'; $promotionObject->Enabled = 1; $promotionObject->MaximumOrdersNumber = 0; $promotionObject->MaximumQuantity = 0; $promotionObject->InstantDiscount = false; $promotionObject->ApplyRecurring = 'NONE'; $promotionObject->RecurringChargesNumber = 3; $promotionObject->InstantDiscount = 0; $couponObject = new stdClass; $couponObject->Type = 'SINGLE'; $couponObject->Code = 'single_code'; $promotionObject->Coupon = $couponObject; $productsObj1 = new stdClass; $productsObj1->Code = 'test'; $promotionObject->Products = [$productsObj1]; $priceMatrixDefinition1 = new stdClass; $priceMatrixDefinition1->ProductCode = "test"; $priceMatrixDefinition1->PricingConfigurationCode = "738C6A2049"; $priceMatrixDefinition1->OptionHash = "708e43960c4edc42f14cf388bcb24bde"; $option1 = new stdClass; $option1->GroupName = "Units"; $option1->OptionText = "1 - maximum"; $price1 = new stdClass; $price1->Value = 10; $price1->Currency = "USD"; $price2 = new stdClass; $price2->Value = 15; $price2->Currency = "EUR"; $priceMatrixDefinition1->Options = [$option1]; $priceMatrixDefinition1->Prices = [$price1, $price2]; $promotionObject->PriceMatrix = [$priceMatrixDefinition1]; try { $newPromotion = $client->addPromotion($sessionID, $promotionObject); } catch (SoapFault $e) { echo "NewPromotion: " . $e->getMessage(); exit; } var_dump("Promotion", $newPromotion);
Response
{ "@encodingStyle": "http://schemas.xmlsoap.org/soap/encoding/", "Body": { "addPromotionResponse": { "addPromotionReturn": { "@type": "ns2:Promotion", "Code": { "@type": "xsd:string", "#text": "6GR7JU369E" }, "Name": { "@type": "xsd:string", "#text": "Promo percentage REST" }, "Description": { "@type": "xsd:string", "#text": "Promo description1" }, "StartDate": { "@type": "xsd:string", "#text": "2019-11-30" }, "EndDate": { "@type": "xsd:string", "#text": "2100-12-31" }, "MaximumOrdersNumber": { "@type": "xsd:int", "#text": "-1" }, "MaximumQuantity": { "@type": "xsd:int", "#text": "1" }, "InstantDiscount": { "@type": "xsd:boolean", "#text": "false" }, "Coupon": { "@type": "ns2:PromotionCouponSingleOrMultiple", "Type": { "@type": "xsd:string", "#text": "MULTIPLE" }, "Codes": { "@arrayType": "xsd:string[2]", "@type": "ns2:StringArray", "item": [ { "@type": "xsd:string", "#text": "code1" }, { "@type": "xsd:string", "#text": "code2" } ] } }, "Enabled": { "@type": "xsd:boolean", "#text": "true" }, "ChannelType": { "@nil": "true" }, "Type": { "@type": "xsd:string", "#text": "SPECIAL_PRICE" }, "Discount": { "@nil": "true" }, "Products": { "@arrayType": "ns2:PromotionProduct[1]", "@type": "ns2:PromotionProductsArray", "item": { "@type": "ns2:PromotionProduct", "Code": { "@type": "xsd:string", "#text": "test" }, "PricingOptionCodes": { "@nil": "true" }, "PricingConfigurationCode": { "@nil": "true" } } }, "PriceThreshold": { "@nil": "true" }, "Translations": { "@arrayType": "ns2:PromotionTranslation[1]", "@type": "ns2:PromotionTranslationsArray", "item": { "@type": "ns2:PromotionTranslation", "Name": { "@type": "xsd:string", "#text": "Promo percentage REST" }, "Language": { "@type": "xsd:string", "#text": "EN" } } }, "Sources": { "@arrayType": "xsd:string[0]", "@type": "ns2:SourcesArray" }, "PublishToAffiliatesNetwork": { "@nil": "true" }, "ApplyRecurring": { "@type": "xsd:string", "#text": "NONE" }, "RecurringChargesNumber": { "@type": "xsd:int", "#text": "0" }, "DefaultCurrency": { "@type": "xsd:string", "#text": "EUR" }, "PriceMatrix": { "@arrayType": "ns2:PromotionPriceMatrix[1]", "@type": "ns2:PromotionPriceMatrixArray", "item": { "@type": "ns2:PromotionPriceMatrix", "ProductCode": { "@type": "xsd:string", "#text": "test" }, "PricingConfigurationCode": { "@type": "xsd:string", "#text": "738C6A2049" }, "OptionHash": { "@type": "xsd:string", "#text": "708e43960c4edc42f14cf388bcb24bde" }, "Options": { "@arrayType": "ns2:PromotionPriceMatrixOptions[1]", "@type": "ns2:PromotionPriceMatrixOptionsArray", "item": { "@type": "ns2:PromotionPriceMatrixOptions", "GroupName": { "@type": "xsd:string", "#text": "Units" }, "OptionText": { "@type": "xsd:string", "#text": "1 - maximum" } } }, "Prices": { "@arrayType": "ns2:PromotionPriceMatrixPrices[12]", "@type": "ns2:PromotionPriceMatrixPricesArray", "item": [ { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "31.156" }, "Currency": { "@type": "xsd:string", "#text": "CAD" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "20" }, "Currency": { "@type": "xsd:string", "#text": "EUR" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "40" }, "Currency": { "@type": "xsd:string", "#text": "USD" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "1587.5251590698" }, "Currency": { "@type": "xsd:string", "#text": "ARS" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "18541.12858627" }, "Currency": { "@type": "xsd:string", "#text": "CLP" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "18.1324" }, "Currency": { "@type": "xsd:string", "#text": "GBP" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "2447.2" }, "Currency": { "@type": "xsd:string", "#text": "JPY" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "499.518" }, "Currency": { "@type": "xsd:string", "#text": "MXN" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "97.536" }, "Currency": { "@type": "xsd:string", "#text": "RON" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "1846.05" }, "Currency": { "@type": "xsd:string", "#text": "RUB" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "601.82854437393" }, "Currency": { "@type": "xsd:string", "#text": "UAH" } }, { "@type": "ns2:PromotionPriceMatrixPrices", "Value": { "@type": "xsd:double", "#text": "384.374" }, "Currency": { "@type": "xsd:string", "#text": "ZAR" } } ] } } } } } } }