2015-04-16 1 views
0

Я пишу отдельный файл php outsite Magento для поддержки нашего локального приложения.Применить код купона не работает в magento

Применить код купона не работает для меня. Но тот же купон работает в Magento (пользователь) и Magento API.

Я пытаюсь с тем же кодом, что и Magento в API.

$quoteId = 10001; 
$coupon = 'TESTCOUPON'; 
$storeId = 2; 

$quote = Mage::getModel("sales/quote"); 
$quote->setStoreId($storeId); 
$quote->load($quoteId); 

if (!$quote->getItemsCount()) { 
     echo ('quote_is_empty'); 
     exit; 
} 

$quote->getShippingAddress()->setCollectShippingRates(true); 
$quote->setCouponCode($coupon) 
     ->collectTotals() 
     ->save(); 

if (!$coupon == $quote->getCouponCode()) { 
     echo ('coupon_code_is_not_valid'); 
     exit; 
} 
else{ 
     echo 'coupon applied'; 
     exit; 
} 

Приведенный выше код через coupon_code_is_not_valid. Если у кого-нибудь есть идеи для этого, дайте мне знать.

+0

Хотите, чтобы получить код купона применяется, если продукт был заказан? – Muk

+0

Да, после того, как товары добавлены в корзину/цитату. –

+0

Ваш код верный, с какими проблемами вы столкнулись? – Muk

ответ

0

Попробуйте следующие

if (strcasecmp($coupon,$quote->getCouponCode()) == 0){ 
    echo 'coupon applied'; 
    exit; 
} 
+0

Я тоже проверил db, купон не был применен. –