Bxgy 0.1.2 release

Bxgy 0.1.0 and Bxgy 0.1.1 packaged a layout file bxgy.xml to a wrong place. Bxgy 0.1.2 is a quick release not on schedule.

Thanks to Carsten for pointing out the error. Sorry to John, Hamichok and Tsk for reporting the bug but I pointed them into wrong direction.

Down BuyXGetY.tar.gz


  1. Hi

    I have a product X with sku: 1234 , I need to apply 2 shopping cart price rule .
    I have used Qian Buy X Get Y Module
    For ex:
    1). if i purchase 10 product of X , i must get 1 Product X free,
    2). if 50 of Product X is purchased , i must get 20 Product X free.
    I have successfully implemented applying one of the Price rule , i.e. either of 1 or 2 works fine.
    but i need to have both rule in the product.

    Please help
    Thanks in advance for all your replies

  2. Current version of Bxgy was designed for one bxgy rule. Future version can take the thoughts of allowing multiple bxgy rules on board (so people can set different reminder messages).

    However, you do not need wait for future versions as your request is simple. You can set up 2 bxgy rules, the second one (50 X’s 20 Y’s) prior to the first, and stop the rule further processing.

    Thanks for using Bxgy.

  3. Hi

    Thanks for the reply.

    Your info was implemented in the site
    It worked fine.
    Thanks a lot
    Waiting for the mentioned future version.

    Thanks and regards

  4. Hi

    I have used Qian Buy X Get Y Module, also posted the above commented which was reply to your solution.
    It was working fine.
    but I need to apply 2 or more rules simultaneously in the cart,
    ie . For example
    For ex:
    1). if i purchase 10 product of Y , i must get 1 Product Y free,
    2). again if 10 of Product X is purchase , i must get 1 Product X free.
    what change do you suggest i should make so that i can implement this 2 rules together in the cart.

    Thanks in advance for all reply.

    Thanks and regards

  5. Your two rules are Magento native “buy x get y” sales rule. As long as these rules are named normally (not start with [bxgy]), they can co-exist with a real bxgy rule.

  6. Do you have an example of a working rule I could see? The instructions included are somewhat confusing so I’m thinking I set up my rule wrong (everything shows up but the rule isn’t changing any prices in my cart.

  7. First, I thank you for this plugin.

    Is there a way to get bygy to set rules to buy 3 get 3 free, buy 6 get 6 free, etc. I’ve some promotions where my offer matches what my buyer buys. Like the buy one get one free offers. If so, where and how do I tweak the code to set these price rules.

  8. HI again

    Please check this and let me know wheather this is Possible in Magento Or your Module.

    10 of Product X selected, get 1 additional for free. This also holds for 11, 12, 13, 14, 15, 16, 17, 18, 19 of Product X selected.
    20 of Product X selected, get 2 additional for free. This also holds for 21, 22, 23, 24, 25, 26, 27, 28, 29 of Product X selected.
    30 of Product X selected, get 3 additional for free. This also holds for 31, 32, 33, 34, 35, 36, 37, 38, 39 of Product X selected.
    40 of Product X selected, get 4 additional for free. This also holds for 41, 42, 43, 44, 45, 46, 47, 48, 49 of Product X selected.

    When we have 50 products, the first rule no longer applies and we get the second rule:
    50 of Product X selected, get 20 additional for free. This also holds for 51, 52, 53, 54, 55, 56, 57, 58, 59 of Product X selected.

    Now it gets interesting, when we have 60 EACU selected, both rules apply:
    60 of Product X selected, means for the first 50 you get 20 and for the other 10, you get 1, so in total you should get 21 additional for free. This also holds true for 61, 62, 63, etc.
    70 of Product X selected, means for the first 50 you get 20 and for the other 2×10, you get 2, so in total you should get 22 additional for free. This also holds true for 71, 72, 73, etc.

    Thanks and regards
    Anoop K

  9. Firstly, it’s a nice idea to do what you have described.

    Secondly, it is not possible without changing the code.

    Thirdly, bxgy rely on Magento native promotions GUI to say out what X and Y is. In your case, I must build my own forms to let you say out what you want. I have no intention to do that timewise.

  10. The module is great, thanks for letting us test it out.

    First, the directions say to put “Discount amount” to X and the “Discount Qty Step (Buy X)” to Y and when you do that it shows the nice bxgy message up top, but it also gives away much more than Y. I am offering buy 2 get one 1 free but when 3 or more are added it it gives away 100% of the ALL the product’s value. I switched the order of them and it works perfectly – but no message.

    Also, I would like the rule to be equal or lesser value. It appears that Magento just gives the discount on the first item of the cart. It creates a large swing in the amount that can be given away. (I am entering “select from category A get another item in category A for free) Is there a way to modify it to make sure it only picks from the lower priced item? Or is that a Magento coupon function?


  11. Hello,

    Thank you for this great module. It works fine (with 1.6.1).

    I have one problem though, and it’s that I want the CHEAPEST product to be “free”. Now it seem to select the “first one” and deduct that amount.
    How do I specify to deduct the cheapest products price?

    Thank you.


  12. bxgy was developed for a group of products of same price. It is not far away from “buy x and get y cheapest free”, but you need do your own programming. I can put it as a feature request.

  13. I wanted to make it so that for each $20 that someone spends they would be able to add one item to their cart from a group of inexpensive items. I got that working, but then I wanted to limit the total number of free items on an order.

    I made a slight mod to the code and got that working.

    In /Qian/Model/Validator.php
    function _getCartXyQtyArray()
    add this just before the return
    $maxQty = intval(self::$_rule->getDiscountQty());
    if ($yQty > $maxQty)
    $yQty = $maxQty;

    This reads “Maximum Qty Discount is Applied To” from the Actions and limits the order to that many items.

    One other problem that I had, but gave up on, was that I tried adding the block to the one-page checkout screen. The block appears, but always shows the full number of promo items available even when they’re used up. For some reason the $freeQtyUsed variable gets reset to 0 before the message is displayed, even though it is set correctly when processBxgy is called. It’s as if the block is reinitialized.

    I know I could have used some standard cart rules to do some of this, but I really like this extension and the way it can display the remaining items and prompt the customer to go get them.

    If anyone wants that feature and can figure it out, let me know.


  14. works perfectly on 1.7.02
    only problem I am facing is that its Reminder message is not being displayed
    I have enabled it but cant see it in cart or in checkout page not even on magento default theme
    please let me know which block to put where for it
    thanks for your ext.

Leave a comment

Your email address will not be published. Required fields are marked *