Дело в том, что если мы дергаем заказ не текущего пользователя, на уровне запроса ничего не вернется. Я предлагаю такую проверку вынести в сам код (см. скрин). Это развяжет руки, так как посередине находится событие OnSaleComponentOrderOneStepFinal, куда можно будет внедряться и разрешать текущему пользователю смотреть заказ/не смотреть (меняя по ссылке arOrder).

UPD: На деле особо рук не развязало, так как идет сверка с USER-GetID все же. Вот было бы хорошо до вызова OnSaleComponentOrderOneStepFinal делать проверку и запоминать во флаге, с возможностью в OnSaleComponentOrderOneStepFinal этот флаг переопределить.
В чем суть - пытаюсь дать возможность создавать гостям заказ (это можно), НО если указываемый мыл уже есть в базе, то создавать под пользователем этого мыла. И вот на данном шаге мне гостю надо либо разрешить смотреть заказ, либо запретить (проверяю в OnSaleComponentOrderOneStepFinal
по сессионной переменной.
1. Выводить сообщение типа: "Такой e-mail уже существует. Авторизуйтесь.".
2. Предлагать пользователю авторизоваться, например во всплывающей AJAX форме авторизации. Если забыл пароль, то предлагать напомнить.
3. Автоматически авторизовывать пользователя при оформлении заказа (тут немного страдает безопасность, но для некоторых сайтов это приемлемо).
P.S. Хотя да, идею может немножко спутал. Тут речь о просмотре заказа. Пардон.