The official Magento connector for HubShop.ly.
This module was developed to connect Magento stores to Hubspot for customer, order, and cart abandonment tracking. HubShop.ly is a well-known service for Bigcommerce and Shopify. Although I did not originally build this module, I was hired to re-architect it to meet some more complex needs for Magento merchants.
(Credit to original developer: James Carrao)
My work on this module involved improving its flexibility to run on Magento shops with unique configurations, including those on multi-node environments, shops behind sub-directories, multi-store environments requiring separate HubShop.ly accounts, and those with web server configurations which do not inherently support the Magento REST API.
Initial connector configuration screen
Using the self-diagnostics tool to spot integration problems
public function autoInstall($targetUserId = null, $storeId = null)
{
$this->enableFeatures($storeId);
if (is_null($targetUserId)) {
$targetUserId = $this->_getCurrentAdminUserId();
}
$user = Mage::getModel('admin/user')->load($targetUserId);
if (!$user->getId()) {
throw new Groove_Hubshoply_SetupException(
sprintf('Failed to find admin user by ID "%d"', $targetUserId)
);
}
$role = $this->provisionRole();
$this->provisionAttribute();
$this->assignUserToRole($user->getId(), $role->getId());
$this->setupConsumer($storeId);
Mage::helper('groove_hubshoply/debug')->log('HubShop.ly system installation completed.', Zend_Log::NOTICE);
return $this;
}