Приём платежей с помощью «СберБанк Онлайн»

Абоненты-физлица могут пополнять оплачивать счета с помощью сервиса «СберБанк Онлайн».

  • В приложении СберБанка или на online.sberbank.ru — настройте административный интерфейс и скрипт для callback-уведомлений.

  • В личном кабинете LANBilling — пройдите все четыре шага.

  1. Личный кабинет СберБанка
  2. Административный интерфейс LANBilling
  3. Скрипт для callback-уведомлений
  4. Конфигурационный файл

Личный кабинет СберБанка

Оставьте заявку на подключение на сайте. Дождитесь, пока сотрудники предоставят вам информацию.

Получите ссылку для оплаты на ваш счёт, по которой будут переходить абоненты в личном кабинете. Пример: http://sberbank.com/sms/shpa/?cs=1602278250032&psh=p&did=1628628607666000682

Административный интерфейс LANBilling

Создайте профиль для платёжной системы в LANBilling. Логин и пароль нужно будет указать в скрипте callback-уведомлений.

image

Скрипт для callback-уведомлений sber1.cgi или sber2.cgi

Скрипт нужен, чтобы фиксировать в LANBilling результаты оплат. Он обрабатывает запросы от платёжной системы — в них содержится информация об операциях. На основании этих данных скрипт создаёт платежи в биллинге.

Настройка различается для разных ОС.

  1. Убедитесь, что установлен PHP 7, а также пакеты perl-cgi и perl-soap-lite.

  2. Взаимодействие со СберБанком происодит по «протоколу 1» или по «протоколу 2». Версия протокола выбирается на этапе заключения договора с банком. В LANBilling для каждой версии протокола есть отдельный скрипт callback-уведомлений, но их найстройка не различается. В этой инструкции для примеров используется первый протокол.

    Скопируйте скрипт sber1.cgi в директорию исполняемых скриптов вашего веб-сервера:

    cp /usr/local/billing/payments/sber/protocol1/sber1.cgi /var/www/cgi-bin/
    

    ``

  3. Укажите в файле настройки доступа.

    • Метод подключения к LBcore. По умолчанию — http; если настроена работа API по SSL — https.
    • IP-адрес и порт для подключения к LBcore.
    • Логин и пароль от профиля платёжной системы в LANBilling.
    • Идентификатор поля, по которому LANBilling будет искать договор. Список значений:
      Номер Значение Пояснение
      0 TYPE_VG_LOGIN Логин учетной записи
      1 TYPE_USER_LOGIN Логин пользователя
      2 TYPE_TEL_STAFF Телефон пользователя
      3 TYPE_STAFF IP-адрес учётной записи
      4 TYPE_FIO Имя пользователя
      5 TYPE_AGRM_NUM Номер договора
      6 TYPE_KOD_1C или
      TYPE_AGRM_CODE
      Код оплаты в договоре
      7 TYPE_EMAIL Email пользователя
      9 TYPE_VG_ID ID учётной записи
      10 TYPE_UID ID пользователя
      11 TYPE_AGRM_ID ID договора
      14 TYPE_ORDER_ID ID документа
      17 TYPE_OPER_ID ID оператора договора
      18 TYPE_INN ИНН пользователя
    my $proto = 'http';
    

    my $lbcore_host = 'localhost';

    my $manager_login = 'super_pay' my $manager_pass = '12345'

    my $type = TYPE_AGRM_NUM;

    ``

  4. Сделайте скрипт исполняемым:

    chmod +x /var/www/cgi-bin/sber1.cgi
    

    ``

  1. Убедитесь, что установлен PHP 7, а также пакеты libsoap-lite-perl, libxml-simple-perl, libcgi-session-perl, libtext-iconv-perl.

  2. Взаимодействие со СберБанком происодит по «протоколу 1» или по «протоколу 2». Версия протокола выбирается на этапе заключения договора с банком. В LANBilling для каждой версии протокола есть отдельный скрипт callback-уведомлений, но их найстройка не различается. В этой инструкции для примеров используется первый протокол.

    Скопируйте скрипт sber1.cgi в директорию исполняемых скриптов вашего веб-сервера:

    cp /usr/local/billing/payments/sber/protocol1/sber1.cgi /var/www/cgi-bin/
    

    ``

  3. Укажите в файле настройки доступа.

    • Метод подключения к LBcore. По умолчанию — http; если настроена работа API по SSL — https.
    • IP-адрес и порт для подключения к LBcore.
    • Логин и пароль от профиля платёжной системы в LANBilling.
    • Идентификатор поля, по которому LANBilling будет искать договор. Список значений:
      Номер Значение Пояснение
      0 TYPE_VG_LOGIN Логин учетной записи
      1 TYPE_USER_LOGIN Логин пользователя
      2 TYPE_TEL_STAFF Телефон пользователя
      3 TYPE_STAFF IP-адрес учётной записи
      4 TYPE_FIO Имя пользователя
      5 TYPE_AGRM_NUM Номер договора
      6 TYPE_KOD_1C или
      TYPE_AGRM_CODE
      Код оплаты в договоре
      7 TYPE_EMAIL Email пользователя
      9 TYPE_VG_ID ID учётной записи
      10 TYPE_UID ID пользователя
      11 TYPE_AGRM_ID ID договора
      14 TYPE_ORDER_ID ID документа
      17 TYPE_OPER_ID ID оператора договора
      18 TYPE_INN ИНН пользователя
    my $proto = 'http';
    

    my $lbcore_host = 'localhost';

    my $manager_login = 'super_pay' my $manager_pass = '12345'

    my $type = TYPE_AGRM_NUM;

    ``

  4. Сделайте скрипт исполняемым:

    chmod +x /usr/lib/cgi-bin/sber_acq.cgi
    

    ``

  1. Убедитесь, что установлен PHP 7, а также пакеты p5-IO-SessionData и p5-SOAP-Lite.

  2. Взаимодействие со СберБанком происодит по «протоколу 1» или по «протоколу 2». Версия протокола выбирается на этапе заключения договора с банком. В LANBilling для каждой версии протокола есть отдельный скрипт callback-уведомлений, но их найстройка не различается. В этой инструкции для примеров используется первый протокол.

    Скопируйте скрипт sber1.cgi в директорию исполняемых скриптов вашего веб-сервера:

    cp /usr/local/billing/payments/sber/protocol1/sber1.cgi /var/www/cgi-bin/
    

    ``

  3. Укажите в файле настройки доступа.

    • Метод подключения к LBcore. По умолчанию — http; если настроена работа API по SSL — https.
    • IP-адрес и порт для подключения к LBcore.
    • Логин и пароль от профиля платёжной системы в LANBilling.
    • Идентификатор поля, по которому LANBilling будет искать договор. Список значений:
      Номер Значение Пояснение
      0 TYPE_VG_LOGIN Логин учетной записи
      1 TYPE_USER_LOGIN Логин пользователя
      2 TYPE_TEL_STAFF Телефон пользователя
      3 TYPE_STAFF IP-адрес учётной записи
      4 TYPE_FIO Имя пользователя
      5 TYPE_AGRM_NUM Номер договора
      6 TYPE_KOD_1C или
      TYPE_AGRM_CODE
      Код оплаты в договоре
      7 TYPE_EMAIL Email пользователя
      9 TYPE_VG_ID ID учётной записи
      10 TYPE_UID ID пользователя
      11 TYPE_AGRM_ID ID договора
      14 TYPE_ORDER_ID ID документа
      17 TYPE_OPER_ID ID оператора договора
      18 TYPE_INN ИНН пользователя
    my $proto = 'http';
    

    my $lbcore_host = 'localhost';

    my $manager_login = 'super_pay' my $manager_pass = '12345'

    my $type = TYPE_AGRM_NUM;

    ``

  4. Сделайте скрипт исполняемым:

    chmod +x /usr/local/www/apache24/cgi-bin/sber1.cgi
    

    ``

Теперь абоненты могут вносить оплаты в приложении СберБанка или на online.sberbank.ru. Для этого им нужно будет самостоятельно найти оператора.

Конфигурационный файл sberbankOnline.ini

Выполните настройку, если хотите, чтобы в личном кабинете был пункт «Сбербанк Онлайн». Действия различаются для разных ОС.

  1. Внесите изменения в файл конфигурации sberbankOnline.ini:

    nano /etc/lanbilling/phpclient/client/sberbankOnline.ini
    

    ``

    • Включите платёжную систему в личном кабинете абонентов LANBilling:

      [sberbankOnline]
      enabled = true
      
      
      
    • Укажите ссылку для оплаты на ваш счёт. Если абонент перейдёт по ней из бразуера персонального компьютера, то система предложит авторизоваться в Сбербанк Онлайн. Если с мобильного телефона — откроется приложение СберБанка. Пример:

      ; Ссылка на СберБанк Онлайн
      url = 'http://sberbank.com/sms/shpa/?cs=1602278250032&psh=p&did=1628628607666000682'
      
      
      

  1. Сохраните конфигурационный файл. Сериализуйте изменения:

    /usr/local/sbin/lbwebcfg -y client /etc/lanbilling/phpclient/client/
    

    ``

  1. Внесите изменения в файл конфигурации sberbankOnline.ini:

    nano /usr/local/etc/lanbilling/phpclient/client/sberbankOnline.ini
    

    ``

    • Включите платёжную систему в личном кабинете абонентов LANBilling:

      [sberbankOnline]
      enabled = true
      
      
      
    • Укажите ссылку для оплаты на ваш счёт. Если абонент перейдёт по ней из бразуера персонального компьютера, то система предложит авторизоваться в Сбербанк Онлайн. Если с мобильного телефона — откроется приложение СберБанка. Пример:

      ; Ссылка на СберБанк Онлайн
      url = 'http://sberbank.com/sms/shpa/?cs=1602278250032&psh=p&did=1628628607666000682'
      
      
      

  1. Сохраните конфигурационный файл. Сериализуйте изменения:

    /usr/local/sbin/lbwebcfg -y client /usr/local/etc/lanbilling/phpclient/client/
    

    ``

Настройка завершена. Теперь абоненты-физлица могут пополнять баланс в личном кабинете с помощью этой платёжной системы.