Ожидали байты или байтовый массив, но получили 'NoneType' в Django

Я получаю ответ от платежного шлюза (paystack) и пытаюсь проверить, что события исходят от Paystack, чтобы избежать доставки значения на основе события countefeit. При получении ответа от них у меня возникает следующая ошибка

raise TypeError("key: expected bytes or bytearray, but got %r" % type(key).__name__)
TypeError: key: expected bytes or bytearray, but got 'NoneType'

Views.py

@require_POST
@csrf_exempt
def webhook(request):

    secret = getattr(
        settings, ' PAYSTACK_PRIVATE_KEY', None
    )
    webhook_data = request.body
    hash = hmac.new(secret, webhook_data, digestmod=hashlib.sha512).hexdigest()
    if hash != request.headers["HTTP_X_PAYSTACK_SIGNATURE"]:
        raise ValidationError("MAC authentication failed")
    response_data = json.loads(request.body)
return HttpResponse(status=200)

Вы можете взглянуть на документацию по веб-крючкам API paysatck здесь: https://paystack.com/docs/payments/webhooks/#verifying-events

Вернуться на верх