def processpayment(request): name=request.GET['name'] roll=request.GET['roll'] Class=request.GET['class'] print(Class) father=request.GET['father'] ammount=request.GET['ammount'] student=Student.objects.get(rollNo=roll) transaction_id=datetime.datetime.now().timestamp() studentfee=StudentFees.objects.create(name=name,transaction_id=transaction_id,payment=ammount,roll=roll) studentfee.save() print(student.Class) if not student.name==name: messages.error(request,'Student name does not match') return redirect('/payment') if not student.father==father: messages.error(request,'Student father name does not match') return redirect('/payment') param_dict={ 'MID': 'toaldV34834751882298', 'ORDER_ID': str(transaction_id), 'TXN_AMOUNT': str(ammount), 'CUST_ID': roll, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL':'http://127.0.0.1:8000/handlerequest/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(param_dict, MERCHANT_KEY) return render(request,'mySchool/paytm.html',{'param_dict':param_dict})
def handlerequest(request): # paytm will send you post request here form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: if response_dict['RESPCODE'] == '01': print('order successful') order = Orders.objects.get(id=response_dict['ORDERID']) th1 = threading.Thread( target=sendemail, args=[response_dict['ORDERID'], order.email]) th1.start() else: print('order was not successful because' + response_dict['RESPMSG']) order = Orders.objects.filter(id=response_dict['ORDERID']) order.delete() update = OrderUpdate.objects.filter(id=response_dict['ORDERID']) update.delete() return render(request, 'store/paymentstatus.html', {'response': response_dict})
def handlerequest(request): # paytm will send you post request here form = request.POST response_dict = {} pk = None f = None t = None for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: print(response_dict['RESPCODE']) if response_dict['RESPCODE'] == '01': print('order successful') i = response_dict['ORDERID'] print(i) t = i[6:] Fee.objects.filter(orderid=t).update(paymentstatus='success') else: print('order was not successful because' + response_dict['RESPMSG']) i = response_dict['ORDERID'] t = i[6:] f = Fee.objects.get(orderid=t) print(f.pk) return render(request, 'fee/paymentstatus.html', { 'response_dict': response_dict, 'f': f })
def processOrder(request): transaction_id = datetime.datetime.now().timestamp() if request.user.is_authenticated: customer = request.user email=request.POST.get('email') order, created = Order.objects.get_or_create(customer=customer, complete=False) total = order.get_cart_items order.transaction_id = transaction_id order.complete=True order.save() ShippingAddress.objects.create( customer=customer, order=order, address=request.POST.get('address'), city=request.POST.get('city'), state=request.POST.get('state'), zipcode=request.POST.get('zipcode'), ) param_dict={ 'MID': 'toaldV34834751882298', 'ORDER_ID': str(transaction_id), 'TXN_AMOUNT': str(total), 'CUST_ID': email, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL':'http://127.0.0.1:8000/handlerequest/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(param_dict, MERCHANT_KEY) return render(request,'myapp/paytm.html',{'param_dict':param_dict}) else: print('User is not logged in') return redirect('')
def handlerequest(request, transaction_id): # paytm will send you post request here try: sub_obj = Subscription.objects.get(transaction_id=transaction_id) except Subscription.DoesNotExist: print("Invalid Subscription ID") return redirect('/adv') form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] screen = sub_obj.screen verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: if response_dict['RESPCODE'] == '01' and screen.ad_available > 0: ad = sub_obj.ad disAd = DisplaysAd(screen=screen, ad=ad) disAd.save() sub_obj.transaction_status = "Transaction Successful" sub_obj.save() screen.ad_available = screen.ad_available - 1 screen.save() print('order successful') else: print('order was not successful because' + response_dict['RESPMSG']) return render(request, 'Advertiser/paymentstatus.html', {'response': response_dict})
def checkout(request, course_slug): course = Course.objects.get(slug=course_slug) context = {'course': course} if request.method == 'POST': user = request.user # amount = request.POST.get('amount') amount = float(course.price) orderid = random.randrange(11111, 99999) param_dict = { 'MID': 'XouRsh60629205732669', 'ORDER_ID': str(orderid), 'TXN_AMOUNT': str(amount), 'CUST_ID': user.email, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': f'http://127.0.0.1:8000/course/handlerequest/{course_slug}/{user.username}', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'paytm/paytm.html', {'param_dict': param_dict}) # return render(request, 'paytm/checkout.html') return render(request, 'main/checkout.html', context)
def buy(request): if request.method == "POST": items_json = request.POST.get('itemsJson', '') name = request.POST.get('name', '') amount = request.POST.get('amount', '') email = request.POST.get('email', '') address = request.POST.get('address1', '') + " " + request.POST.get( 'address2', '') city = request.POST.get('city', '') state = request.POST.get('state', '') zip_code = request.POST.get('zip_code', '') phone = request.POST.get('phone', '') if len(zip_code) < 6: messages.error(request, "Please enter correct zip code") return redirect('Checkout') if len(phone) < 10: messages.error(request, "Please enter correct phone number") return redirect('Checkout') order = Orders(orders_json=items_json, name=name, email=email, address=address, city=city, state=state, zip_code=zip_code, phone=phone, amount=amount) order.save() update = OrderUpdate(order_id=order.order_id, update_desc="The order has been placed") update.save() thank = True id = order.order_id # return render(request, 'shop/checkout.html', {'thank':thank, 'id': id}) # Request paytm to transfer the amount to your account after payment by user param_dict = { 'MID': 'Ljlxjc16845781456724', 'ORDER_ID': str(order.order_id), 'TXN_AMOUNT': str(amount), 'CUST_ID': email, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://127.0.0.1:8000/shop/handlerequest2/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'shop/paytm.html', {'param_dict': param_dict}) return render(request, 'shop/buynow.html')
def handlerequest(request): form=request.POST response_dict = {} for i in form.keys(): response_dict[i]=form[i] if i=='CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: if response_dict['RESPCODE']=='01': print('successfull') else: print('Unsuccessfull') return render(request,'myapp/paymentstatus.html', {'response': response_dict})
def paymentreq(request, order_id): msg = Rent.objects.get(id=order_id) #passing request to paytm param_dict = { 'MID': 'WorldP64425807474247', 'ORDER_ID': msg.order_id, 'TXN_AMOUNT': str(msg.amount), 'CUST_ID': str(request.user), 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://18.216.172.90/handlerequest/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'paytm.html', {'param_dict': param_dict})
def handlerequest(request): # paytm will send you post request here form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: if response_dict['RESPCODE'] == '01': print('order success full') else: #order_success=messages.error(request,f'order was not successful because {response_dict[RESPMSG]}') print('order was not successful because' + response_dict['RESPMSG']) return render(request, 'mySchool/paymentstatus.html', {'response': response_dict})
def checkout(request): if request.method == "POST": items_json = request.POST.get('itemsJson', '') name = request.POST.get('name', '') amount = request.POST.get('amount', '') email = request.POST.get('email', '') address = request.POST.get('address1', '') + " " + request.POST.get( 'address2', '') city = request.POST.get('city', '') state = request.POST.get('state', '') zip_code = request.POST.get('zip_code', '') phone = request.POST.get('phone', '') order = Orders(items_json=items_json, name=name, email=email, address=address, city=city, state=state, zip_code=zip_code, phone=phone, amount=amount) order.save() update = OrderUpdate(order_id=order.order_id, update_desc="The order has been placed") update.save() thank = True id = order.order_id #request paytm to transfer the amount to your account after payment by user param_dict = { 'MID': '', 'ORDER_ID': str(order.order_id), 'TXN_AMOUNT': amount, 'CUST_ID': email, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://127.0.0.1:8080/handlerequest/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'paytm.html', {'param_dict': param_dict}) return render(request, 'checkout.html')
def handlerequest(request, course_slug, username): user = Account.objects.get(username=username) for _ in range(10): print("hello") print(user.email) form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: if response_dict['RESPCODE'] == '01': course = Course.objects.get(slug=course_slug) # user=request.user name = 'name' email = user.email mobile = user.phone_number amount = float(course.price) order = Transaction.objects.create(user=user, item_json=course.name, course=course, name=name, email=email, mobile=mobile, amount=float(amount)) order.save() course.member.add(user) course.save() messages.success(request, "Course is successfully purchase") return redirect("purchase_course") # print('order successful') # print('order successful') # print('order successful') # print('order successful') # print('order successful') # print('order successful') # print('order successful') else: messages.error(request, "Something Went Wrong") return redirect("checkout", course_slug) # print('Something went wrong' + response_dict['RESPMSG']) return render(request, 'paytm/paytm_payment_status.html', {'response_dict': response_dict})
def handlerequest(request): # paytm will send you post request here form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verfiy = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verfiy: if response_dict['RESPCODE'] == '01': print('ORDER SUCCESSFUL') else: print("order unsuccessful because" + response_dict['RESPMSG']) return render(request, 'E_com/paymentstatus.html', {'response': response_dict})
def fee(request): student = Student.objects.get(user=request.user) c = ClassInfo.objects.get(name=student.class_info.name) admissionfees = 0 monthlyfees = 0 extrafees = 0 if Fee.objects.filter(student=student, paymentstatus="successful").count() == 0: admissionfees = c.admissionfees monthlyfees = c.monthlyfees extrafees = c.ExtraFees else: admissionfees = 0 monthlyfees = c.monthlyfees extrafees = c.ExtraFees totalfees = float(monthlyfees) + float(admissionfees) + float(extrafees) id = None if request.method == "POST": i = Fee.objects.create(student=student, amount=totalfees) # return render(request, 'shop/checkout.html', {'thank':thank, 'id': id}) # Request paytm to transfer the amount to your account after payment by user param_dict = { 'MID': 'SGijGB62559210222772', 'ORDER_ID': "school" + str(i.orderid), 'TXN_AMOUNT': str(i.amount), 'CUST_ID': request.user.email, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://127.0.0.1:8000/fee/handlerequest/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'fee/paytm.html', {'param_dict': param_dict}) return render( request, 'fee/payment.html', { 'student': student, 'totalfees': totalfees, 'admissionfees': admissionfees, 'monthlyfees': monthlyfees, 'extrafees': extrafees })
def checkout(request): if request.method == "POST": items_json = request.POST.get('itemsJson', '') name = request.POST.get('name', '') amount = request.POST.get('amount', '') email = request.POST.get('email', '') address = request.POST.get('address1', '') + " " + request.POST.get( 'address2', '') city = request.POST.get('city', '') state = request.POST.get('state', '') zip_code = request.POST.get('zip_code', '') phone = request.POST.get('phone', '') order = Orders(items_json=items_json, name=name, email=email, address=address, city=city, state=state, zip_code=zip_code, phone=phone, amount=amount) order.save() id = order.id update = OrderUpdate(order_id=id, update_desc="The Order has been Placed") update.save() param_dict = { 'MID': 'xxxxxxxxxxxxxxxxxx', 'ORDER_ID': str(order.id), 'TXN_AMOUNT': str(amount), 'CUST_ID': str(email), 'MOBILE_NO': str(phone), 'EMAIL': str(email), 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://127.0.0.1:8000/handlerequest/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'store/paytm.html', {'param_dict': param_dict}) return render(request, 'store/checkout.html')
def handlerequest(request): # paytm will send you post request here form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: print('Order successful') else: messages.error( request, 'Order was not successful because' + response_dict['RESPMSG']) return redirect('Checkout') return render(request, 'shop/paymentstatus.html', {'response': response_dict})
def post(self, request): form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: if response_dict['RESPCODE'] == '01': print('order successful') else: print('order was not successful because' + response_dict['RESPMSG']) return render(request, 'app/paymentstatus.html', {'response': response_dict})
def post(self, request): form = Checkoutform(request.POST or None) try: order_qs = Order.objects.get(user=request.user, ordered=False) if form.is_valid(): Address = form.cleaned_data.get('Address') apartment_add = form.cleaned_data.get('apartment_add') country = form.cleaned_data.get('country') zip = form.cleaned_data.get('zip') #Add functionality to these fields #same_bill_add=form.cleaned_data.get['same_bill_add'] #save_info=form.cleaned_data.get['save_info'] #payment_option=form.cleaned_data.get['payment_option'] billingaddress = BillingAddress(user=request.user, Address=Address, apartment_add=apartment_add, country=country, zip=zip) billingaddress.save() order_qs.billing = billingaddress order_qs.ordered = True order_qs.save() param_dict = { 'MID': 'MuoTsy79388780301387', 'ORDER_ID': str(order_qs.id + 100), 'TXN_AMOUNT': str(order_qs.total()), 'CUST_ID': request.user.username, 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://127.0.0.1:8000/handlerequest/', } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'app/paytm.html', {'param_dict': param_dict}) messages.info(request, "Failed checkout") return redirect("app:checkout") except ObjectDoesNotExist: messages.info(request, "You do not have any active order") return redirect("app:order")
def handlerequest(request): #paytm post req form = request.POST response_dict = {} for i in form.keys(): response_dict[i] = form[i] if i == 'CHECKSUMHASH': checksum = form[i] verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum) if verify: if response_dict['RESPCODE'] == '01': print('Payment successfull') msg = Rent.objects.get(order_id=response_dict['ORDERID']) msg.paid = True msg.paid_on = response_dict['TXNDATE'] msg.save() else: print('Payment was not successfull because' + response_dict['RESPMSG']) return render(request, 'paymentstatus.html', {'resp': response_dict})
def publish(request, ad_id, screen_id): ad = None screen = None for ads in AdMedia.objects.all(): print(ads.id) if ads.id == int(ad_id): ad = ads break for screens in Screens.objects.all(): if screens.auto_id == int(screen_id): screen = screens break print(1, screen) print(2, ad) if not screen or not ad or ad.username != request.user: # Screen or Ad not found. # Advertisement does not belong to the current user. # Or Screen is occupied fully. return redirect('/adv/publish/' + str(ad_id) + '?info=Some Error Occurred&msgtype=error') if screen.ad_available <= 0: return redirect('/adv/publish/' + str(ad_id) + '?info=Screen not available&msgtype=warning') for x in range(10): # print 10 random values between # 1 and 100 which are multiple of 5 ra = ''.join([ random.choice(string.ascii_letters + string.digits) for n in range(15) ]) print(screen_id) cost = get_cost_inner(screen.auto_id) sub_obj = Subscription(gateway_id=str(ra), screen=screen, ad=ad, cost=cost) sub_obj.save() print('subcription_id', sub_obj.transaction_id) param_dict = { 'MID': 'BiDzIl44175596745392', 'ORDER_ID': str(ra), 'TXN_AMOUNT': str(cost), 'CUST_ID': str(screen_id), 'INDUSTRY_TYPE_ID': 'Retail', 'WEBSITE': 'WEBSTAGING', 'CHANNEL_ID': 'WEB', 'CALLBACK_URL': 'http://127.0.0.1:8000/adv/handlerequest/' + str(sub_obj.transaction_id), } param_dict['CHECKSUMHASH'] = Checksum.generate_checksum( param_dict, MERCHANT_KEY) return render(request, 'Advertiser/paytm.html', {'param_dict': param_dict})