Прием оплат от клиентов через PayKeeper в 1С:ERP Управление предприятием 2

30.01.25

Интеграция - СБП. Оплата по QR-коду

Расширение предназначено для типовой 1С:ERP Управление предприятием 2 , позволяет отправлять счета на оплату в платежный сервис PayKeeper, проверять статус оплаты счета. Встроено в документ Отчет о розничных продажах.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Прием оплат от клиентов через PayKeeper в 1С:ERP Управление предприятием 2 :
.cfe 36,18Kb
0
0 Скачать (5 SM) Купить за 3 050 руб.

Область применения

Расширение позволяет:

  • Сгенерировать счет клиенту для оплаты через СБП. Чек содержит весь список товаров из документа
  • Открыть счет с QR кодом
  • Проверить статус оплат

 

Описание реализации

1. Basic HTTP-авторизация 

АдресСервера = "myname.server.paykeeper.ru";   
Логин = "admin";
Пароль = "********";
СоединениеHTTP = Новый HTTPСоединение(СОКРЛП(АдресСервера), , СОКРЛП(Логин), СОКРЛП(Пароль), , , Новый ЗащищенноеСоединениеOpenSSL);
Возврат СоединениеHTTP;

 

2. Получение токена безопасности

ЗапросHTTP = Новый HTTPЗапрос("/info/settings/token/", Заголовки);
 
ОтветHTTP = СоединениеHTTP.Получить(ЗапросHTTP);
 
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(ОтветHTTP.ПолучитьТелоКакСтроку());
 
Попытка
	ОбъектJSON = ПрочитатьJSON(ЧтениеJSON);
Исключение
	Сообщить("Ошибка при получении токена безопасности");
	Возврат "";
КонецПопытки;
 
Токен = "";
Если ОбъектJSON.Свойство("token", Токен) Тогда
	Возврат Токен;
Иначе
	Сообщить(ОбъектJSON.msg);
	Возврат "";
КонецЕсли;

 

3. Подготовка счёта

Этот запрос создаёт по переданным параметрам оплаты счёт и генерирует для отображения в виде предварительного просмотра HTML-код письма счёта.

 

4. Отправка счёта клиенту

Отправка клиенту счета на емейл.

//Отправка ссылки на оплату на почту
	ЗапросHTTPОтправить = Новый HTTPЗапрос("/change/invoice/send/", Заголовки);

	ТелоЗапросаОтправить = "token=" + Токен +
	"&id=" + ОтветОбъект.invoice_id;

	ЗапросHTTPОтправить.УстановитьТелоИзСтроки(ТелоЗапросаОтправить,КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать);

	ОтветHTTPОтправить = СоединениеHTTP.ОтправитьДляОбработки(ЗапросHTTPОтправить);

	ЧтениеJSON.УстановитьСтроку(ОтветHTTPОтправить.ПолучитьТелоКакСтроку());

	Попытка
		ОтветОбъект = ПрочитатьJSON(ЧтениеJSON);
	Исключение
		Сообщить("Ошибка при отправке счёта");   
		ЗавершеноСОшибками = Истина;
		Продолжить;
	КонецПопытки;

	Если ОтветОбъект.Свойство("result", РезультатЗапроса) Тогда
		Если РезультатЗапроса = "fail" Тогда
			Сообщить(ОтветОбъект.msg);
			ЗавершеноСОшибками = Истина;
			Продолжить;
		КонецЕсли;
	КонецЕсли;

 

5. Получения статуса оплаты счёта

СоединениеHTTP = СформироватьСоединениеHTTP();
	
	//Получим статус оплаты 
	//GET-запрос по URL с GET-параметром id, равным номеру нужного счёта.  
	ЗапросHTTP = Новый HTTPЗапрос("/info/invoice/byid/?id=" + СокрЛП(Объект.RF_invoice_id));
	ОтветHTTP = СоединениеHTTP.Получить(ЗапросHTTP);
	
    ЧтениеJSON = Новый ЧтениеJSON;
    ЧтениеJSON.УстановитьСтроку(ОтветHTTP.ПолучитьТелоКакСтроку());
 
    Попытка
    	ОбъектJSON = ПрочитатьJSON(ЧтениеJSON);
    Исключение
    	Сообщить("Ошибка при получении статуса счета. Возможно не заполнен invoice_id");
    	Возврат ;
    КонецПопытки;
	
	Если ОбъектJSON.status = "paid" Тогда
		Сообщить("Текущий статус счета: Оплачен");
		//Создадим запись на закладке Оплата платежными картами
		
		Объект.ОплатаПлатежнымиКартами.Очистить();
		Стр = Объект.ОплатаПлатежнымиКартами.Добавить();   
		Стр.ДоговорПодключения 	  = Справочники.ДоговорыЭквайринга.НайтиПоНаименованию("Договор эквайринга");
		Стр.ЭквайринговыйТерминал = Справочники.ЭквайринговыеТерминалы.НайтиПоНаименованию("Эквайринг - офис Новосаратовка",,,Стр.ДоговорПодключения ); 
		Стр.Сумма 				  = ОбъектJSON.pay_amount;
		Стр.ВидОплаты			  = Перечисления.ТипыПлатежнойСистемыККТ.СистемаБыстрыхПлатежей;
	
	Иначе
		Сообщить("Текущий статус счета: " + ОбъектJSON.status);
	КонецЕсли;

 

Подключение подсистемы

Необходимо зарегистрироваться Paykeeper.ru и получить ссылку на сервер, имя пользователя и пароль.
Тестовая регистрация проходит быстро, присылают тестовый контур, в котором можно отлаживать API взаимодействия. 

  • Для подключения в рабочий режим необходимо использовать физический фискальный регистратор или взять в аренду облачную кассу. 
  • Потребуется разместить логотипы Visa, MasterCard, МИР и PayKeeper на сайте.

Я использовал облачный вариант.
При физической кассе можно распечатывать чеки для налоговой самостоятельно, а копию чека в электронном варианте клиенту отправит Paykeeper. Для этого нужно ставить доп. ПО на компьютер. Работает только с АТОЛ, ШТРИХ-М, ЭВОТОР кассами. Одновременно касса на может печатать чек из 1С и из Paykeeper. 

Я не выводил параметры подключения на форму. Они зашиты в коде в процедуре СформироватьСоединениеHTTP и ПриОткрытии. Возможно, при рефакторинге кода переведу на безопасное хранилище паролей как советует 1С.

Расширение не предназначено для выполнения в безопасном режиме. Если будут запросы, то добавлю эту функциональность.

При работе через web оплата через paykeeper генерируется, проверка статуса оплаты работает.

Тестировал на платформе 8.3.25.1394. Конфигурация 1С:ERP Управление предприятием 2 (2.5.20.80)

Оплата через Paykeeper.

См. также

СБП. Оплата по QR-коду 8.3.14 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Простой «виртуальный терминал» позволяет принимать платежи за товары или услуги с помощью Системы Быстрых Платежей, не требующий сложных настроек. Оплата по СБП - это способ не только ускорить обслуживание клиентов, но и экономить на эквайринге. Банки партнеры: АО Газпромбанк ,АО АЛЬФА-БАНК, АО Россельхозбанк,ПАО Промсвязьбанк,ПАО Банк ФК Открытие,АО Райффайзенбанк,ПАО ВТБ,ПАО Московский Кредитный Банк,ПАО Сбербанк, ПАО Совкомбанк, АО АО Т-Банк (Тинькофф Банк) и т.д.

14400 руб.

08.08.2023    5563    30    5    

41

СБП. Оплата по QR-коду 8.3.14 1C:Бухгалтерия Платные (руб)

Простой «виртуальный терминал» позволяет принимать платежи за товары или услуги с помощью Системы Быстрых Платежей, не требующий сложных настроек. Оплата по СБП - это способ не только ускорить обслуживание клиентов, но и экономить на эквайринге. Банки партнеры: АО Газпромбанк ,АО АЛЬФА-БАНК, АО Россельхозбанк,ПАО Промсвязьбанк,ПАО Банк ФК Открытие,АО Райффайзенбанк,ПАО ВТБ,ПАО Московский Кредитный Банк,ПАО Сбербанк, ПАО Совкомбанк, АО АО Т-Банк (Тинькофф Банк) и т.д.

16800 руб.

06.09.2024    1083    11    1    

6

СБП. Оплата по QR-коду 8.3.14 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Простой «виртуальный терминал» позволяет принимать платежи за товары или услуги с помощью Системы Быстрых Платежей, не требующий сложных настроек. Установите в кассовой зоне дисплей QR-кода в качестве терминала для оплаты по СБП и принимайте платежи с комиссией эквайринга до 0,7%

14400 руб.

06.06.2023    7157    14    15    

19

Банковские операции СБП. Оплата по QR-коду Пользователь Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Платные (руб)

Система быстрых платежей - мгновенный способ оплаты чека по QR-коду комиссия от 0,4 % до 0,7%. Обработка обслуживания Система быстрых платежей оплата по QR коду позволяет  подключить 1С:Управление торговлей редакция 10 к Системе быстрых платежей для приема оплаты. Может быть использована в 1С: Управление производственным предприятием 1.3 и 1С: Комплексная автоматизация 1.1 и 1С:Розница 1.х..

4000 руб.

16.02.2022    32177    43    148    

51

СБП. Оплата по QR-коду Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 Платные (руб)

Система быстрых платежей - мгновенный способ оплаты чека по QR-коду. Комиссия за эквайринг СБП в 3-4 раза ниже чем у традиционного эквайринга. «Терминал системы быстрых платежей: оплата по QR » - это драйвер терминала эквайринговых систем и расширение позволяющее подключатся к системе СБП в 1С:УТ11, КА 2.х и ERP 2.х,Розница отраслевые и принимать оплаты.

4000 руб.

22.04.2022    32987    101    103    

75

Кассовые операции Рабочее место СБП. Оплата по QR-коду Бухгалтер Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Расширение для программ 1С:УТ, 1С:КА, 1С:ERP Управление предприятием, которое позволяет принимать оплату через СПБ для ПАО Сбербанк. Подключается прозрачно, работает как типовой механизм.

7080 руб.

08.11.2023    2694    13    6    

11

СБП. Оплата по QR-коду 8.3.14 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Система быстрых платежей - мгновенный способ оплаты чека по QR-коду комиссия от 0,4 % до 0,7%. Терминал системы быстрых платежей Т-Банк: оплата по QR - это драйвер терминала эквайринговых систем и расширение позволяющее подключить эквайринг в 1С:Управление торговлей, редакция 11.4.х и 1С:Управление торговлей, редакция 11.5.х к системе СБП.

4000 руб.

15.11.2022    6926    9    9    

7
Оставьте свое сообщение