This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
public:market:uniteller [22.07.15 в 11:35] scherbakov_kad.systems |
public:market:uniteller [26.01.16 в 12:48] 141.24.108.49 [Тестирование] |
||
---|---|---|---|
Line 3: | Line 3: | ||
===== Установка ===== | ===== Установка ===== | ||
+ | Внимание! Если вы установили модуль из "Магазина приложений", то пропустите первые 8 пунктов и переходите сразу к редактированию параметров платежного обработчика. | ||
- Добавьте новый способ оплаты | - Добавьте новый способ оплаты | ||
- В разделе администрирования HostCMS перейдите в раздел «Интернет-магазины» выберите ваш магазин и в появившемся окне выберите вкладку «Справочники» — «Платежные системы». | - В разделе администрирования HostCMS перейдите в раздел «Интернет-магазины» выберите ваш магазин и в появившемся окне выберите вкладку «Справочники» — «Платежные системы». | ||
Line 14: | Line 15: | ||
- Установите значение $_password — пароль из раздела «Параметры Авторизации» Личного кабинета системы Uniteller. | - Установите значение $_password — пароль из раздела «Параметры Авторизации» Личного кабинета системы Uniteller. | ||
- Установите флаг тестового режима $_sandbox = true; для тестирования оплаты. | - Установите флаг тестового режима $_sandbox = true; для тестирования оплаты. | ||
+ | - В разделе администрирования HostCMS перейдите в раздел «Типовые динамические страницы», в группе "Интернет-магазин" выберите "Интернет-магазин корзина". | ||
+ | - В настройки страницы после кода ''$oShop = Core_Entity::factory('Shop', Core_Array::get(Core_Page::instance()->libParams, 'shopId')); | ||
+ | '' вставляем <code php>// ------------------------------------------------ | ||
+ | // Обработка уведомления об оплате от Uniteller | ||
+ | // ------------------------------------------------ | ||
+ | if (Core_Array::getPost('Order_ID') && Core_Array::getPost('Status') && Core_Array::getPost('Signature')) | ||
+ | { | ||
+ | // Получаем ID заказа | ||
+ | $order_id = intval(Core_Array::getRequest('Order_ID')); | ||
+ | |||
+ | $oShop_Order = Core_Entity::factory('Shop_Order')->find($order_id); | ||
+ | |||
+ | if (!is_null($oShop_Order->id)) | ||
+ | { | ||
+ | // Вызов обработчика платежной системы | ||
+ | Shop_Payment_System_Handler::factory($oShop_Order->Shop_Payment_System) | ||
+ | ->shopOrder($oShop_Order) | ||
+ | ->paymentProcessing(); | ||
+ | } | ||
+ | }</code> | ||
+ | - В код страницы перед строкой с комментарием "Вывод информации о статусе платежа после его совершения и перенаправления с платежной системы" вставляем код <code php>// ------------------------------------------------ | ||
+ | // Обработка Uniteller | ||
+ | // ------------------------------------------------ | ||
+ | if (Core_Array::getRequest('Order_ID') && Core_Array::getRequest('status')) | ||
+ | { | ||
+ | $_REQUEST['payment'] = Core_Array::getRequest('status'); | ||
+ | $_REQUEST['order_id'] = Core_Array::getRequest('Order_ID'); | ||
+ | }</code> | ||
+ | |||
+ | {{:public:market:22-07-2015_11-34-51.png|}} | ||
+ | {{:public:market:23-07-2015_10-59-16.png|}} | ||
+ | {{:public:market:23-07-2015_10-59-49.png|}} | ||
===== Тестирование ===== | ===== Тестирование ===== | ||
Line 32: | Line 65: | ||
{{:public:market:22-07-2015_11-31-28.png|}} | {{:public:market:22-07-2015_11-31-28.png|}} | ||
+ | |||
+ | **Сумма заказа** определяет результат оплаты следующим образом: | ||
+ | * Если сумма в пределах 0 <= сумма <= 1000.00 (исключая диапазон 370.00–380.00см. следующий пункт) или 5000.00<сумма, то происходит успешная оплата. | ||
+ | * Если сумма в пределах 370.00 <= сумма < 380.00, то выдаётся ошибка «Просроченная карта»(Your payment has been declined. Expired card). | ||
+ | * Если сумма в пределах 1000.00 < сумма <= 2000.00, то выдаётся ошибка «Недостаточно средств»(Not sufficient funds). | ||
+ | * Если сумма в пределах 2000.00 < сумма <= 3000.00, товыдаётся ошибка «Ваш платеж отклонен. Пожалуйста, проверьте правильность введенной информации по Вашей банковской карте и попробуйте еще раз». | ||
+ | * Если сумма находится в пределах 3000.00 < сумма <= 5000.00, то происходит успешная оплата, но время ответа сервера увеличивается до 110 секунд. | ||
Внимание! Для корректного тестирования, сайт долже быть включен и доступен. Сама корзина должна быть доступна для неавторизованного в клиентской части и в Центре администрирования пользователя. | Внимание! Для корректного тестирования, сайт долже быть включен и доступен. Сама корзина должна быть доступна для неавторизованного в клиентской части и в Центре администрирования пользователя. |