Компания B2C Платежи и Логистика обратилась ко мне с просьбой сделать модуль (страничка в Маркете) интеграции их сервиса с магазинами на Битриксе. В этом мини-кейсе я опишу и как его использовать, и с какими сложностями пришлось столкнуться, работая на конечного клиента (пользователя модуля), а не для галочки. Проект выполнен в сотрудничестве с Александром Гусевым.
Особенности модуля
Большинство особенностей появилось в новой версии 2.0, так что, если у кого-то версия старая - пожалуйста, обновитесь.
1. Модуль максимально лоялен к пользователю. Предлагает варианты доставки по индексу. А если он не введен, то по названию города.
2. Позволяет рассчитывать стоимость доставки не только по весу, но и по объему (новое).
3. Позволяет включить Почту России в варианты доставки (новое).
4. Заказы для доставки компанией B2Cpl автоматически выгружаются на сервер компании и поступают в оборот (новое).
5. Присутствует обратная связь, показывающая в админ.части внутренний статус B2Cpl (новое). При желании это может быть вынесено и в публичную часть (не входит в данный модуль):
6. Отправленный на сервер B2Cpl заказ возвращает файл стикера, который можно удобно скачать и распечатать чтобы потом наклеить на посылку для передачи курьеру B2Cpl (новое):
Как правильно настроить модуль
1. Итак, вы ознакомились со службой, поняли, что вас оно полностью устраивает, заключаете с компанией договор, и начинаете работать.
2. Устанавливаете модуль посредством кнопки "Установить". У вас должны быть активны обновления вашей лицензии Битрикс, и наличие модуля Магазина обязательно конечно же.
3. В разделе "Настройки магазина / Автоматизированные службы доставки" после установки модуля появится новая неактивная служба доставки. (путь Рабочий стол / Магазин / Настройки магазина / Службы доставки / Автоматизированные)
4. Переходим в Службу. Мы видим несколько вкладок. Пробежимся по важным.
4.1. Базовая конфигурация. Включают название, описание, сортировку в списке доставок и (в последних версиях Битрикс) еще и изображение Службы.
4.2. Настройки доставки. Это уже обязательные настройки, которые вам необходимо внести.
ID клиента и ключ вам выдают при заключении договора. Для тестирования можете использовать тестовые доступы: test / test. (new) Символьный код для объема. Это код свойства инфоблока товаров, где содержится объем каждого товара. Требуется на случай, если вы работаете с объемными товарами и расчет стоимости будет зависеть от объема. Подробности уточняйте в компании. Если объем не используете, оставьте поле пустым. (new) Включить Почту России. В вариантах доставки появится почта России, простая посылка. За деталями обращайтесь в компанию. (new) ПВЗ (пункты выдачи) из окрестностей. Если опция указана, то в вариантах доставки будет указываться ПВЗ столичных городов для данного города. К примеру, для пригорода Новосибирска будет выведен ПВЗ Новосибирска. Если опцию убрать, то ПВЗ для данного пригорода указан не будет вовсе. (new) Статус заказа для выгрузки. Чтобы вам вручную не выгружать заказы сайта в кабинет B2Cpl, введена данная опция. Как только статус заказа поменяется на указанный, информация о заказе улетит в кабинет, и сотрудники B2Cpl возьмут его в оборот.
4.3. Привязка к свойствам заказа. Собственно здесь, вам нужно прописать в каком свойстве заказа содержится телефон (требуется, если вы будете использовать выгрузку на сайт B2Cpl) и где будет содержаться уже упомянутый внутренний статус B2Cpl.
Не забудьте активировать Службу после внесения изменений для начала работы!
Ну и наконец. Вам нужно убедиться, что у вас присутствует свойство заказа Индекс, отмеченное соответствующей галочкой:
И конечно же Местоположение, также отмеченное соответствующей галочкой:
Часть для разработчиков
О тонкостях и плюсах модуля можете почитать ниже. В какие сложности мы уперлись, и какие вопросы для решения перед собой поставили
1. Клиент должен ставить одной кнопкой и вбивать всего несколько опций.
2. У него может не быть базы индексов, или быть неполная. Он не должен заботиться об этом.
3. Мы не должны править шаблоны и лишать клиента обновлений.
Первый вопрос был решен просто, так как модуль всего лишь добавлял автоматизированную службу доставки. А вот второй вопрос без третьего уже решить сложнее.
Но мы решили это сообща с самой компаний. Обрисовав им ситуацию, что модулем (и сервисом) будут пользоваться тем охотнее, чем меньше он мороки доставит при установке. Таким образом, с их стороны был предоставлен функционал определения индекса по названию города!
Ну все, казалось бы, проблема решена: есть индекс - узнаем цену доставки, нет индекса - узнаем по городу. Но встала еще одна проблема - город может вернуть несколько индексов. Соответственно, в таком случае надо уведомить пользователя
Если город будет не найден, модуль тоже услужливо ответит посетителю
И даже после этого опять столкнулись со сложностями - индекс после предупреждения введен пользователем, но как обновить форму заказа, отправив запрос на сервер доставки? Но и это было решено автоматически и без правки шаблона - ищется поле индекса и на него вешается js-event blur.
Вот как-то так галопом по модулю скачивайте пользуйтесь, изучайте, и делайте такие же удобные модули. Или обращайтесь к нам
Антон , написал на сайте. Там проблемы у Вас с регистрацией пользователей. Задал вопрос по быстрой форме.
Я проверил, проблема с загрузкой профилей в bitrix/modules/b2cpl.delivery/include.php Если закомментировать 'PROFILES' => self::GetProfiles(), то загружаются настройки, но без вкладки профили и платежные системы.
Антон , я создал заявку с вопросом. Но никаких уведомлений не получил о том, что заявка в рассмотрении. Закрыл вкладку, а теперь и вовсе не могу найти свой вопрос, где задавал.
Юрий, заявка поступила, она в работе в порядке очереди. Уведомление на почту вам придет при ответе (хотя и сама копия тикета должны была прилететь).
Может дело в спаме. Как вариант - вы можете создать еще один тикет с другой почты. Ну и самое главное - максимально опишите проблему в тикете, чтобы решить максимально оперативно все. Может сразу доступ предоставьте.
К сожалению, я вырос тот период, когда смогу каждого из вас обслуживать персонально. Прошу понять.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».