API по генерации QR кодов для оплаты

Документация к универсальному API для генерации QR кодов для оплаты на счёт юридического лица или ИП

Как получить QR через api

Чтобы получить QR код для любого юр.лица или ИП необходимо направить запрос GET или POST по url
https://sbqr.ru/OVO/api_png_QR_v2.php

При этом указать ряд обязательных параметров

Параметр Описание Комментарий
token Токен для доступа к api. Можно получить обратившись по почте analiticexpertpay@gmail.com
PayeeINN ИНН юр.лица или ИП
Name Наименование юр.лица или ИП
BIC БИК банка
PersonalAcc Расчётный счёт
lastName ФИО плательщика Придёт в платёжном поручение в поле «Назначение платежа», по этому значению будет понятно, кто оплатил.
Purpose Назначение
Sum Сумма рублей
sumKop Сумма копеек Можно не указывать, если копейки не используются
format Формат выходного файла Возможные значение png и svg.

Если не указывать, то по-умолчанию png.

Пример запроса.

https://sbqr.ru/OVO/api_png_QR_v2.php?token=2719d3ad1c0c2&PayeeINN=212907189988&Name=ИП Ефремов Александр Геннадьевич&BIC=049706609&PersonalAcc=40802810675000008271&lastName=Иванов Иван Иванович&Purpose=за товар или услуги&Sum=220

Можно вставить в строку адреса браузера

Результат

Пример QR код для оплаты через api

Подключить api можно оставив заказ на почту analiticexpertpay@gmail.com. Стоимость согласно тарифам

Примечание: для тестирования API можно использовать такие средства как postman

Postman получение QR код для оплаты через api

Если что то заполнили не так

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

Изображение QR кода при этом не будет сформировано, пока не исправите ошибку.

Код ответа Сообщение об ошибке Как исправить
403 Закончился срок действия токена Продлить токен, написав на адрес analiticexpertpay@gmail.com
404 Токен не найден. Исправить токен или если Вы новый клиент, то запросить его по почте analiticexpertpay@gmail.com
400 Ошибочный ИНН Укажите параметр PayeeINN
400 Ошибочный расчётный счёт Укажите параметр PersonalAcc
400 Заполните корректно наименование получателя (организацию или ИП) Укажите параметр Name

Как вставить в сайт

Чтобы вставить это api в сайт или CMS, можно воспользоваться следующим подходом

Пример на HTML

<img src="https://sbqr.ru/OVO/api_png_QR_v2.php?token=2719d3ad1c0c2&PayeeINN=212907189988&Name=ИП Ефремов Александр Геннадьевич&BIC=049706609&PersonalAcc=40802810675000008271&lastName=Иванов Иван Иванович&Purpose=за товар или услуги&Sum=220" />

, где значение параметров должно определяться ранее в CMS вашего сайта.

Примечание: при передачи параметров в которых есть пробел (название организации или ФИО) неоходимо значение предварительно закодировать через url_encode() в api на php. Он кодирует символы пробелов. Чтобы значение не разрывалось.

Пример на PHP

<?php
###### выше может быть код вашей целевой страницы вашего сайта ###### 
$data['token'] = '2719d3ad1c0c2'; # ключ доступа
$data['PayeeINN'] = '212907189988'; # ИНН юр.лица
$data['Name'] = 'ИП Ефремов Александр Геннадьевич'; 
$data['BIC'] = '049706609';
$data['PersonalAcc'] = '40802810675000008271';  
$data['lastName'] = 'Иванов'; # плательщик 
        $data['Purpose'] = 'Оплата заказа № 1 с сайта';  # назначение
        $data['Sum'] = 200; # в рублях
        # 1 Формирование url запроса к API
        $url='https://sbqr.ru/OVO/api_png_QR_v2.php'
        . '?token=' . $data['token']
        . '&PayeeINN=' . $data['PayeeINN']
        . '&Name=' . $data['Name'] 
        . '&BIC=' . $data['BIC']
        . '&PersonalAcc=' . $data['PersonalAcc']  
        . '&lastName=' . $data['lastName'] 
        . '&Purpose=' . $data['Purpose'] . '&Sum' . $data['Sum'];
        # 2 Вывод полученного изображение в документ
        echo '<img src="' . $url . '" />';      
###### ниже может быть код вашей целевой страницы вашего сайта ######        

  
?>

Пример на python

###### выше может быть код вашей целевой страницы вашего сайта ###### 
data = dict()
data['token'] = '2719d3ad1c0c2'; # ключ доступа
data['PayeeINN'] = '7707089101'; # ИНН юр.лица
data['Name'] = 'ИП Ефремов Александр Геннадьевич'; 
data['BIC'] = '049706609'
data['PersonalAcc'] = '40802810675000008271'
data['lastName'] = 'Иванов'; # плательщик
data['Purpose'] = 'госпошлина за паспорт нового образца';  # назначение
data['Sum'] = 5000; # в рублях
# 1 Формирование url запроса к API
url=('https://sbqr.ru/OVO/api_png_QR_v2.php' 
     + '?token=' + data['token']
     + '&PayeeINN=' + data['PayeeINN']
     + '&Name=' + data['Name']
     + '&BIC=' + data['BIC']
     + '&PersonalAcc=' + data['PersonalAcc']
     + '&lastName=' + data['lastName']
     + '&Purpose=' + data['Purpose']
     + '&Sum=' + str(data['Sum']));
# 2 Вывод полученного изображение в документ
print('<img src="' + url + '" />'); 
      
###### ниже может быть код вашей целевой страницы вашего сайта ######        
  

Использование в Google таблицах

Данный api можно использовать в google таблицах для получения изображения QR кода для оплаты. Для этого в целевую ячейку вставить формулу, которая обратиться к api сервиса и получит изображение  https://sbqr.ru/OVO/api_png_QR_v2.php

Пример полученного QR кода в google таблицах.
Получение QR в google таблицах через api

Если у Вас стоит задача с помощью api генерировать или создавать платёжные QR коды, то Вы можете заказать их по почте analiticexpertpay@gmail.com. Стоимость работы api см. в тарифах

Есть вопросы — оставляете комментарии ниже.

Описание API по генерации QR кода для оплаты

QR код формируется по ГОСТ Р 56042-2014 . Большинство банков придерживаются данного ГОСТа (Сбербанк, ВТБ, Альфа, Тинькофф, Почта России, Яндекс.Деньги, Райфайзен и т.д.).

Инструкция по подключению API по генерации QR кода для оплаты

1) Создайте личный кабинет для вашего юр.лица. Для этого перейдите по ссылке и заполните данные юр.лица. На почту придёт ссылка доступа.
2)  Сделайте GET или POST запросом с параметрами

Пример запроса для организации с ИНН 212907189988.
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 кодов для оплаты, то оставляйте их ниже.