Обработчик должен принимать файл в исходной структуре поставщика, находить соответствие каждой строки нашему товару по артикулу или штрихкоду и переписывать стоимость и складской остаток. Незнакомые позиции, которых пока нет в каталоге, следует собирать в отдельный отчёт для ручной проверки, а не заводить автоматически. Пропал товар из присланной выгрузки — его остаток опускается до нуля, чтобы покупатель не заказал отсутствующее.
Здесь важнее всего предсказуемость, а не скорость. По итогам каждого прогона нужен внятный журнал: сколько записей разобрано, сколько обновлено, что не совпало и по какой причине. Планируем запускать загрузку по расписанию и вручную при получении нового прайса. Обязательно учтите, что у поставщиков различаются порядок столбцов, разделители дробей и кодировки.