QR код формируется по ГОСТ Р 56042-2014 . Большинство банков придерживаются данного ГОСТа (Сбербанк, ВТБ, Альфа, Тинькофф, Почта России, Яндекс.Деньги, Райфайзен и т.д.).
Инструкция по подключению API по генерации QR кода для оплаты
1) Создайте личный кабинет для вашего юр.лица. Для этого перейдите по ссылке и заполните данные юр.лица. На почту придёт ссылка доступа.
2) Сделайте GET или POST запросом с параметрами
url с параметрами будет выглядеть так:
https://sbqr.ru/OVO/api_png_QR.php?PayeeINN=212907189988&lastName=%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2&Purpose=%D0%B7%D0%B0%20%D1%83%D1%81%D0%BB%D1%83%D0%B3%D0%B8&Sum=220
Здесь
PayeeINN — ИНН вашей организации.
LastName — передаётся ФИО плательщика (где символы сразу закодированы через функцию urlencode ).
Purpose – назначение (где символы сразу закодированы через функцию urlencode )
Sum — сумма оплаты в рублях.
sumKop — сумма в копейках (Опционально. Если используются копейки, если не используются то можно не передавать)
Возможны и другие параметры предусмотренные ГОСТом. Их добавление осуществляется при обращение на почту analiticexpertpay@gmail.com
Примечание: чтобы посмотреть пример можно скопировать запрос и вставить в строку браузера и далее отсканировать полученный QR код в Сбербанк-Онлайн.
Как вставить полученный QR код в СMS
Если будите формировать QR код у себя в CMS, то там это можно обернуть в соответствующий тег img.
Для примера вставки в СMS в виде изображения
<img src=»https://sbqr.ru/OVO/api_png_QR.php?PayeeINN=212907189988&lastName=%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2&Purpose=%D0%B7%D0%B0%20%D1%83%D1%81%D0%BB%D1%83%D0%B3%D0%B8&Sum=220″ />
Соответственно содержимое переменной src, а именно наполнение тегов LastName, Purpose, Sum нужно будет динамически подготовить во время заказа на вашем сайте.
Пример 1, реализации на php
<?php ###### выше может быть код вашей целевой страницы вашего сайта ###### $data['PayeeINN'] = '212907189988'; # ИНН юр.лица $data['lastName'] = 'Иванов'; # плательщик $data['Purpose'] = 'Оплата заказа № 1 с сайта'; # назначение $data['Sum'] = 200; # в рублях # 1 Формирование url запроса к API $url='https://sbqr.ru/OVO/api_png_QR.php?PayeeINN=' . $data['PayeeINN'] . '&lastName=' . $data['lastName'] . '&Purpose=' . $data['Purpose'] . '&Sum' . $data['Sum']; # 2 Вывод полученного изображение в документ echo '<img src="' . $url . '" />'; ###### ниже может быть код вашей целевой страницы вашего сайта ###### ?>
Пример 2, реализации на php (более сложный)
<?php $data['PayeeINN']= '212907189988'; # ИНН юр.лица $data['lastName']= 'Иванов'; $data['Purpose']= 'Оплата заказа № 1 с сайта'; $data['Sum']=200; # в рублях $url='https://sbqr.ru/OVO/api_png_QR.php'; $ch = curl_init(); # 2. указываем параметры, включая url curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); # указываем, что у нас POST запрос curl_setopt($ch, CURLOPT_POST, 1); # добавляем переменные curl_setopt($ch, CURLOPT_POSTFIELDS, $data); # 3. получаем HTML в качестве результата $result = curl_exec($ch); # 4. закрываем соединение curl_close($ch); $result=str_replace("src='", "src='https://www.sbqr.ru", $result); # 5. выводим контент в браузер header ("Content-type: image/png"); echo $result; ?>
Если у Вас есть вопросы по API по генерации QR кодов для оплаты, то оставляйте их ниже.