Success url что это
О Робокассе наглядно
Вчера вечером добавил интерфейс взаимодействия с Робокассой в свою CMS.
Кратко о платежной системе
Робокасса — интегратор платежных систем. Она позволяет организовать прием платежей в пользу магазина через множество известных электронных валют (Webmoney, ВКонтакте, ЯндексДеньги, Деньги@Mail.Ru, RBK Money и другие), через терминалы оплаты ЭлексНет, и, самое главное — через SMS.
Доступно два варианта подключения — для юридических лиц и ИП, с выводом денег из системы на расчетный счет и для физических лиц с возможностью вывода в электронные валюты.
Регистрация
Регистрация достаточно проста. Идете на https://www.roboxchange.com/Environment/Partners/Login/Login.aspx?reg=Merchant и аккуратно заполняете все необходимые поля. После завершения регистрации подождите некоторое время (около 5 минут) и входите в систему.
Изначально Ваш аккаунт будет иметь статус «Не активен», это позволяет настроить и протестировать магазин перед включением в реальный режим.
Собственно код — отправка платежа
В форме есть поле, которое я обозначил
Для того, чтобы обработать ответ Робокассы на попытку платежа, необходимо в личном кабинете системы по адресу https://www.roboxchange.com/Environment/Partners/Login/Merchant/Administration.aspx внести данные о трех страницах, которые будут обрабатывать этот ответ.
Кроме этого необходимо заполнить два пароля, #1 и #2. Они будут нужны нам для формирования подписей. Первый — для отправки данных Робокассе, второй — для проверки данных, приходящих от нее.
Теперь вернемся к полю
Каждый раз при составлении формы запроса платежа необходимо вычислять эту подпись и передавать ее в форме.
Собственно код — обработка платежа
$id = intval($_POST[ ‘InvId’ ]); // получаем номер транзакции
$pwd2 = «Ваш_пароль_#2» ;
$sum = здесь_код_который_по_номеру_транзакции_получит_ее_сумму;
Активация
Протестируйте Ваш магазин. Попробуйте сделать тестовый платеж и Вы попадате на специальную форму проверки интерфейса. Там Вы сможете проверить отклик Вашего Result URL, увидеть то, что передается от Вас к Робокассе, проверить функционирование Success URL и Fail URL.
Когда успешно закончите тестирование — подавайте заявку на активацию аккаунта. После положительного ответа не забудьте сменить action в форме платежа.
Оплата заказов на сайте через Робокассу
В данной статье описан процесс оплаты заказа на сайте с помощью Робокассы. Перед тем, как преступить работе над скриптами оплаты, необходимо заполнить анкету, создать магазин и ознакомиться с документацией.
Настройка магазина в Робокассе
Для корректной работы скриптов потребуется сделать настройки в разделе «Мои магазины» – «Настройки» – вкладка «Технические настройки».
В форме нужно заполнить следующие поля:
Настройки сайта
На сайте заказы будут хранится в таблице `orders` c полями:
Формирование ссылки на оплату
Для того чтобы направить пользователя на оплату, нужно добавить заказ в БД, получить его ID и сформировать URL на Робокассу.
Для упращениния отладки платежей, нужно включить тестовый режим, добавив в URL параметр IsTest=1 (не нужно будет вводить реквизиты карт).
Скрипт оформления заказа:
Перейдя по сформированной ссылки, откроется форма оплаты на робокассе:
Обработка платежа
После того, как пользователь успешно оплатил заказ, он будет перенаправлен на «Success Url» с добавлением GET-параметров с данными платежа:
В PHP-скрипте нужно сверить SignatureValue и обновить статус заказа в базе данных.
Скрипт pay_success.php
Т.к. пользователь может не вернутся обратно на сайт, Робакасса отправляет дополнительный запрос на «Result Url» с ожиданием ответа, пример такого запроса:
Скрипт pay_result.php
В случаи отмены операции, пользователь перенаправляется на «Fail Url»:
Скрипт pay_error.php
Робокасса
ПОДКЛЮЧЕНИЕ РОБОКАССЫ
Поддерживаемые валюты: RUB.
Подключить Робокассу могут: Юр.лица, ИП, Физ.лица.
Для проведения платежей через Робокассу не обязательно покупать или арендовать онлайн-кассу. Все чеки могут формироваться кассами Робокассы, отправляться вашим клиентам, а также в налоговую в строгом соответствии с 54-ФЗ.
2. На шаге создания магазина указывайте адрес сайта через https:// и без www:
Через httpS, чтобы не было случайной ошибки с указанием технических адресов. Если в дальнейшем технический адрес указать через обычный протокол http, а не через https, интеграция не будет работать;
3. Укажите правильные технические настройки магазина. Они отличаются от примера на странице Робокассы:
Заметка: после подключения интеграции будут созданы две страницы. Страница успешного и неудачного платежа. Эти страницы, как и любые другие, можно редактировать.
Параметры проведения тестовых платежей:
4. На шаге подключения онлайн кассы можно выбрать любой вариант, кроме «Самостоятельное»:
Укажите идентификатор магазина;
Пароль 1 и Пароль 2 от параметров для тестовых платежей;
Включите параметр «Тестовые платежы»;
6. Откройте в редакторе ту страницу, с которой будет выполняться переход к оплате и настройте переход к оплате:
Если хотите сделать «Заказ в один клик»:
1) Добавьте виджет «Блок», установив роль «Карточка товара» и поместите в этот виджет ещё один виджет «Текст»;
2) Для первого виджета «Текст» установите роль «Название товара»;
4) Поместите в карточку товара форму и в настройках действий формы выберите «Переход к оплате».
Тяжело понять? Читайте здесь подробное описание.
Если хотите настроить переход к оплате из корзины:
2) В настройках формы, что в корзине, выберите действие «Переход к оплате»:
3) Опубликуйте страницу, чтобы применить внесенные изменения и провести тестовый платеж.
8. Если тестовый платеж прошел успешно:
Замените в настройках интеграции Пароль 1 и Пароль 2 на боевые;
Отключите параметр «Тестовый платежы»;
Cохраните настройки интеграции;
Теперь можно проверить работу боевых (реальных) платежей на опубликованной странице: