$arResult["SECTIONS"][] = array(
"ID" => $arSection["ID"],
"DEPTH_LEVEL" => $arSection["DEPTH_LEVEL"],
"~NAME" => $arSection["~NAME"],
"~SECTION_PAGE_URL" => $arSection["~SECTION_PAGE_URL"],
);
и в блоке while делаем проверку - если изображение есть - получаем его url, если нет - прописываем url к загрушке
Возможно в новой версии с использованием не ниже php 5.6 с начала 2018 года произошли какие то изменения в ядре и статья не стала актуальна.
pull* пока для внутренних нужд. mobile - для показа приложений в мобильном аппе. про это был целый вебинар
Т.е. на первом шаге вы отправляете xml и получаете результат - она загружена и все ок, а на втором шаге сервер банка обращается к вам и говорит сообщает данные.
Либо вы должны знать адрес (должен быть известен), и после получения json-ответа от банка туда нужно отправить или "успешный json" или "ошибку json"