Новая eCommerce платформа D7: заказы, холдинг, персональный раздел презентация

Содержание

в приложении Bitrixconf Ждем ваши вопросы: онлайн на странице трансляции Пишем вопросы здесь #bitrixconf

Слайд 1Юрий Волошин, Алексей Кирсанов
1C-Битрикс
Новая eCommerce платформа D7:
заказы, холдинг, персональный раздел


Слайд 2
в приложении Bitrixconf
Ждем ваши вопросы:
онлайн на странице трансляции

Пишем
вопросы
здесь
#bitrixconf


Слайд 3Процедура оформления заказа D7


Слайд 5

Переход на eCommerce D7

Реконструкция всей процедуры заказа

Повышение конверсии интернет-магазина
Задача изменений


Слайд 6A/B тестирование
маркетинговый метод используется для оценки и управления конверсией сайта
«А»

― это то, как у вас есть сейчас (старый дизайн). «B» ― это то, с чем вы будете экспериментировать (новый дизайн).

Для половины показывается дизайн «А», для другой половины ― дизайн «B».

И по каждому из вариантов замеряются все ключевые показатели, в первую очередь ― конверсия.

Слайд 7
A/B-тестирование новой процедуры заказа


Слайд 8А/В-тестирование оформления заказа
1,2%
Конверсия
0,9%
Конверсия
А
В


Слайд 9Оформление заказа
Требования времени
Требования клиентов
Новые возможности
Новая архитектура D7
Адаптивная верстка


Слайд 10Оплата и доставка в зависимости от региона
Запрашиваем у клиента только нужную

информацию
Поддержка точек самовывоза в неограниченных количествах
Карты в профиле покупателя
Множественный пересчет и уточнения параметров доставки
Показ дополнительных услуг в доставках
Автозаполнение при повторном заказе

Режим совместимости

Что нового


Слайд 11Компонент sale.order.ajax идеальный, и его не надо кастомизировать
— Орландо Виласека, разработчик


Слайд 12Службы доставки


Слайд 13Автоматическое отслеживание статусов
Синхронизация статусов
Ограничения
Дополнительные услуги
Автоматическое размещение заявки на забор груза в

службу доставки в конце дня

Службы доставки


Слайд 14Событие на расчет стоимости доставки
// в /bitrix/php_interface/init.php

EventManager::getInstance()->addEventHandler('sale', 'onSaleDeliveryServiceCalculate', 'myCalc');

function myCalc(Event $event) { /**

@var Delivery\CalculationResult $baseResult */ $baseResult = $event->getParameter("RESULT"); /** @var Shipment $shipment */ $shipment = $event->getParameter("SHIPMENT"); $deliveryId = $event->getParameter("DELIVERY_ID"); $price = $baseResult->getDeliveryPrice() + 100; $baseResult->setDeliveryPrice($price); $event->addResult( new EventResult( EventResult::SUCCESS, array('RESULT' => $baseResult) ) ); }

Слайд 15Новая служба доставки


Слайд 16// в /bitrix/php_interface/include/sale_delivery/ или /local/php_interface/include/sale_delivery/
// custom/handler.php
namespace Sale\Handlers\Delivery; use Bitrix\Sale\Delivery\CalculationResult; use Bitrix\Sale\Delivery\Services\Base; class

CustomHandler extends Base { public static function getClassTitle() { return 'Доставка по весу'; } public static function getClassDescription() { return 'Доставка стоимость которой зависит только от веса отправления'; }

Новая служба доставки - 1


Слайд 17protected function calculateConcrete(\Bitrix\Sale\Shipment $shipment) { $result = new CalculationResult(); $price = floatval($this->config["MAIN"]["PRICE"]); $weight = floatval($shipment->getWeight())

/ 1000; $result->setDeliveryPrice(roundEx($price * $weight, 2)); $result->setPeriodDescription('1 день'); return $result; } protected function getConfigStructure() { return array( "MAIN" => array( "TITLE" => 'Настройка обработчика', "DESCRIPTION" => 'Настройка обработчика',

Новая служба доставки - 2


Слайд 18 "ITEMS" => array( "PRICE" => array( "TYPE" => "NUMBER", "MIN" => 0, "NAME" => 'Стоимость

доставки за грамм' ) ) ) ); } public function isCalculatePriceImmediately() { return true; } public static function whetherAdminExtraServicesShow() { return true; } }

Новая служба доставки - 3


Слайд 19Новые ограничения


Слайд 20// в init.php
Main\EventManager::getInstance()->addEventHandler('sale', 'onSaleDeliveryRestrictionsClassNamesBuildList', 'myBuildList'); function myBuildList() { return new \Bitrix\Main\EventResult( \Bitrix\Main\EventResult::SUCCESS, array( '\ByMoonday' => '/restrictions/bymoonday.php' ) ); }
Новые ограничения

- 1

Слайд 21// в /restrictions/bymoonday.php
use Bitrix\Sale\Delivery\Restrictions; use Bitrix\Sale\Internals\CollectableEntity; class ByMoonday extends Restrictions\Base { public static function getClassTitle() { return

'По лунным суткам'; } public static function getClassDescription() { return 'Доставка будет выводится только в указанном диапазоне лунных суток'; }

Новые ограничения - 2


Слайд 22public static function check($moonday, array $restrictionParams, $deliveryId = 0) { if ($moonday

$restrictionParams['MIN_MOONDAY']
|| $moonday > $restrictionParams['MAX_MOONDAY']) return false; return true; }

protected static function extractParams(CollectableEntity $shipment) { $json = file_get_contents('http://moon-today.com/api/index.php?get=moonday'); $res = json_decode($json, true); return !empty($res['moonday']) ? intval($res['moonday']) : 0; }

Новые ограничения - 3


Слайд 23 public static function getParamsStructure($entityId = 0) { return array( "MIN_MOONDAY" => array( 'TYPE' => 'NUMBER', 'DEFAULT'

=> "1", 'LABEL' => 'Минимальные сутки' ), "MAX_MOONDAY" => array( 'TYPE' => 'NUMBER', 'DEFAULT' => "30", 'LABEL' => 'Максимальные сутки' ) ); } }

Новые ограничения - 4


Слайд 24Новые дополнительные услуги


Слайд 25// в init.php Main\EventManager::getInstance()->addEventHandler('sale', 'onSaleDeliveryExtraServicesClassNamesBuildList', 'myBuildList'); function myBuildList() { return new Main\EventResult(Main\EventResult::SUCCESS, array('\MyService' => 'folder/myservice.php')); }
Новые

дополнительные услуги

class MyService extends Sale\Delivery\ExtraServicesBase { public function getClassTitle() { return "Моя услуга"; } public function getCost() { return 1000; }

1.

2.


Слайд 26Платежные системы


Слайд 27Возврат денег
Тонкая настройка банковского счета
B2B платежи в Яндекс
Кастомизация шаблонов платежных систем
Ограничения
Не

нужно вводить одни и те же параметры для разных платежных систем
Единая точка входа для ответов платежных систем

Платежные системы


Слайд 28Код платежа (ID) vs. Номер платежа
Номер платежа:
номер заказа/порядковый номер платежа
Для

заказа с ID=49 и номером 49 номер платежа будет 49/1
Для заказа с ID=49 и номером 135_3 номер платежа будет 135_3/1
Кастомизация шаблонов на событиях

Номера оплат


Слайд 29Кастомизация шаблона

name="ShopID" value=""
type="hidden">
* * *

Слайд 30Обработчики – классы + вспомогательные файлы
Наследование, интерфейсы
Базовые классы
PaySystem\BaseServiceHandler
PaySystem\ServiceHandler
Пути
/local/php_interface/include/sale_payment/
/bitrix/php_interface/include/sale_payment/
Системные обработчики
/bitrix/modules/sale/handlers/paysystem
Новая платежная система


Слайд 31Новые ограничения
Main\EventManager::getInstance()->addEventHandler('sale',
'onSalePaySystemRestrictionsClassNamesBuildList', 'myBuildList');


Слайд 32Холдинговая структура


Слайд 33
На смену отдельным каталогам для каждого города приходит единый каталог

Город покупателя

влияет на время доставки, типы платежных сервисов и юридическое лицо выполняющее все процедуры

Холдинговая структура
торговля на всю страну


Слайд 34Автоматическое назначение компании и ответственного в зависимости от города местонахождения покупателя

выбирается:
юридическое лицо
ответственный менеджер
платежные системы и реквизиты, привязанные к городу покупателя
служба доставки, привязанная к городу покупателя
Правила обработки частичной оплаты и отгрузки

Холдинговая структура (этап 3 из 4)


Слайд 35Схема работы

ОПЛАТА

ЗАКАЗ

ОПЛАТА

ОТГРУЗКА

КОМПАНИЯ 1

КОМПАНИЯ 2

КОМПАНИЯ 3
ОТГРУЗКА


Слайд 36ООО Моя компания
г. Москва
физические лица
ИП Антон Компотов
г. Москва
юридические лица
ООО Максим и

Ко
г. Калининград

Настраиваем: компании


Слайд 37Настраиваем: компании - 1


Слайд 38Настраиваем: платежные системы


Слайд 39Оформляем заказ


Слайд 40Пользовательские правила
Main\EventManager::getInstance()->addEventHandler('sale',
'onSaleCompanyRulesClassNamesBuildList', 'myBuildList');


Слайд 41Персональный раздел


Слайд 42Единый комплексный компонент всего персонального раздела, расширены сценарии использования
Все компоненты написаны

с использованием нового ядра D7
Поддерживается разделение заказов
Поддерживаются сценарии работы с пополнением счета и возможность пополнить счет без оформления заказа
Адаптивный дизайн

Персональный раздел


Слайд 43Мои заказы
Оплата
Смена способа оплаты
Статус доставки
Поддержка множественных оплат и отгрузок

Повторение заказа
Отмена заказа


Слайд 44Текущий внутренний счет
Возможность пополнить
Оплата заказов с внутреннего счета
Покупка денег


Слайд 45Подписка на отсутствующие товары


Слайд 46
Новые возможности скидок
В следующей части
Кастомизация административного раздела
Автоматизация
1
2
3


Слайд 47Спасибо за внимание!
Вопросы?


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

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


Для правообладателей

Яндекс.Метрика