Search code examples
phpmagentoproductrulemagento-1.7

Magento: Get product price given a customer group


On magento 1.7 I created a promotional price rule of 20% discount for "special members" customer group.

I'd like to display both prices. I thought there would be something like

$_product->getPriceByCustomerGroup( $groupId );

Goal

(not logged in):

  • Regular price: $10.99
  • Member price: $5.99

(member logged in):

  • Regular price: $10.99
  • Member price: $5.99

Solution

  • Fished my own wish after hacking on it for a while

    $now = Mage::getSingleton('core/date')->timestamp( time() );
    $websiteId = Mage::app()->getStore()->getWebsiteId();
    $customerGroup = 4;
    
    Mage::getResourceModel('catalogrule/rule')->getRulePrice( $now, $websiteId, $customerGroup, $_productId);