mc-magento
mc-magento copied to clipboard
Support all Magento product types on orders.
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
The configurable products are supported without custom options (see at https://github.com/mailchimp/mc-magento/issues/13)
Great stuff, thanks @gonzaloebiz
@lduh and @takzilla you can see here the progress on the product types.
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?
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
I'm missing orders with Bundled products as well!
When will bundle products be supported?
Hello @shuafried
Unfortunately there is not ETA for this at the moment.
Regards.
Hi all, Is there a workaround for this? Because of this we have to choose for other services instead of Mailchimp...
Hello @PauGNU Please note the extension works anyways. You would only have problems if your store contains mostly the not supported product types.
Regards.
Hi @Santiagoebizmarts , that's actually the point... we have mostly grouped and configurable products :)
@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).
@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.
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.
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.