Автоматическая отправка электронной версии книги после оплаченного предзаказа

Автоматическая отправка электронных книг покупателям предзаказов на 1С-Битрикс

Для проекта «Альпина» разработали очередь оплаченных предзаказов, периодическое получение ссылок на электронные версии и отправку покупателям после выхода книг.

1С-БитриксАвтоматизация e-commerceAPI-интеграцииHL-блоки

От проблемы к результату

Как мы решали конкретную задачу клиента и что получилось.

Проблема

Покупатель мог оплатить предзаказ бумажной книги до появления её электронной версии. Требовалось сохранить такую покупку и отправить электронную версию после её выхода.

Для этого нужно было связать оплату заказа, товар, доступность электронной книги и email покупателя.

Решение

Создали очередь в HL-блоке Битрикса. После оплаты в неё добавлялись товары заказа, для которых ещё не заполнена связь с электронной версией.

Настроили периодическую проверку активных записей раз в четыре часа. По данным очереди выполнялись запросы на получение ссылки с передачей идентификаторов товара, заказа и email покупателя. Доработали функционал рассылки и провели тестовую отправку.

Результат

Разработаны очередь предзаказов, периодическая проверка и получение ссылок на электронные версии. В истории работ зафиксированы переносы, тестовые заказы, тестовая рассылка и последующие корректировки логики.

По проблемным сценариям анализировали логи и содержимое HL-блока, проверяли добавление записей и запуск агента. Статистика доставки писем и экономии рабочего времени в задаче не приведена.

Альпина · автоматизация e-commerce

Книга оплачена заранее, электронная версия выйдет позже

Покупатель оформляет и оплачивает бумажную книгу до её выхода. Электронная версия в этот момент может быть ещё недоступна. Системе требовалось сохранить связь с покупкой и вернуться к отправке после появления электронной книги.

Для проекта «Альпина» разработали очередь таких покупок и периодическую обработку. Она связывала оплату заказа с последующим получением ссылки на электронную версию.

Схема работы

От оплаты к электронной книге

Обработка активных записей очереди запускалась раз в четыре часа. Это интервал проверки, а не гарантия доставки письма за четыре часа.

Оплата заказа

После оплаты определяются товары, у которых ещё отсутствует связь с электронной версией.

Очередь в HL-блоке

Сохраняются данные товара и заказа для последующей обработки.

Периодическая проверка

Агент проверяет активные записи и выполняет запросы на получение ссылок.

Отправка покупателю

Функционал рассылки передаёт ссылки на электронные версии. В ходе работ выполнена тестовая рассылка.

Состав доработки

Что нужно было согласовать в коде

Условие попадания в очередь

Оплата заказа и отсутствие свойства-связки с электронной книгой определяли добавление записи. Корректность этой логики проверяли на тестовых заказах.

Данные для запроса

Для получения ссылки использовались идентификаторы товара и заказа, а также email покупателя, привязанный к заказу.

Проверка отложенных покупок

Агент обрабатывал активные записи HL-блока с периодичностью раз в четыре часа. В ходе отладки проверяли запуск и поля записей.

Реализация и проверка

Проверяли всю цепочку на тестовых заказах

01

Разработали очередь

Создали HL-блок, формирование записей по оплаченным заказам и заполнение необходимых полей.

02

Подключили получение ссылок

Реализовали отправку запросов и доработали обновление свойств записей очереди.

03

Настроили периодический запуск

Проверяли работу агента, его активацию и деактивацию, логировали выполнение.

04

Проверили отправку

Создавали тестовые заказы, проверяли появление записей и выполнили тестовую рассылку.

05

Доработали проблемные сценарии

Анализировали логи и HL-блок, корректировали добавление записей и логику очереди. В дальнейшем добавили изменения для книг из определённых разделов.

Выполненные работы

Предзаказы получили отложенную обработку

01

Очередь после оплаты

Разработано сохранение покупок, для которых электронная версия ещё не связана с товаром.

02

Периодическое получение ссылок

Реализован агент, проверяющий активные записи и выполняющий запросы по товарам и заказам.

03

Проверенная тестовая рассылка

В задаче зафиксированы тестовая отправка, переносы кода, проверка заказов и последующие исправления.

Автоматизация вашего магазина

Свяжем события заказа с последующими действиями

Если действие должно произойти позже оплаты, сначала определим событие запуска и условие готовности: выход цифрового товара, появление документа или подтверждение внешнего сервиса.

Затем спроектируем очередь, периодическую обработку и контроль ошибок. Для обсуждения пригодится пример заказа и описание того, что покупатель должен получить после него.