diff --git a/intaro.intarocrm/classes/general/ICMLLoader.php b/intaro.intarocrm/classes/general/ICMLLoader.php
index d8d74fbb..351afa4a 100644
--- a/intaro.intarocrm/classes/general/ICMLLoader.php
+++ b/intaro.intarocrm/classes/general/ICMLLoader.php
@@ -23,14 +23,24 @@ class ICMLLoader {
     protected $logFile = '/bitrix/catalog_export/i_crm_load_log.txt';
     protected $fpLog;
     
+    
     protected $measurement = array (
-        'mm' => 1,
-        'cm' => 10,
+        'mm' => 1,          // 1 mm = 1 mm
+        'cm' => 10,         // 1 cm = 10 mm
         'm' => 1000,
-        'mg' => 0.001,
+        'mg' => 0.001,      // 0.001 g = 1 mg
         'g' => 1,
         'kg' => 1000,
     );
+    
+    protected $measurementLink = array (
+        'mm' => 'mm',
+        'cm' => 'mm',
+        'm' => 'mm',
+        'mg' => 'g',
+        'g' => 'g',
+        'kg' => 'g',
+    );
 
     public function Load()
     {
@@ -375,6 +385,7 @@ class ICMLLoader {
                                         
                                         if (array_key_exists($key, $this->propertiesUnitProduct[$id])) {
                                             $resPropertiesProduct[$key] *= $this->measurement[$this->propertiesUnitProduct[$id][$key]];
+                                            $resPropertiesProduct[$key . "_UNIT"] = $this->measurementLink[$this->propertiesUnitProduct[$id][$key]];
                                         }
                                     }
                                 }
@@ -424,6 +435,7 @@ class ICMLLoader {
                                                 
                                                 if (array_key_exists($key, $this->propertiesUnitSKU[$id])) {
                                                     $offer[$key] *= $this->measurement[$this->propertiesUnitSKU[$id][$key]];
+                                                    $offer[$key . "_UNIT"] = $this->measurementLink[$this->propertiesUnitSKU[$id][$key]];
                                                 }
                                             }
                                             
@@ -447,7 +459,7 @@ class ICMLLoader {
                                     $product['QUANTITY'] = $product["CATALOG_QUANTITY"];
 
                                     foreach ($resPropertiesProduct as $key => $propProduct) {
-                                        if ($this->propertiesProduct[$id][$key] != "") {
+                                        if ($this->propertiesProduct[$id][$key] != "" || $this->propertiesProduct[$id][str_replace("_UNIT", "", $key)] != "") {
                                             $product[$key] =  $propProduct;
                                         }
                                     }
@@ -513,12 +525,20 @@ class ICMLLoader {
             $offer .= "<productName>" . $this->PrepareValue($arOffer["PRODUCT_NAME"]) . "</productName>\n";
 
             foreach ($this->propertiesProduct[$iblock['IBLOCK_DB']['ID']] as $key => $propProduct) {
-                if ($propProduct != "" && $arOffer[$key] != null)
-                    $offer .= "<" . $key . ">" . $this->PrepareValue($arOffer[$key]) . "</" . $key . ">\n";
+                if ($propProduct != "" && $arOffer[$key] != null) {
+                    if ($key === "manufacturer") 
+                        $offer .= "<vendor>" . $this->PrepareValue($arOffer[$key]) . "</vendor>\n";
+                    else
+                        $offer .= "<param name=\"" . $key . "\" " . (isset($arOffer[$key . "_UNIT"]) ? 'unit="' . $arOffer[$key . "_UNIT"] . '"' : "") . ">" . $this->PrepareValue($arOffer[$key]) . "</param>\n";
+                }
             }
             foreach ($this->propertiesSKU[$iblock['IBLOCK_DB']['ID']] as $key => $propProduct) {
-                if ($propProduct != "" && $arOffer[$key] != null)
-                    $offer .= "<" . $key . ">" . $this->PrepareValue($arOffer[$key]) . "</" . $key . ">\n";
+                if ($propProduct != "" && $arOffer[$key] != null) {
+                    if ($key === "manufacturer")
+                        $offer .= "<vendor>" . $this->PrepareValue($arOffer[$key]) . "</vendor>\n";
+                    else
+                        $offer .= "<param name=\"" . $key . "\" " . ( isset($arOffer[$key . "_UNIT"]) ? 'unit="' . $arOffer[$key . "_UNIT"] . '"' : "") . ">" . $this->PrepareValue($arOffer[$key]) . "</param>\n";
+                }
             }
 
             $offer.= "</offer>\n";