Обработка запросов с Яндекс кассы Django
О великие, нужна Ваша помощь. Уже несколько дней бьюсь в истерике, пытаясь сделать получение уведомлений от Яндекс Кассы.
Есть вот такие вьюха получения уведомлений:
class YandexNotifications(APIView):
permission_classes = [AllowAny]
def post(self, request):
event_json = json.loads(request.body)
value = int(event_json["object"]["description"])
order = Order.published.get(id=value)
order.paid = True
order.save()
return HttpResponse(status=200)
Вот такие урлы:
app_name = 'payment'
urlpatterns = [
path('notifications/', YandexNotifications.as_view(), name='notifications'),
path('canceled/', views.payment_canceled, name='canceled'),
path('process/<int:order_id>/', views.payment_process, name='process'),
]
Если отсылаю запрос с https://reqbin.com/, то всё ок. Если пытаюсь тестировать через Яндекс, то ничего не происходит. логирования в лк яндекс на нотификации нет, поддержки от них также не очень дождешься(кидаются на доку https://kassa.yandex.ru/developers/using-api/webhooks)
Ответы (2 шт):
по логам Nginx сайт возвращает 500 ошибку, когда запрос идёт с Яндекса.
когда я посылаю абсолютно такой же запрос с https://mrpit.online/payment/notifications (restframework), то 200 респонс

решение банально: В кабинете Яндекс кассы не хватало слэша в конце ссылки https://mrpit.online/payment/notifications/