Вебхук aiogram python

Написал простенького телеграмм бота с функцией приема платежей (использовал сервис продамус) URL для отправки уведомлений сгенерировал через ngrok Уведомления от бота доходят со статусом 200 Уведомления от платежной системы всегда приходят с ошибкой (ошибки разные и 404 и 502 и 503) , пробовал генерировать другой url, с другим портом, та же картина, от бота все ок, от сервиса оплаты ошибка В чем может дать проблема или в каком направлении смотреть? Прошу прощения за глупые вопросы? только начинаю пробовать пайтон, много непонятного


Ответы (1 шт):

Автор решения: deploer

Продамус использует подпись для проверки. Возможно вы не указываете секретный ключ от сервиса (Продамуса). Без кода сложно ответить. Вы через fastapi/uvicorn делали ?

На офф сайте продамуса есть документация с подписью в файле Hmac.php.

Там же URLNofication который проверяет подпись (передаёт код 200 или не работает), UrlSuccses, UrlReturn

Рекомендую использовать бота на API, а вебхук собственно использовать только для обработки URL уведомлений с продамуса, (с уведомлениями работать уже отдельно на php)

т.е. Генерировать ссылку на продамус API ботом

import requests orderid=message.from_user.id

data = {

'order_id':orderid,

'customer_phone':'',

'customer_email':'',

'subsription':'1',

'vk_user_id':'',

'customer_extra':linkextra,

'do':'link',

'urlReturn':ссылка на ваш вебхук,

'urlSuccsess':ссылка на ваш вебхук,

'sys':'',

'discount_value':'0'

}

response=requests.get('https://demo.payform.ru/',params=data)

Когда принимаете url уведомления проверяете подпись Hmac.php и вытягиваете данные оrder_id и об состоянии оплаты.

Если-что пишите, помогу чем смогу. Телеграм @Danijarus

Ну что же, я тоже попытался реализовать, есть проблемы с проверкой подписи. У вас всё получилось?

→ Ссылка