Здравствуйте
Создаю через метод батч контакт, сделку и привязываю контакт к сделке:
$result = CRest::call('batch',
array(
    'halt' => false,
    'cmd'=> array(
    "create_contact"=>  'crm.contact.add?fields[NAME]='.$sName,
    "read_contact"=>  'crm.contact.get?id=$result[create_contact][ID]',
    "user_deal"=>  'crm.deal.add?fields[CONTACT_ID]=$result[create_contact][ID]&fields[TITLE]='.$sTitle.'&fields[CATEGORY_ID]='.$deal
)));
методы объединения дубликатов:
$result = CRest::call(
    'crm.entity.mergeBatch',
    [
        'params' =>[
            "entityTypeId"=> "2",
            "entityIds"=> ["177", "175","173"]
        ],
        
    ]
);
$result = CRest::call(
    'crm.entity.mergeBatch',
    [
        'params' =>[
            "entityTypeId"=> "3",
            "entityIds"=> ["81", "89", "91"]
        ],
        
    ]
);
Объединение проходит в данном коде статично, но как можно проверить наличие дубликатов автоматически? не нахожу для этого метод. И если они есть, то объединять с помощью этого метода 
crm.entity.mergeBatch