diff --git a/config/.gitkeep b/config/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/config/config.json b/config/config.json
new file mode 100644
index 0000000000000000000000000000000000000000..106d2357e79b0301146da0907096f443a5326c9b
--- /dev/null
+++ b/config/config.json
@@ -0,0 +1,4 @@
+{
+    "platform_root": "\/var",
+    "connector_root": "\/var\/www"
+}
\ No newline at end of file
diff --git a/config/features.json b/config/features.json
new file mode 100644
index 0000000000000000000000000000000000000000..da7f3185325eb03daeb3eec75893bb7f9b053386
--- /dev/null
+++ b/config/features.json
@@ -0,0 +1,460 @@
+
+{
+    "entities": {
+        "Category": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CategoryAttr": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CategoryAttrI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CategoryCustomerGroup": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CategoryI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CategoryInvisibility": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ConfigGroup": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ConfigGroupI18n": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ConfigItem": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ConfigItemI18n": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ConfigItemPrice": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CrossSellingGroup": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CrossSellingGroupI18n": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "Currency": {
+            "pull": true,
+            "push": false,
+            "delete": false
+        },
+        "Customer": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CustomerAttr": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CustomerGroup": {
+            "pull": true,
+            "push": true,
+            "delete": false
+        },
+        "CustomerGroupAttr": {
+            "pull": true,
+            "push": false,
+            "delete": false
+        },
+        "CustomerGroupI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CustomerGroupPackagingQuantity": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CustomerOrder": {
+            "pull": true,
+            "push": false,
+            "delete": true
+        },
+        "CustomerOrderAttr": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CustomerOrderBillingAddress": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CustomerOrderItem": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "CustomerOrderItemVariation": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CustomerOrderPaymentInfo": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CustomerOrderShippingAddress": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "DeliveryNote": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "DeliveryNoteItem": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "DeliveryNoteItemInfo": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "FileDownload": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "FileDownloadI18n": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "FileUpload": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "FileUploadI18n": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "Image": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "Language": {
+            "pull": true,
+            "push": false,
+            "delete": false
+        },
+        "Manufacturer": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ManufacturerI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "MeasurementUnit": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "MeasurementUnitI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductMediaFile": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductMediaFileAttr": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductMediaFileAttrI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductMediaFileI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "PartsList": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "Payment": {
+            "pull": true,
+            "push": false,
+            "delete": false
+        },
+        "Product": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "Product2Category": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductAttr": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductAttrI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductConfigGroup": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "CrossSelling": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductFileDownload": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductInvisibility": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductPartsList": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductPrice": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductPriceItem": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductSpecialPrice": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductSpecialPriceItem": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductSpecific": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductStockLevel": {
+            "pull": false,
+            "push": true,
+            "delete": false
+        },
+        "ProductType": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductVarCombination": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductVariation": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductVariationI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductVariationInvisibility": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductVariationValue": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductVariationValueDependency": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductVariationValueExtraCharge": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductVariationValueI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "ProductVariationValueInvisibility": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ProductWarehouseInfo": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "Shipment": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "ShippingClass": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "Specific": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "SpecificI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "SpecificValue": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "SpecificValueI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "Statistic": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "StatusChange": {
+            "pull": false,
+            "push": true,
+            "delete": false
+        },
+        "TaxClass": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "TaxRate": {
+            "pull": true,
+            "push": false,
+            "delete": false
+        },
+        "TaxZone": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "TaxZoneCountry": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        },
+        "Unit": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "UnitI18n": {
+            "pull": true,
+            "push": true,
+            "delete": true
+        },
+        "Warehouse": {
+            "pull": false,
+            "push": false,
+            "delete": false
+        }
+    },
+    "flags": {
+        "var_combination_child_first": false,
+        "product_images_supported": true,
+        "category_images_supported": true,
+        "manufacturer_images_supported": true,
+        "specific_images_supported": false,
+        "specific_value_images_supported": false,
+        "config_group_images_supported": false,
+        "product_variation_value_images_supported": false,
+        "variation_products_supported": false,
+        "variation_combinations_supported": true,
+        "set_articles_supported": false,
+        "needs_finish_call": false,
+        "free_field_supported": false
+    }
+}
\ No newline at end of file
diff --git a/plugins/.gitkeep b/plugins/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/bootstrap.php b/src/bootstrap.php
index 7de102b5f461bb14c3e1b86aed088202d77de383..3c46bf408fc4c417af495da11c39d94070206b0c 100644
--- a/src/bootstrap.php
+++ b/src/bootstrap.php
@@ -7,6 +7,7 @@
 require_once (__DIR__ . "/../vendor/autoload.php");
 
 use jtl\Connector\Application\Application;
+use jtl\Connector\Core\Logger\Logger;
 use jtl\Connector\Core\Rpc\RequestPacket;
 use jtl\Connector\Core\Rpc\ResponsePacket;
 use jtl\Connector\Core\Rpc\Error;
@@ -36,6 +37,35 @@ function exception_handler(\Exception $exception)
     Response::send($responsepacket);
 }
 
+function error_handler($errno, $errstr, $errfile, $errline, $errcontext)
+{
+    $types = array(
+        E_ERROR => array(Logger::ERROR, 'E_ERROR'),
+        E_WARNING => array(Logger::WARNING, 'E_WARNING'),
+        E_PARSE => array(Logger::WARNING, 'E_PARSE'),
+        E_NOTICE => array(Logger::NOTICE, 'E_NOTICE'),
+        E_CORE_ERROR => array(Logger::ERROR, 'E_CORE_ERROR'),
+        E_CORE_WARNING => array(Logger::WARNING, 'E_CORE_WARNING'),
+        E_CORE_ERROR => array(Logger::ERROR, 'E_COMPILE_ERROR'),
+        E_CORE_WARNING => array(Logger::WARNING, 'E_COMPILE_WARNING'),
+        E_USER_ERROR => array(Logger::ERROR, 'E_USER_ERROR'),
+        E_USER_WARNING => array(Logger::WARNING, 'E_USER_WARNING'),
+        E_USER_NOTICE => array(Logger::NOTICE, 'E_USER_NOTICE'),
+        E_STRICT => array(Logger::NOTICE, 'E_STRICT'),
+        E_RECOVERABLE_ERROR => array(Logger::ERROR, 'E_RECOVERABLE_ERROR'),
+        E_DEPRECATED => array(Logger::INFO, 'E_DEPRECATED'),
+        E_USER_DEPRECATED => array(Logger::INFO, 'E_USER_DEPRECATED')
+    );
+
+    if (isset($types[$errno])) {
+        $err = "(" . $types[$errno][1] . ") File ({$errfile}, {$errline}): {$errstr}";
+        Logger::write($err, $types[$errno][0], 'global');
+    } else {
+        Logger::write("File ({$errfile}, {$errline}): {$errstr}", Logger::ERROR, 'global');
+    }
+}
+
+set_error_handler('error_handler', E_ALL);
 set_exception_handler('exception_handler');
 
 try {