mc-magento icon indicating copy to clipboard operation
mc-magento copied to clipboard

Support all Magento product types on orders.

Open centerax opened this issue 8 years ago • 14 comments

Enterprise Edition

  • [x] Simple
  • [ ] Grouped
  • [x] Configurable
  • [x] Virtual
  • [ ] Bundle
  • [x] Downloadable
  • [ ] Gift card

Community Edition

  • [x] Simple
  • [ ] Grouped
  • [x] Configurable
  • [x] Virtual
  • [ ] Bundle
  • [x] Downloadable

centerax avatar Jun 22 '16 15:06 centerax

The configurable products are supported without custom options (see at https://github.com/mailchimp/mc-magento/issues/13)

gonzaloebiz avatar Jun 22 '16 15:06 gonzaloebiz

Great stuff, thanks @gonzaloebiz

@lduh and @takzilla you can see here the progress on the product types.

centerax avatar Jun 22 '16 16:06 centerax

hi guys!

i've posted issue here: https://github.com/mailchimp/mc-magento/issues/83 i've update Products.php and Helper/Data.php and it has become better, i've seen configurable product in Ecommerce data. But bundled products are missing (got "A product with the provided ID does not exist in the account for this list." error in log) Seems it has a reference with this issue? Tell me please when changes from #83 will be in stable and when Bundle products are planned to be supported?

elluminatte avatar Oct 21 '16 07:10 elluminatte

Hi @elluminatte,

thanks for you feedback. For now the bundle products will not be implemented, mailchimp don't support it, so we are in conversations with to try to find a way.

Best

gonzaloebiz avatar Oct 21 '16 12:10 gonzaloebiz

I'm missing orders with Bundled products as well!

tdgroot avatar Nov 22 '17 16:11 tdgroot

When will bundle products be supported?

shuafried avatar Feb 19 '18 13:02 shuafried

Hello @shuafried

Unfortunately there is not ETA for this at the moment.

Regards.

Santiagoebizmarts avatar Feb 19 '18 14:02 Santiagoebizmarts

Hi all, Is there a workaround for this? Because of this we have to choose for other services instead of Mailchimp...

paugnu avatar Dec 13 '18 08:12 paugnu

Hello @PauGNU Please note the extension works anyways. You would only have problems if your store contains mostly the not supported product types.

Regards.

Santiagoebizmarts avatar Dec 13 '18 14:12 Santiagoebizmarts

Hi @Santiagoebizmarts , that's actually the point... we have mostly grouped and configurable products :)

paugnu avatar Dec 13 '18 19:12 paugnu

@PauGNU I worked around the limitation by creating my own module and extending \Ebizmarts\MailChimp\Model\Api\Product and modifying _buildOldProductRequest() and _buildNewProductRequest() to treat bundles and gift vouchers the same as simple/virtual products.

Specifically, I modified this check in both of those methods:

        switch ($product->getTypeId()) {
            case \Magento\Catalog\Model\Product\Type::TYPE_BUNDLE: // *** ADDED ***
            case \Magento\Catalog\Model\Product\Type::TYPE_SIMPLE:
            case \Magento\Catalog\Model\Product\Type::TYPE_VIRTUAL:
            case self::TYPE_GIFTVOUCHER: // *** ADDED ***
            case self::TYPE_DOWNLOADABLE:
                $variantProducts[] = $product;
                break;

In our use case, we just needed to know which bundles our customers were purchasing (each of our bundles consist of a fixed set of items, and we hardly ever change the item mix).

mystix avatar Dec 21 '18 04:12 mystix

@Santiagoebizmarts we're super keen to see this in place. We generate a substantial amount of our annual revenue from Bundled Products and this is a large gap in our successful utilisation of this integration especially in the context of this causing further downstream symptoms such as #318

What information would you like from us to assist with lifting the priority on this scope?

We're happy for a narrower implementation that just treats Bundles like Virtual Products by using the default Child Products within each Bundle to determine price etc.

leegold avatar Jan 23 '19 02:01 leegold

Specifically, I modified this check in both of those methods:

        switch ($product->getTypeId()) {
            case \Magento\Catalog\Model\Product\Type::TYPE_BUNDLE: // *** ADDED ***
            case \Magento\Catalog\Model\Product\Type::TYPE_SIMPLE:
            case \Magento\Catalog\Model\Product\Type::TYPE_VIRTUAL:
            case self::TYPE_GIFTVOUCHER: // *** ADDED ***
            case self::TYPE_DOWNLOADABLE:
                $variantProducts[] = $product;
                break;

In our use case, we just needed to know which bundles our customers were purchasing (each of our bundles consist of a fixed set of items, and we hardly ever change the item mix).

@mystix Did you get this working in Magento2? We have the same wish as you describe, we do not need to know the products that are in the bundle, only the name/sku of the bundle, but we can not get this working with the latest Magento + latest extention versions.

dtcu8ey6p41w avatar Apr 25 '21 10:04 dtcu8ey6p41w

Looking at the latest (v1.1.20) source code in Ebizmarts_MailChimp_Model_Api_Products, it specifically blocks out bundles in multiple places. I don't understand why?

The bundle class Mage_Bundle_Model_Product_Price also implements the getFinalPrice() mehod (as it must as the class extends Mage_Catalog_Model_Product_Type_Price and an inheriting class's overriding method must be identical):

I don't see any reason why we couldn't just allow bundle products. Espcially since this Ebizmarts_MailChimp_Model_Api_Products seems to simply call getFinalPrice() (which calls getTotalBundleItemsPrice()) via getMailchimpFinalPrice().

Unless anyone wants to object, I want to make this change to include Bundles.

henryhayes avatar Jun 23 '21 10:06 henryhayes