Онлайн-платежи. Интеграция с Робокассой (платежный шлюз)
Настройка в кабинете робокассы
Для совершения платежей через Робокассу необходимо создать магазин и активировать его.
В кабинете выбираете пункт “Мои магазины”, далее “Добавить новый”.
Следуем дальнейшим инструкциям сайта. После создания магазина, Вы можете совершать только тестовые платежи (с помощью тестовых ключей).
Для реализации настоящих, Вам потребуется активировать свой магазин.
При переходе на активацию, Вам предложат заполнить личные данные.
При переходе туда, будет доступно 2 способа предоставления паспортных данных.
После предоставления данных, через некоторое время менеджер сообщит Вам, что магазин активирован и может осуществлять “живые” переводы.
Далее необходимо заполнить технические настройки кассы.
Вы должны указать два пароля (они используются алгоритмом робокассы для верификации платежей), также нужно указать адреса ответов транзакций.
Рекомендуется указывать метод POST, так как необходимые данные будут приходить в Request.Form, об этом ниже. Для тестов используйте пароли в соответствующем блоке робокассы.
Создание основных страниц (Falcon)
Реализация метода АПИ и его настройки (с процедурой)
-
Метод АПИ, который должен инициировать оплату. Для кнопки необходимо составить URL ссылку следующего вида:
https://auth.robokassa.ru/Merchant/Index.aspx?MerchantLogin={Login}&OutSum={sum}&InvId={invID}&InvDesc={Desc}&SignatureValue={pas1}&Culture=ru&IsTest=1
Где:
-
MerchantLogin идентификатор магазина на робокассе
-
OutSum сумма платежа
-
InvId id транзакции платежа (ваш внутренний)
-
InvDesc описание транзакции
-
SignatureValue пароль, которым будет шифроваться сообщение, здесь pas1
Для генерации ссылки используйте sql функцию:
declare @robokassa_token nvarchar(512), @robokassa_payPage nvarchar(512)
declare @robokassa_settings table (code nvarchar(256), value nvarchar(512))
insert into @robokassa_settings
select code, value
from as_settings
where code like 'api_robokassa%'
select @robokassa_token = value
from @robokassa_settings
where code = 'api_robokassa_token'
select @robokassa_payPage = value
from @robokassa_settings
where code = 'api_robokassa_payPage'
[dbo].payment_robokassa_getLink( 3, 100,'Desc Product 1 ', 1, 'falconspace', @robokassa_token, @robokassa_payPage)
2. Метод ResultUrl
В кабинете робокассы, вы указываете на какой адрес будет приходить post форма с ответом, также указываете как помечать запросы удачные и неудачные. Для примера:
-
Result Url = site.ru/api/action/robokassaResult
Внутри метода robokassaResult вы должны получить следующие данные из RequestForm полей:
-
OutSum
-
InvId
-
SignatureValue
Далее объединяете все параметры по паттерну: {OutSum}:{InvId}:{pas2} и вот этот результат отправляем в функцию md5 вычисления хэша,
полученный хэш должен полностью совпадать с SignatureValue, если так и есть, значит ответ и перевод верифицированы и все хорошо,
транзакция прошла успешно (конечно при условии, что вы попали в Success Url)
https://docs.robokassa.ru/#1250
3. SuccessUrl и FailUrl
1. В настройках магазина указываем:
Success Url = /robokassaPayment
Fail Url = /robokassaPayment/fail
2. Настраиваем страницу robokassaPayment
Тело страницы:
<div>{sp-result}</div>
SELECT 3 в SQL страницы:
select iif(@itemID='fail', 'Оплата не прошла', 'Оплата прошла успeшно')
Falcon Space - функциональная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space
Google поиск по нашей документации
- Руководства
- Основа Falcon Space
- Основные компоненты
- Возможности
- Коммуникация с пользователем
- Дизайн, стилизация
- API, Интеграции Создание сервиса API для сайта. Программный интерфейс веб-платформы Как сделать вебхук (webhook) Прием платежей через Яндекс.Кассу Онлайн-платежи. Интеграция с Робокассой (платежный шлюз) Zapier интеграция на платформе Falcon Space Интеграция API DaData.ru подсказки по адресам Интеграция коллтрекинга МАНГО ОФИС (режим Площадка) Интеграция API Курсы валют Центрального Банка РФ в веб-платформе Falcon Space Интеграция API Почта РФ Интеграция API Служба доставки СДЭК (CDEK) Интеграция API Служба доставки Деловые линии Интеграция API IpGeoBase Город по IP-адресу Интеграция импорт и парсинг файла CSV Интеграция API DaData.ru Город по IP-адресу Как вычислить расстояние между 2 точками с координатами через Google Maps Передача файлов по FTP Сканирование штрихкодов и QR кодов через камеру и с картинок Получение данных контрагента по ИНН Прием платежей на сайте через CloudPayments Программное взаимодействие через API между 2 разными экземплярами Falcon Как сделать интеграцию с Мой Склад Внедрение подсказок dadata на сайт Вывод точек на карте Яндекс. Интеграция с Яндекс Карты Интеграция с телефонией Zadarma.com Как передать скрытый параметр при исходящем запросе из Request процедуры в Response Получение данных о контрагенте - интеграция с сервисом ЗаЧестныйБизнес Интеграция с AMO CRM Как импортировать данные в базу CRM из Google Контакты Вход/регистрация через ВКонтакте(vk.com) Интеграция CRM с онлайн чатом на сайте (Replain) Загрузка на форме текстовых файлов и обработка их в процедуре SaveItem Как связать yandex metrika clientID с пользователем на сайте и посмотреть полный путь его по сайту? Входящий API. Как учесть в отклике результат внешних действий в API
- Каталоги
- Навигация
- Документы
- Дополнительные компоненты
- Продвижение, SEO
- Системные моменты
- HOWTO
- HOWTO Таблицы
- HOWTO Формы
- Работа с SQL
- HOWTO JS
- HOWTO Верстка
- Решение проблем
Falcon Space
Это снижение стоимости владения
за счет меньшего количества людей для поддержки и узкого стека разработки. Про снижение стоимости владения продуктом
Это быстрое внесение изменений
по ходу эксплуатации программы. Как создается функционал на платформе
Это простой удобный интерфейс
адаптация под мобильные устройства. Про юзабилити платформы
Нужна бесплатная консультация?
Получить оценку проекта
Создайте концепцию проекта на основе нашего шаблона и получите оценку проекта в виде КП.
Демо-сайт решений
Базисные решения, которые можно гибко адаптировать под себя: менять внешний вид, бизнес-логику и даже структуру базы данных.