def payment_process(request): order_id = request.session.get('order_id') order = get_object_or_404(Order, id=order_id) paystack_total = int(order.get_total_cost() * 100) data_key = settings.PAYSTACK_PUBLIC_KEY data_email = request.user.email if request.method == 'POST': try: payment = Payment() payment.paystack_id = request.POST['paystack-trxref'] payment.customer = request.user payment.amount = order.get_total_cost() payment.save() order.paid = True order.ref = request.POST['paystack-trxref'] order.amount = payment order.save() except ObjectDoesNotExist: pass return redirect('payment:success') context = { 'order': order, 'paystack_total': paystack_total, 'data_key': data_key, 'data_email': data_email, } return render(request, 'payment/process.html', context)