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

30.01.25

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

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

Файлы

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

Наименование Скачано Купить файл
Прием оплат от клиентов через PayKeeper в 1С:ERP Управление предприятием 2 :
.cfe 36,18Kb
11 4 200 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

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

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

  • Сгенерировать счет клиенту для оплаты через СБП. Чек содержит весь список товаров из документа
  • Открыть счет с 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-коду 1С 8.3 1C:Бухгалтерия Платные (руб)

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

17080 руб.

06.09.2024    3412    27    1    

11

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

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

06.06.2023    12896    49    Torin    25    

34

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

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

14640 руб.

08.08.2023    12403    45    17    

51

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

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

5 стартмани

08.11.2023    5802    0    progmaster    8    

16

Банковские операции СБП. Оплата по QR-коду 1С:Предприятие 8 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Поступление по эквайрингу уже без комиссии (для УНФ) Суть проблемы: В выписке одного крупного банка при оплате клиентом по СБП сумма прихода отражается уже за вычетом комиссии банка, что влечет массу неудобств: загруженный платеж «закрывает» не всю сумму долга нашего клиента, дополнительно, в базе данных пропадает аналитика по затратам на эквайринг (СБП) Данная разработка решает указанную проблему удобным образом.

21960 руб.

09.04.2026    227    0    0    

0

СБП. Оплата по QR-коду 1С:Предприятие 8 Бесплатно (free)

Пользовательский QR-код - это новый режим оплаты с помощью QR-кодов, в котором Плательщик показывает QR-код на мобильном устройстве, а продавец сканирует его с помощью оптического сканера или другого устройства и инициирует процесс оплаты через Систему быстрых платежей.

25.11.2025    1773    Torin    0    

6

Эквайринг/ридер магнитных карт СБП. Оплата по QR-коду Пользователь 1С:Предприятие 8 1С:Управление торговлей 10 1С:Управление производственным предприятием Абонемент ($m)

Обработка обслуживания «ПБФ:Эквайринговые терминалы» для УТ 10.х предназначена для взаимодействия с терминалами «Unitodi P8Bio», «Aisino V37» и поддерживает x86/x64 архитектуру платформ 1С:Предприятие.

10 стартмани

01.11.2025    3000    16    Torin    4    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. NikolaYDa 23.03.26 12:16 Сейчас в теме
Добрый день. А для выставления счетов потребуются физически касса (ккт)?
Для отправки сообщения требуется регистрация/авторизация