Оплата счетов через Telegram

11.08.21

Интеграция - Мессенджеры и боты

Изучаем методы API для работы с платежами через Telegram. Встроенная функция оплаты счетов в Телеграм.

Скачать исходный код

Наименование Файл Версия Размер
Оплата счетов через Telegram:
.epf 12,20Kb
14
.epf 0.1 12,20Kb 14 Скачать

Как ни странно, но почему-то на Инфостарте нет описания очень полезной функции Телеграм - оплаты счетов из приложения. Эта возможность появилась в апреле 2021 года, описание https://core.telegram.org/bots/payments#introducing-payments-2-0

За основу для изучения API рекомендую взять бесплатную внешнюю обработку из статьи //infostart.ru/public/1479683/ 

1. Настроим бота для работы с платежами. Открываем в Telegram бота @BotFather, отправляем ему команду /mybots, выбираем своего бота, выбираем в меню пункт "Payments".

 

 

2. Среди предложенных вариантов рассмотрим тестовые платежи через "ЮKassa", выбираем соответствующий пункт "Connect ЮKassa: тест" и переходим к другому боту @YooKassaTestBot. С ним все просто: выполняем команду "/start", дальше бот попросит отправить два идентификатора "shopId" и "shopArticleId", отправляем их ему.

У вашего бота должен появиться токен для оплаты. Посмотреть его можно через @BotFather - "Payments", на скриншоте видно в самом верху сообщения "method connected: - ЮKassa: тест: 382764670:TEST:28305 2021-08-10 19:20".

3. Настройки закончены, переходим в конфигуратор 1С. Чтобы отправить счет на оплату, достаточно вызывать POST метод https://core.telegram.org/bots/api#sendinvoice:

prices = Новый Массив;

Для каждого ТекСтр Из Объект.Счет.Товары Цикл
	Стр = Новый Структура;
	Стр.Вставить("label",  ТекСтр.Номенклатура.Наименование);
	Стр.Вставить("amount", ТекСтр.Сумма*100);

	prices.Добавить(Стр);	
КонецЦикла;

СтруктураЗапроса = Новый Структура;          
СтруктураЗапроса.Вставить("chat_id",        Объект.channel);
СтруктураЗапроса.Вставить("title",          "Заголовок счета"); 
СтруктураЗапроса.Вставить("description",    "Описание");
СтруктураЗапроса.Вставить("payload",        Строка(Объект.Счет.УникальныйИдентификатор()));
СтруктураЗапроса.Вставить("provider_token", Объект.provider_token);
СтруктураЗапроса.Вставить("currency",       "RUB");
СтруктураЗапроса.Вставить("prices",         prices);

ТекстЗапроса = СтруктураВJSON(СтруктураЗапроса);

Ресурс = "bot" + Объект.token + "/sendInvoice";

Рез = TelegramОтправитьЗапрос(Ресурс, "POST", ТекстЗапроса);

Важный нюанс: при формировании поля prices сумму указываем в копейках, чтобы не было дробных значений (то же самое для других валют https://core.telegram.org/bots/api#labeledprice).

4. Если все параметры заполнили верно, то получателю придет сообщение:

 

 

5. Нажимаем "Заплатить" и открывшемся окне видим состав счета и возможность выбрать карту для оплаты:

 

 

Для тестового платежа ЮKassa предоставляет карту: 1111 1111 1111 1026, срок 12/22, CVC 000. Эти реквизиты можно увидеть в сообщениях от бота @YooKassaTestBot, может быть у Вас они будут другие. Нажимаем "Заплатить".

 

 

6. Далее нашему боту необходимо в течение 10 секунд подтвердить оплату (например, проверить остатки на складе, зарезервировать товар и т.д.). Для этого он должен получить уведомления от сервера Telegram и отправить в ответ подтверждение.

Уведомления получаем методом getUpdates ищем записи с типом "pre_checkout_query". Подтверждение отправляем методом answerPreCheckoutQuery. В обработке это реализовано через команду "Подтвердить оплату".

 

 

7. В Телеграме будет получено сообщение, что счет успешно оплачен. А метод getUpdates вернет новое уведомление с типом SuccessfulPayment. Его можно обработать, чтобы, например, чтобы изменить в 1С статус счета на "оплачен".

 

Обработка проверялась на Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.94.17), можно адаптировать под любую другую конфигурацию.

Телеграм Telegram Бот Оплата ЮKassa Платежи Payments

См. также

Платформа интеграции 1С с чат-ботами (Telegram, Viber, WhatsApp, Instagram, Skype, ICQ, Facebook, ВКонтакте, Одноклассники, Яндекс.Алиса, Verbox, Jivochat, Avito)

Мессенджеры и боты Программист Пользователь Платформа 1С v8.3 Платные (руб)

Мощный модуль для интеграции 1С с чат-ботами: Telegram, Viber, WhatsApp, WhatsApp Business, Instagram, ICQ, Facebook, Vkontakte, Skype, Одноклассники, Яндекс.Алиса, Avito а так же виджеты чата для сайтов: Verbox, Jivochat. Это универсальное и эффективное решение с большими возможностями, простым интерфейсом, наличием визуального конструктора, базовыми сценариями поведения из коробки, позволяющий запустить чат-ботов в течении 1-го дня.

65000 руб.

08.10.2019    58365    33    0    

154

SALE! 25%

Конструктор чат-ботов Telegram, редакция 2

Мессенджеры и боты Системный администратор Программист Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 Платные (руб)

Развитие популярного решения для интеграции мессенджера Telegram с нашей любимой 1С - конструктор ботов в Телеграм.

15000 11250 руб.

18.06.2021    61645    298    269    

353

SALE! 25%

Что нам стоит бота построить? Нарисуем - будет жить! Графический конструктор телеграм-ботов/Telegram

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 9900 руб.

27.12.2021    35025    89    161    

185

Интеграция WhatsApp c 1С:УНФ, УТ, КА, ERP, Бухгалтерия 3

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

Интеграция мессенджера WhatsApp и 1С: УНФ, УТ, КА, ERP - отправка и получение сообщений, картинок, файлов и видео прямо в 1С. Расширение работает с сервисом GreenApi.

15600 руб.

23.06.2023    6522    45    11    

21

Легкий документооборот (+чат-бот для Telegram)

Документооборот и делопроизводство (СЭД) Мессенджеры и боты Учет документов Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 Платные (руб)

Расширение для согласования справочников и документов в конфигурациях "1С: Бухгалтерия 3.0", "Управление нашей фирмой", "1С ERP Управление предприятием", "Бухгалтерия государственного учреждения". Ролевая адресация, условная маршрутизация, последовательное и параллельное согласование, уведомление о новых задачах на почту, блокировка объектов в зависимости от статуса, запрет проведения в зависимости от статуса, автозапуск процессов согласования, отчеты по исполнительской дисциплине. Не требуется снятие конфигурации с поддержки. Настройка без программирования. Версия для 1cfresh.com. Сертификат 1С-Совместимо.

14900 руб.

15.11.2018    28550    30    48    

63

Личный кабинет сотрудника для 1С:Документооборот 2.1 в Telegram

Мессенджеры и боты Учет документов Платформа 1С v8.3 1С:Документооборот Россия Платные (руб)

Сделайте взаимодействие сотрудников компании быстрым и удобным. В Личном кабинете в Телеграм сотрудники могут получать и выполнять задачи используя популярный мессенджер

11520 руб.

29.12.2022    7026    5    11    

11

Интеграция 1С с телефонией и чатами WhatsApp и Telegram

Телефония, SIP Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Россия Управленческий учет Платные (руб)

Интеграция 1С с телефонией и чатами WhatsApp и Telegram автоматизирует работу оператора со звонками и чатами и добавит вашей 1С элементы CRM системы. Храните всю историю взаимоотношений в 1С, не теряйте звонки, скачивайте, прослушивайте в любое время из карточки клиента или журнала звонков, держите руку на пульсе, используя блок отчетов по звонкам. Интегрируйте вашу 1С и чатами WhatsApp и Telegram, общайтесь с клиентами с единого номера и в одном окне. Теперь чаты с клиентами хранятся в карточке партнера в 1С, а не в личных мобильных ваших менеджеров.

4100 руб.

28.04.2022    14732    12    10    

39
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. alexey_kurdyukov 159 11.08.21 10:29 Сейчас в теме
А эта функциональность уже где-то для чего-то используется? Что-то пока не понимаю, как с этим работать
2. elcoan 1018 11.08.21 11:46 Сейчас в теме
(1) Например, как дополнительный канал для продажи вашего товара. Полученный счет можно "расшарить" - отправить друзьям, знакомым, выложить в группе.
dnikolaev; +1 Ответить
12. support_mbk 02.12.22 09:26 Сейчас в теме
(2)Автор, прошу подтвердить что у вас работает сейчас answerPreCheckoutQuery. В обработке это реализовано через команду "Подтвердить оплату".
13. s-aleynicov 02.12.22 19:29 Сейчас в теме
(12)все работает, автор спасибо

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

https://core.telegram.org/bots/api#answerprecheckoutquery
Прикрепленные файлы:
3. Yashazz 4752 11.08.21 16:51 Сейчас в теме
Ну, если есть желание нарваться а) на ситуацию, когда вы заплатите, а деньги канули хз куда, б) вашими данными оперируют мошенники, то, наверное, можно и эту функциональность испозовать. Но имхо, лучше традиционными способами.

Кстати, не в курсе: Телеграм обратно разрешили использовать, или он запрещён в РФ?
4. elcoan 1018 11.08.21 17:08 Сейчас в теме
(3) Все данные о карточке передаются оператору и не отправляются ни боту ни в телеграм. Аналогично оплате по карте через любой сайт.
Телеграм уже разрешили использовать
5. Yashazz 4752 11.08.21 18:30 Сейчас в теме
(4)
не отправляются ни боту ни в телеграм
Блажен, кто верует)
https://www.fontanka.ru/2021/03/22/69824777/ - а что сегодня у силовиков, то завтра на развалах радиорынков и в сети.
7. retr0 12.08.21 07:24 Сейчас в теме
(5) Не статья а базар дешевой бабы, обычный инфо шум, аля "Вот я там, читал, вот я там слышал, да да ребят, телеграм точно не безопасный, зуб даю. Правда в действие ничего подобного не видел, ну ничего страшного, что ж меня обманывать кто будет". Никакой конкретики. А судя по твоему первому комментарию, видно, что ты уже динозавр как в том видео - "Ынтырнет, он нам на*** не нужон Ынтырнет ваш".
BomjBandit; +1 Ответить
8. Yashazz 4752 12.08.21 15:04 Сейчас в теме
(7) Спасибо, посмеялся) Ну, когда тебя кинут на деньги или закроют за чужие прегрешения - тогда вспомнишь, кто из нас динозавр)))
10. retr0 13.08.21 06:41 Сейчас в теме
9. webester 26 12.08.21 15:32 Сейчас в теме
(3)
Телеграм обратно разрешили использовать, или он запрещён в РФ?

Пользование телеграммом никогда не было запрещено в РФ. Доступ к нему блокировался(ну как блокировался, пытались блокировать) какое-то время, но даже в это время наши депутаты и некоторые гос органы вполне себе публично им пользовались
(5)
Блажен, кто верует)

Веруете вы в данном случае, в какую-то ахинею, желтого цвета уровня спид инфо
6. dnikolaev 178 11.08.21 21:15 Сейчас в теме
Интересно. спасибо. взял на заметку.
11. s-aleynicov 30.11.22 16:32 Сейчас в теме
Автор, прошу подтвердить, что у вас работает метод, так как реализовал все в своей разработке но именно этот метод отрабатывает правильно только при отмене оплаты, подтверждение не работает. Планирую скачать вашу обработку.

answerPreCheckoutQuery. В обработке это реализовано через команду "Подтвердить оплату".
14. zavedeev 28.12.22 11:59 Сейчас в теме
Авто добрый день, подскажите, после нажатия на Заплатить, как узнать что оплата прошла через платежную систему?
15. elcoan 1018 30.12.22 09:20 Сейчас в теме
(14) Добрый день!
7. В Телеграме будет получено сообщение, что счет успешно оплачен. А метод getUpdates вернет новое уведомление с типом SuccessfulPayment. Его можно обработать, чтобы, например, чтобы изменить в 1С статус счета на "оплачен".
16. zavedeev 07.01.23 15:58 Сейчас в теме
Добрый день, как определить факт оплаты?
17. zavedeev 07.01.23 16:28 Сейчас в теме
у вас в обработке это есть?
18. elcoan 1018 09.01.23 10:09 Сейчас в теме
(17) Да, обработка факта платежа происходит в процедуре КомандаСписокСчетовНаСервере
zavedeev; +1 Ответить
Оставьте свое сообщение