Какие файлы покупатель получит по заказу?
Можно ли передать покупателю счёт и закрывающие документы через кабинет так, чтобы он всегда получал актуальные файлы своего заказа? Для этого при приёмке проверяют состав документов, связь с покупателем и замену версии после исправлений, чтобы удобная кнопка скачивания открывала человеку нужный файл именно его заказа.
Ниже — чек-лист для магазина на 1С-Битрикс, который продаёт организациям, а файлы получает из учётной системы. Электронное подписание остаётся за границами разбора. Начните с перечня того, что реально выдаёт бухгалтерия, поскольку слово «документы» в задании не объясняет ни момент появления файла, ни его назначение для клиента. Перечень превращают в понятные названия в кабинете. У каждого вида определяют источник и событие выдачи, чтобы покупатель не ждал закрывающий документ сразу после оформления ещё не исполненного заказа. Так содержание кабинета связывают с работой компании.
- Счёт на оплату. Укажите, когда его можно получить и что происходит после изменения суммы или реквизитов. Если клиенту требуется новая версия, старый счёт легко отличить от актуального.
- Документ по отгрузке или выполнению. Бухгалтерия называет файл и событие его появления. Сайт показывает его после получения нужных данных, а не просто потому, что заказ перешёл на следующий экран.
- Дополнительные вложения. Спецификацию или иной файл включают отдельно, если он действительно нужен покупателю. Внутреннюю переписку и служебные заметки не превращают в доступные вложения.
- Назначение выдачи. В задании различают скачивание файла и полноценную работу с электронным документооборотом. Если требуется подписание, его описывают как самостоятельную задачу с участием бухгалтерии.
На странице заказов 1С-Битрикс есть действие «Печать документов». Это функция для сотрудника магазина, поэтому её наличие нельзя принимать за готовую выдачу тех же файлов покупателю: клиентский кабинет и условия доступа исполнитель показывает отдельно.
Документ связан с нужным заказом
Файл принадлежит не общей папке покупателя, а определённому заказу и виду документа. Номер на экране помогает человеку выбрать покупку, но при передаче из учёта сайту также нужна устойчивая связь, которая сохранится после повторной загрузки, изменения суммы или появления нового вложения. Иначе документ трудно найти. Предпочтительнее показывать его в подробностях заказа, чем собирать все вложения в один длинный список без объяснения, к чему они относятся. Для покупателя тогда меньше риск оплатить похожий счёт или отправить бухгалтерии файл по другой покупке.
- Принадлежность заказу. Сотрудник открывает документ в исходной системе, а заказчик видит тот же номер и содержание в кабинете. Проверяют товарный состав и сумму, а также организацию, которой адресован файл.
- Повторная передача. Один и тот же документ после повторного обмена не создаёт несколько одинаковых кнопок. Исполнитель объясняет, как сайт узнаёт уже полученное вложение.
- Сведения об отгрузке. В документации Битрикс поле «Номер д/о» означает номер документа отгрузки. Оно помогает обсудить с исполнителем, какое обозначение связывает файл с операцией, но подпись для клиента лучше написать понятными словами.
- Дата документа. В том же списке есть «Дата документа отгрузки». Её отличают от момента загрузки файла на сайт: новая передача старого документа не делает сам документ новым.
Совпадения названия мало. В кабинете по похожим заказам лучше показывать несколько различимых признаков, чтобы клиент узнавал покупку без открытия каждого вложения. Номер, дата и назначение документа подсказывают больше, чем имя файла, которое сформировала учётная программа.
Право сотрудника связано с организацией
Вход по паролю отвечает на вопрос, кто открыл кабинет, а доступ к документам — какие заказы этот человек вправе видеть. Разделение существенно для продаж организациям: сотрудник может обслуживать разные покупки, покинуть компанию или получить доступ только к части операций, хотя его учётная запись на сайте продолжит существовать.
- Первоначальное назначение. Заказчик называет, кто привязывает сотрудника к организации и на каком основании. Простого совпадения написанного пользователем названия недостаточно для выдачи документов.
- Несколько организаций. Если такой сценарий нужен, документы разделяют по выбранной организации. Переключение в кабинете меняет и список заказов, и право на скачивание вложений.
- Состав полномочий. Доступ только к собственным заказам и доступ ко всем заказам компании — разные решения. Для первого запуска предпочтительнее меньше прав, поскольку позднее проще разрешить нужные действия, чем разбирать уже раскрытые файлы.
- Отзыв доступа. После отзыва полномочий кабинет перестаёт выдавать сотруднику документы, к которым он имел доступ от имени организации. Сохранённая ссылка также проходит повторную оценку прав.
Границы доступа задаёт владелец. В рекомендациях OWASP по авторизации предлагается выдавать минимум необходимых прав и закрывать доступ, если разрешающее правило не найдено. Для заказчика отсюда следует простой критерий: исполнитель умеет объяснить, почему именно этот сотрудник получает именно этот документ. Права уточняют для конкретного заказа. В заказе Битрикс поле «Тип плательщика» характеризует тип покупателя, но право конкретного сотрудника на файл требуется определить отдельно.
Что связывает сотрудника с файлом
Учётная запись
Кто вошёл в кабинет
Организация
От чьего имени сотрудник работает
Заказ
Какая покупка ему доступна
Документ
Какой файл он вправе скачать
Скрытая кнопка не защищает прямую ссылку
Страница может скрыть чужой заказ, а файл останется доступным по своему адресу, поэтому контроль затрагивает само скачивание, включая сохранённые ссылки и запросы после выхода из кабинета. Защищённый список иначе только маскирует открытое вложение. Это серьёзная ошибка. OWASP отдельно рекомендует защищать статические ресурсы и оценивать разрешение на каждый запрос. Право на скачивание должен проверять сервер, а скрытая кнопка только управляет тем, что видно на странице.
- Выход из кабинета. Адрес документа, открытый в новом сеансе без входа, не выдаёт закрытый файл. Защиту проверяют на тестовых данных, с которыми безопасно работать при демонстрации.
- Другой покупатель. Сохранённая ссылка на первый заказ не открывает документ пользователю, которому этот заказ недоступен. Проверка касается содержимого ответа, а не только текста ошибки на экране.
- Изменённый идентификатор. На тестовом наборе исполнитель меняет обозначение документа в запросе и показывает отказ в чужом доступе. Демонстрацию проводят в кабинете, который разрабатывают, на согласованных тестовых данных.
- Управляемое хранение. Подрядчик объясняет, где находятся файлы и как к ним применяется правило доступа. Переименование папки или длинное случайное имя не принимают как единственную защиту.
Случайный адрес усложняет угадывание. Однако в разборе OWASP о прямых ссылках на объекты сложные идентификаторы рассматриваются лишь как дополнительная мера: права на сам объект всё равно нужны. Поэтому в задании разумнее требовать отказа при чужом доступе, чем конкретного вида длинной ссылки.
Исправленный файл получает понятную версию
После изменения заказа покупатель может вернуться к счёту, который скачал раньше. Кабинет помогает ему увидеть, какой документ действует сейчас, если новая версия явно отличается от прежней, а её появление связано с решением ответственного сотрудника и передачей из учёта. Заменять молча опасно. По прежней подписи клиент решит, что перед ним тот же файл, хотя сумма или реквизиты уже изменились. Для магазина лучше открыто отметить замену, чем надеяться, что покупатель сам заметит различие внутри вложения.
- Правило актуальности. Бухгалтерия определяет, какой файл выдавать после корректировки. Сайт не выбирает его только по самому позднему времени загрузки, если последняя передача могла быть повтором.
- Отличимая замена. Рядом с документом появляется понятный признак обновления. Если старые версии остаются доступны, они получают заметную отметку и отдельное назначение.
- Обновление ссылки. После исправления из кабинета скачивается актуальное содержимое. Исполнитель показывает, какая версия приходит по сохранённому адресу и соответствует ли она принятому правилу выдачи.
- Разные даты. Поле «Дата изменения» в списке заказов Битрикс относится к заказу. Его нельзя автоматически назвать датой исправления документа, если файл формируется и передаётся отдельным процессом.
Историю оставляют по необходимости. Для клиента предпочтительнее один ясно обозначенный актуальный документ, чем набор одинаковых файлов, среди которых он выбирает наугад. Если компании нужна выдача прежних версий, причина такого выбора и подписи к ним входят в задание.
Как проходит замена документа
Корректировка
Ответственный меняет сведения в учёте
Новый документ
Файл получает связь с заказом и версией
Передача
Сайт принимает файл без дубля
Выдача
Клиент узнаёт актуальную версию
Отсутствие документа тоже получает объяснение
Пустое место возле заказа не объясняет, почему файла нет: бухгалтерия ещё готовит документ, передача из учётной системы задержалась или сотрудник покупателя утратил право на этот заказ. Эти состояния требуют разных действий, поэтому клиенту показывают понятный ответ, а сотруднику — причину, по которой стоит заняться заказом. Молчание увеличивает число уточнений. Вместо обещания скачать всё сразу кабинет сообщает то, что компания действительно может подтвердить по текущему состоянию документа.
- Документ ещё не создан. Клиент видит, после какого события он появится, если компания может назвать это событие. Неработающая кнопка не изображает готовый файл.
- Передача не завершена. Сотрудник получает сведения о задержке и знает, куда обратиться. Клиенту можно предложить запросить документ у ответственного, не показывая внутреннюю техническую ошибку.
- Право отсутствует. Система закрывает содержимое файла и не раскрывает сведения чужого заказа в пояснении отказа. Способ запроса доступа определён владельцем кабинета.
- Повтор после сбоя. Передача возобновляется с сохранением принадлежности заказу и версии. Уже загруженные документы не пропадают при неудачной загрузке следующего вложения.
Обещанный срок появляется только там, где компания умеет его выполнять. Если готовность зависит от бухгалтерии, лучше описать событие выдачи и канал обращения, чем назначать на странице срок, который ответственный отдел не подтверждал. Как связать сайт с учётной системой, разобрано отдельно в статье об обмене заказами с 1С.
Пройдите один полный сценарий приёмки
Для приёмки подготовьте тестовые заказы с различимыми документами и учётные записи с разными правами, чтобы исполнитель показал разрешённое скачивание и отказ на том же наборе данных. Успешное открытие своего файла — лишь начало. Демонстрация охватывает замену документа, повторную передачу и отзыв доступа, поскольку именно эти события меняют результат после первого удачного входа в кабинет. Тестовые данные сохраняют для повтора. Найденную ошибку исправляют и повторяют затронутый шаг вместе с соседними действиями.
- Согласуйте ожидаемый доступ. Для каждого участника перечислите доступные заказы и виды файлов. Заказчик принимает это правило до демонстрации, чтобы спор о правах не возникал в момент скачивания.
- Откройте собственный документ. Содержание соответствует заказу, а подпись помогает узнать вид и версию. Файл открывается после скачивания и сохраняет нужные сведения.
- Покажите отказ на чужой файл. Исполнитель использует сохранённую ссылку и меняет идентификатор на тестовом заказе. Система не выдаёт документ тому, у кого нет права его получить.
- Замените документ в учёте. В кабинете появляется актуальная версия с нужной подписью. Повтор обмена не создаёт лишнего вложения и не возвращает прежний файл.
- Отзовите доступ сотрудника. Проверяют список заказов и прямую ссылку на документ. Кабинет отклоняет новый запрос на скачивание после отзыва прав, даже если вкладка осталась открыта.
- Завершите проверку отсутствующего файла. Покупатель понимает следующий шаг, а сотрудник может выяснить причину задержки. Зафиксированный результат передают тому, кто будет обслуживать кабинет после запуска.
Проверку повторяют после изменений. Если обновился способ хранения, обмен с учётом или правило доступа, прежняя демонстрация больше не описывает новые условия выдачи. Для приёмки такой доработки сохранённый тестовый набор полезнее длинной инструкции, которую никто не может воспроизвести.
Какой результат принимают
Разрешённый доступ
Свой файл открывается с верным содержимым
Чужой документ
Ссылка не выдаёт закрытый файл
Изменение версии
Из кабинета получают актуальный документ
Отзыв полномочий
Прежнее право перестаёт разрешать скачивание
Открытый файл трудно вернуть обратно
Ошибку в подписи можно исправить на странице, а уже скачанный чужой документ сайт не заберёт с компьютера получателя. Поэтому выдачу файлов принимают до запуска кабинета, когда ещё можно безопасно проверить границы доступа и устранить расхождения на тестовых данных. Цена ошибки — раскрытые чужие сведения. Устаревший счёт тоже продолжает жить вне сайта, поэтому заметная замена версии и понятный порядок обращения помогают уменьшить путаницу при следующем скачивании.
Если исполнитель показывает только красивый список вложений, приёмка ещё впереди. Начинать доработку кабинета разумнее с прав на заказ и правил выдачи документов: после их согласования интерфейс уже объясняет покупателю готовый порядок работы, а не скрывает вопросы, на которые компания не ответила.
Источники и полезные ссылки
- 1С-Битрикс: список заказов, печать и поля документов ↗
- OWASP: права на каждый запрос и защита файлов ↗
- OWASP: защита доступа при смене идентификатора объекта ↗
Интерфейсы и возможности сервисов могут меняться. Перед настройкой сверяйтесь с актуальной документацией.


