diff --git a/erpnext/hub_node/api.py b/erpnext/hub_node/api.py
index 0c9af1a..a8958ab 100644
--- a/erpnext/hub_node/api.py
+++ b/erpnext/hub_node/api.py
@@ -56,7 +56,7 @@
 			'item_code': item_code,
 			'hub_category': item.get('hub_category'),
 			'image_list': item.get('image_list')
-		}).insert()
+		}).insert(ignore_if_duplicate=True)
 
 	try:
 		hub_settings = frappe.get_doc('Hub Settings')
diff --git a/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py b/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py
index 0b6b2bc..eb57f3a 100644
--- a/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py
+++ b/erpnext/hub_node/data_migration_mapping/item_to_hub_item/__init__.py
@@ -1,19 +1,26 @@
-import frappe, io, base64, urllib, os
+import frappe, io, base64, urllib, os, json
+from frappe.utils.file_manager import get_file_path
 
 def pre_process(doc):
 
-	# file_path = doc.image
-	# file_name = os.path.basename(file_path)
+	file_path = doc.image
+	file_name = os.path.basename(file_path)
 
-	# if file_path.startswith('http'):
-	# 	url = file_path
-	# 	file_path = os.path.join('/tmp', file_name)
-	# 	urllib.urlretrieve(url, file_path)
+	if file_path.startswith('http'):
+		url = file_path
+		file_path = os.path.join('/tmp', file_name)
+		urllib.urlretrieve(url, file_path)
+	else:
+		file_path = os.path.abspath(get_file_path(file_path))
 
-	# with io.open(file_path, 'rb') as f:
-	# 	doc.image = base64.b64encode(f.read())
-
-	# doc.image_file_name = file_name
+	try:
+		with io.open(file_path, 'rb') as f:
+			doc.image = json.dumps({
+				'file_name': file_name,
+				'base64': base64.b64encode(f.read())
+			})
+	except Exception as e:
+		frappe.log_error(title='Hub Sync Error')
 
 	cached_details = frappe.get_doc('Hub Tracked Item', doc.item_code)
 
diff --git a/erpnext/hub_node/doctype/hub_settings/hub_settings.py b/erpnext/hub_node/doctype/hub_settings/hub_settings.py
index 8ec3d56..0044cef 100644
--- a/erpnext/hub_node/doctype/hub_settings/hub_settings.py
+++ b/erpnext/hub_node/doctype/hub_settings/hub_settings.py
@@ -81,6 +81,7 @@
 	def create_hub_connector(self, message):
 		if frappe.db.exists('Data Migration Connector', 'Hub Connector'):
 			hub_connector = frappe.get_doc('Data Migration Connector', 'Hub Connector')
+			hub_connector.hostname = self.get_hub_url()
 			hub_connector.username = message['email']
 			hub_connector.password = message['password']
 			hub_connector.save()
diff --git a/erpnext/hub_node/doctype/hub_tracked_item/test_hub_tracked_item.js b/erpnext/hub_node/doctype/hub_tracked_item/test_hub_tracked_item.js
deleted file mode 100644
index 9f7314d..0000000
--- a/erpnext/hub_node/doctype/hub_tracked_item/test_hub_tracked_item.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/* eslint-disable */
-// rename this file from _test_[name] to test_[name] to activate
-// and remove above this line
-
-QUnit.test("test: Hub Tracked Item", function (assert) {
-	let done = assert.async();
-
-	// number of asserts
-	assert.expect(1);
-
-	frappe.run_serially([
-		// insert a new Hub Tracked Item
-		() => frappe.tests.make('Hub Tracked Item', [
-			// values to be set
-			{key: 'value'}
-		]),
-		() => {
-			assert.equal(cur_frm.doc.key, 'value');
-		},
-		() => done()
-	]);
-
-});
diff --git a/erpnext/public/js/hub/pages/publish.js b/erpnext/public/js/hub/pages/publish.js
index 98b0a61..ce73d63 100644
--- a/erpnext/public/js/hub/pages/publish.js
+++ b/erpnext/public/js/hub/pages/publish.js
@@ -187,7 +187,7 @@
 	show_publish_progress() {
 		const items_to_publish = this.items_data_to_publish.length
 			? this.items_data_to_publish
-			: JSON.parse(hub.settings.custom_data);
+			: JSON.parse(hub.settings.custom_data || '[]');
 
 		const $publish_progress = $(`<div class="sync-progress">
 			<p><b>${__(`Syncing ${items_to_publish.length} Products`)}</b></p>
