Разовый скрипт «отправить XML на FTP» живёт до первого изменения схемы на той стороне. Магазину нужны профили: какой каталог, какой склад, какие статусы заказа, кто запускает по расписанию.
1С, Яндекс Маркет, Ozon, фиды агрегаторов — разные протоколы, одна дисциплина. Не класть ключи в шаблон. Не писать транспорт в init.php. Не считать, что «на копии с тремя товарами проверили — на бою так же».
Остатки и цены разъезжаются, когда в одном профиле склад, а в заказе другой, или когда выгрузка трёт то, что только что пришло из 1С. Перед правкой смотрят, какой шаг реально пишет данные, а не какой чекбокс стоит в форме.
Модули Акрит как раз про то, чтобы профиль, лог и повторный запуск были штатными. Свой curl имеет смысл, когда протокола ещё нет. Когда протокол есть — профиль и журнал дешевле самописной обвязки, которую через год сопровождает другой человек.
После выкладки обмена нужен новый прогон, не старый лог «ну вчера же уходило». Опкеш и старый php на диске — отдельная история, её путают с «модуль сломался» чаще, чем хотелось бы.
