zuve
Batch вызывается только один раз. Перепроверяла проблема действительно не в ней. Дублирующее поле создается при вызове svc=item/update_custom_field. 
Код: 
include_once('WialonConnection.php');
        //****************************Авторизация********************************************
                $url = 'hst-api.wialon.com';
                $wialon = new WialonConnection( $url );
        $ansLoginJson = $wialon -> Login($_REQUEST["login"], $_REQUEST["password"]);     
        $ansLogin = json_decode( $ansLoginJson, true );
        $wialon -> SetSid( $ansLogin[eid] );
        //***********************************************************************************
        
        
        //****************************Получение информации об объекте************************
        $answerSearchJson = $wialon -> SearchItemsById( $_REQUEST["id"], "9");
        echo $answerSearchJson."<br>";
        //***********************************************************************************
        
        
        //****************************Создание произвольного поля*****************************
        echo "----------------------------------------------------------------------------<br>";
        $answerCustmoJson = $wialon -> CreateCustomField( $_REQUEST["id"], 'test', 'test' );
        echo $answerCustmoJson."<br>";
        echo "----------------------------------------------------------------------------<br>";
        //***********************************************************************************
        
        
        //****************************Получение информации об объекте************************
        $answerSearchJson = $wialon -> SearchItemsById( $_REQUEST["id"], "9");
        echo $answerSearchJson."<br>";
        echo "----------------------------------------------------------------------------<br>";
        //***********************************************************************************
        
        
        //Второе произвольное поле создается уже после выполнения этого кода, исходя из ответа сервера
        
        // Функция создания произвольно поля(без каких либо циклов)
        function CreateCustomField( $itemId, $nameField, $valueField ){
            $url = $this -> url."item/update_custom_field&sid=".$this -> eid;
            $params = '{"itemId":'.$itemId.',"id":0,"callMode":"create","n":'.$nameField.',"v":'.$valueField.'}';
            $params = 'params='.$params;
            $answer = $this -> SendRequest($url, $params);
            return $answer;
        }
Ответ после выполнения всего этого кода:
{"item":{"nm":"Demo01","cls":2,"id":418506,"flds":{"1":{"id":1,"n":"Статус","v":"Ремонт"},"2":{"id":2,"n":"Клиент","v":"Gurtam"},"3":{"id":3,"n":"Дата прибытия","v":"20.06.2012"},"4":{"id":4,"n":"Пункт разгрузки","v":"Воронеж"},"5":{"id":5,"n":"Водитель","v":"Иванов И.И."},"6":{"id":6,"n":"Номер таможенной декларации","v":"53049793"}},"fldsmax":0,"uacl":551903300195},"flags":9} 
----------------------------------------------------------------------------
[7,{"id":7,"n":"test","v":"test"}] 
----------------------------------------------------------------------------
{"item":{"nm":"Demo01","cls":2,"id":418506,"flds":{"1":{"id":1,"n":"Статус","v":"Ремонт"},"2":{"id":2,"n":"Клиент","v":"Gurtam"},"3":{"id":3,"n":"Дата прибытия","v":"20.06.2012"},"4":{"id":4,"n":"Пункт разгрузки","v":"Воронеж"},"5":{"id":5,"n":"Водитель","v":"Иванов И.И."},"6":{"id":6,"n":"Номер таможенной декларации","v":"53049793"},"7":{"id":7,"n":"test","v":"test"}},"fldsmax":0,"uacl":551903300195},"flags":9} 
----------------------------------------------------------------------------
За время пока я перехожу к произвольным полям объекта появляется еще одно поле с такими же параметрами.
						Gurtam Operator
www.gurtam.by