Перехват выгрузки из 1С

Определяем функцию, которая будет копировать файлы в собственную директорию

function load1CExchangeToMyDir($catalogName = '1c_exchange_tmp',$fileSize = 0){
global $APPLICATION;
if($APPLICATION->GetCurPage() == '/bitrix/admin/1c_exchange.php'){

if (
$_GET['mode'] == 'file'
) {
$filename = preg_replace("#^(/tmp/|upload/1c/webdata)#", "", $_GET["filename"]);
$filename = trim(str_replace("\\", "/", trim($filename)), "/");
$ABS_FILE_NAME = $_SERVER['DOCUMENT_ROOT'] . '/upload/' . $catalogName . '/' . $filename;
$DATA = file_get_contents("php://input");
CheckDirPath($ABS_FILE_NAME);
if ($fp = fopen($ABS_FILE_NAME, "ab"))
$result = fwrite($fp, $DATA);
if(fileSize > 0){
if (file_exists($ABS_FILE_NAME) && filesize($ABS_FILE_NAME) > $fileSize)
unlink($ABS_FILE_NAME);
}
}

}
}

При обмене приходящие файлы будут копироваться в директорию /upload/$catalogName/. $fileSize указываем, если нужно ограничить размер загружаемых файлов

Сам вызов метода размещаем в событие пролога:

AddEventHandler("main", "OnBeforeProlog", "OnBeforePrologHandler");
function OnBeforePrologHandler() {
load1CExchangeToMyDir('1c_exchange_tmp');
}