Плагин на отсылку заказов из miniShop2 в лиды Bitrix24
switch ($modx->event->name) {
    case 'msOnCreateOrder':
        define('CRM_HOST', 'subdomain.bitrix24.ru');
        define('CRM_PORT', '443');
        define('CRM_PATH', '/crm/configs/import/lead.php'); // Путь к PHP файлу, к которому будем подлючаться
        
        define('CRM_LOGIN', 'login');
        define('CRM_PASSWORD', 'password');
        
        //
        $data = array(
            'order' => $msOrder->toArray(),
            'delivery' => $msOrder->Delivery->toArray(),
            'payment' => $msOrder->Payment->toArray(),
            'address' => $msOrder->Address->toArray(),
            'user' => $msOrder->User->toArray(),
            'user_profile' => $msOrder->UserProfile->toArray(),
        );
        $receiver_name = explode(' ', $data['address']['receiver']);
        
        //
        $post = array(
            'LOGIN' => CRM_LOGIN,
            'PASSWORD' => CRM_PASSWORD,
            'TITLE' => 'Заказ ' . $data['order']['num'],
            // 'COMPANY_TITLE' => 'Сайт',
            'NAME' => $receiver_name[0] ?: '',
            'LAST_NAME' => $receiver_name[1] ?: '',
            'COMMENTS' => $data['address']['comment'],
            'OPPORTUNITY' => $data['order']['cost'],
            'CURRENCY_ID' => 'RUR',
            'ADDRESS' => ($data['address']['country'] . ' ' . $data['address']['region'] . ' ' . $data['address']['city'] . ', ' . $data['address']['street'] . ', ' . $data['address']['building'] . ', ' . $data['address']['room'] . ', ' . $data['address']['index']),
            'PHONE_WORK' => $data['address']['phone'],
            'WEB_WORK' => '',
            'SOURCE_ID' => '8', // Источник (ID или ключ)
            'EMAIL_WORK' => $data['user_profile']['email'],

            'STATUS_ID' => 'NEW',
            'OPENED' => 'Y',
            'ASSIGNED_BY_ID' => 4, // Ответственный (ID юзера)
        );
        
        //
        if ($fp = fsockopen('ssl://' . CRM_HOST, CRM_PORT, $errno, $errstr, 30)) {
            $post_str = http_build_query($post);
            
            //
            $headers = "POST " . CRM_PATH . " HTTP/1.0\r\n";
            $headers .= "Host: " . CRM_HOST . "\r\n";
            $headers .= "Content-Type: application/x-www-form-urlencoded\r\n";
            $headers .= "Content-Length: " . strlen($post_str) . "\r\n";
            $headers .= "Connection: close\r\n\r\n";
            $headers .= $post_str;
        
            fwrite($fp, $headers);
            
            //
            $result = '';
            while (!feof($fp)) {
                $result .= fgets($fp, 128);
            }
            fclose($fp);
            
            $response = explode("\r\n\r\n", $result);
            $output[] = '<pre>' . print_r($response[0], 1) . '</pre>';
            $output[] = '<pre>' . print_r($response[1], 1) . '</pre>';
            
            // print_r($output);
            // $modx->log(1, 'orderToBitrix24 $output ' . print_r($output, 1));
        } else {
            // $modx->log(modX::LOG_LEVEL_INFO, print_r('Ошибка передачи в Битрикс 24', 1));
        }
    break;
}