Example #1
0
def payonline(request):
    user = get_user_model()
    order = Order.objects.filter(user=request.user, delivered=False).first()
    if request.method == "POST":
        param_dict = {
            'MID': 'MJjWrZ23383299577319',
            'ORDER_ID': str(order.orderid),
            'TXN_AMOUNT': str(order.total),
            'CUST_ID': str(order.user),
            '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, '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')
        else:
            print('order was not successful because' +
                  response_dict['RESPMSG'])
    return render(request, 'QuickShop/paymentstatus.html',
                  {'response': response_dict})
Example #3
0
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,
                       amount=amount,
                       email=email,
                       address=address,
                       city=city,
                       state=state,
                       zip_code=zip_code,
                       phone=phone)
        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})
        param_dict = {
            'MID':
            'VMLskh33374131769871',  # WorldP64425807474247  # VMLskh33374131769871
            '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/handlerequest/',
        }
        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            param_dict, MERCHANT_KEY)
        return render(request, 'shop/paytm.html', {'param_dict': param_dict})

    return render(request, 'shop/checkout.html')
Example #4
0
def checkout(request):
    if request.method == "POST":
        items_json = request.POST.get('itemsJson', '')
        name = request.POST.get('firstName', '') + " " + request.POST.get(
            'lastName', '')
        amount = request.POST.get('amount', '')
        email = request.POST.get('email', '')
        phone = request.POST.get('phone', '')
        order = Orders(items_json=items_json,
                       name=name,
                       email=email,
                       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

        param_dict = {

            # 'MID': '',
            # 'ORDER_ID': str(order.order_id),
            # 'TXN_AMOUNT': str(amount),
            # 'CUST_ID': email,
            # 'INDUSTRY_TYPE_ID': 'Retail',
            # 'WEBSITE': 'DEFAULT',
            # 'CHANNEL_ID': 'WEB',
            # 'CALLBACK_URL':'http://127.0.0.1:8000/shop/orderstatus/',
            'MID': '',
            '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://streambay.net/shop/orderstatus/',
        }
        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            param_dict, MERCHANT_KEY)
        return render(request, 'shop/paytm.html', {'param_dict': param_dict})

    return render(request, 'shop/checkout.html')
Example #5
0
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
        # 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': 'WcBNVJ37493822308306',
            '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/handlerequest/',
        }
        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            param_dict, MERCHANT_KEY)
        return render(request, 'shop/paytm.html', {'param_dict': param_dict})

    return render(request, 'shop/checkout.html')
Example #6
0
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()
        thank = True
        id = order.order_id
        #return render(request, 'shop/Checkout.html', {'thank': thank, 'id': id})
        param_dict = {
            'MID': 'qyGHOA49166805835926',
            '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/handlerequest/',
        }
        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            param_dict, MERCHANT_KEY)
        return render(request, 'shop/paytm.html', {'param_dict': param_dict})

    return render(request, 'shop\Checkout.html')
Example #7
0
def checkout(request):
    if request.method == "POST":
        name = request.POST.get("name", '')
        email = request.POST.get("email", '')
        address = request.POST.get("address1", '') + " " + request.POST.get(
            "address2", '')
        city = request.POST.get("city", '')
        state = request.POST.get("state", '')
        zipcode = request.POST.get("zip", '')
        phone = request.POST.get("contact", '')
        items_json = request.POST.get("itemsJson", '')
        amount = request.POST.get("amount", 0)
        ord = order(items_json=items_json,
                    name=name,
                    email=email,
                    address=address,
                    city=city,
                    state=state,
                    zipcode=zipcode,
                    phone=phone,
                    amount=amount)
        ord.save()
        thank = True
        id = ord.order_id
        ordupdate = OrderUpdate(order_id=id,
                                update_desc="The order has been placed")
        ordupdate.save()
        param_dict = {
            'MID': 'CGTtuV46964642507305',
            'ORDER_ID': str(ord.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/handlerequest/',
        }
        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            param_dict, MERCHANT_KEY)
        #return render(request, 'shop/checkout.html',{'id':id, 'thank':thank})
        return render(request, 'shop/paytm.html', {'param_dict': param_dict})

    return render(request, 'shop/checkout.html')
Example #8
0
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
    )  # ye btayga ki respose hai ki nahi paytm ne diya hua hai verify_checksum function
    if verify:
        if response_dict['RESPCODE'] == '01':
            print('order successful')
        else:
            print('order is not successful' + response_dict['RESPMSG'])

    return render(request, 'shop/paymentstatus.html',
                  {'response': response_dict})
Example #9
0
def loadPayment(request):
    render_dict = []
    data = {x: request.POST.get(x) for x in request.POST.keys()}
    get_order = Order.objects.get(orderstatus='addtocart', user_id_id=request.session['user_info']['id'])

    get_order.userDetail = 'name : {} {} \nmobile number : {} {} \naddress : {}\n{}\n{}\n{}\n{}\n{}'.format(
        data['firstname'], data['lastname'], data['mobile_number'], data['alternate_mobile_number'],
        data['address_line_1'], data['address_line_2'], data['city'], data['state'], data['zipcode'], data['country'])
    get_order.save()

    outOfStock_list = []
    for key, value in get_order.product.items():
        if Product.objects.get(pk=int(key)).quantity < value['quantity']:
            outOfStock_list.append(value['name'])

    if len(outOfStock_list) == 0:
        param_dict = {
            'MID': 'nHXgex32367017368258',
            'ORDER_ID': str(get_order.id + 8000),
            'TXN_AMOUNT': str(get_order.grandTotal),
            'CUST_ID': request.session['user_info']['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, 'paytm.html', {'param_dict': param_dict})
    else:
        temp = ""
        for i in outOfStock_list:
            temp = i + ", " + temp

        messages.error(request, temp[0:-1] + ' items is out of stock. remove from cart.')
        send_mail(
            'out of stock',
            temp[0:-1] + ' items is out of stock. remove from cart.',
            settings.EMAIL_HOST_USER,
            [get_order.user_id.username, ]
        )

        return redirect('/cart/')
Example #10
0
def response(request):
    # paytm will send you post request here
    form = request.POST
    response_dict = {}
    order_details = OrderModel.getObject('order_id', form['ORDERID'])
    order_details.transaction_id = form['TXNID']
    if (form['RESPCODE'] == '01'):
        order_details.transaction_status = True
    for i in form.keys():
        response_dict[i] = form[i]
        if i == 'CHECKSUMHASH':
            checksum = form[i]
    order_details.save()
    verify = Checksum.verify_checksum(response_dict, MERCHANT_KEY, checksum)

    if verify:
        response_dict['verify'] = "No tinkering happened"
        return render(request, 'paymentstatus.html',
                      {'response': response_dict})
    return render(request, 'paymentstatus.html', {'response': response_dict})
Example #11
0
def handlerequest(request):
    # Paytm will send you post request here. Exempting CSRF for this purpose
    form = request.POST
    print(form.keys())
    response_dict = {}
    for i in form.keys():
        response_dict[i] = form[i]
        if i == 'CHECKSUMHASH':
            checksum = form[i]

    # Verify Checksum through Paytm POST Request
    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, 'shop/paymentstatus.html',
                  {'response': response_dict})
Example #12
0
def Bookings(request):
    if request.method == "POST":
        date = datetime.date.today()
        bus_id = request.POST.get('bus_id')
        no_seats = 1
        bus = BusInfo.objects.get(id=bus_id)
        if bus:
            name = request.user.username
            source = bus.source
            destination = bus.destination
            startTime = bus.startTime
            price = bus.price
            rem_seats = bus.rem_seats - int(no_seats)
            BusInfo.objects.filter(id=bus_id).update(rem_seats=rem_seats)
            book = BookingDetails.objects.create(name=name,
                                                 source=source,
                                                 bus_id=bus_id,
                                                 startTime=startTime,
                                                 destination=destination,
                                                 price=price,
                                                 date=date,
                                                 number_of_seats=no_seats,
                                                 status='BOOKED')
            book.save()
            email = request.user.email
            id = book.id
            param_dict = {
                'MID': 'WorldP64425807474247',
                'ORDER_ID': str(id),
                'TXN_AMOUNT': str(price),
                'CUST_ID': email,
                'INDUSTRY_TYPE_ID': 'Retail',
                'WEBSITE': 'WEBSTAGING',
                'CHANNEL_ID': 'WEB',
                'CALLBACK_URL': 'http://127.0.0.1:8000/pay-amount/',
            }
            param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
                param_dict, MERCHANT_KEY)
            return render(request, 'home/paytm.html',
                          {'param_dict': param_dict})
    return render(request, 'home/home.html')
Example #13
0
def checkout(request):
    if request.method == "POST":
        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 = Order.objects.create(
            user=request.user,
            order_amount=Cart.objects.get(user=request.user).total_cost,
            order_address=address,
            order_city=city,
            order_state=state,
            order_phone=phone)
        cartitem = Cart_item.objects.filter(cart_id=Cart.objects.get(
            user=request.user))
        for i in cartitem:
            Order_item.objects.create(
                order_id=order,
                p_id=Product.objects.get(p_id=i.p_id.p_id),
                quantity=i.prod_quantity)

        param_dict = {
            'MID': 'MERCHANT_ID',
            'ORDER_ID': str(order.order_id),
            'TXN_AMOUNT': str(order.order_amount),
            'CUST_ID': request.user.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, 'pantry/paytm.html', {'param_dict': param_dict})
    return render(
        request, 'pantry/checkout.html',
        {'totalprice': Cart.objects.get(user=request.user).total_cost})
Example #14
0
def checkout(request):
    context = {'order': Order.objects.get()}
    if request.method == "POST":
        #print(request)
        # amount=request.POST.get('amount','')
        name = request.POST.get('name', '')
        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 = Orderadd(name=name,
                         email=email,
                         address=address,
                         city=city,
                         state=state,
                         zip_code=zip_code,
                         phone=phone)
        order.save()
        id = order.order_id
        print(id)
        order = Order.objects.get()
        amount = order.get_total()
        print(amount)
        param_dict = {
            'MID': 'aWRylh81879830028261',
            'ORDER_ID': str(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/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', context)
Example #15
0
def handlerequest(request):
    # paytm will send 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")
            print(response_dict)
            order = Order.objects.filter(orderid=response_dict['ORDERID'],
                                         delivered=False).first()
            order.paid = True
            order.save()
        else:
            print("order was not successful" + response_dict['RESPMSG'])

    return render(request, 'paymentstatus.html', {'response': response_dict})
Example #16
0
def handlerequest(request, pk):
	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':
			c_obj = DomesticComplaint.objects.get(pk=pk)
			c_obj.p_status = 1
			c_obj.new_cid = response_dict['ORDERID']
			c_obj.txn_id = response_dict['TXNID']
			c_obj.p_date = response_dict['TXNDATE']
			c_obj.admin_reply = 'Accepted'
			c_obj.save()
		else:
			print('order was not successful because' + response_dict['RESPMSG'])
	return render(request, 'divorce/paymentstatus.html', {'response': response_dict})
Example #17
0
def register(request):
    if request.user.registered:
        return redirect('home')
    if not request.user.published:
        return redirect('edit')
    reg = Register.objects.create(user=request.user)
    global USER
    USER = request.user
    param_dict = {
        'MID': 'tfbWmY61557297752157',
        'ORDER_ID': f'{reg.id}',
        'TXN_AMOUNT': '101',
        'CUST_ID': request.user.username.replace(' ', '__'),
        'INDUSTRY_TYPE_ID': 'Retail',
        'WEBSITE': 'WEBSTAGING',
        'CHANNEL_ID': 'WEB',
        'CALLBACK_URL': 'http://sainishadi.herokuapp.com/handlerequest/',
    }
    param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
        param_dict, MERCHANT_KEY)
    return render(request, 'paytm.html', {'param_dict': param_dict})
def admission():
    if 'student' in session:
        course_title = Posts.query.filter_by(slug=admission_slug).first()
        user = Users.query.filter_by(username=session['student']).first()
        data_dict = {
            'MID': 'VMjwTa47205061452223',
            'ORDER_ID':
            f'{course_title.sno}{random.randrange(0000000, 9999999)}',
            'TXN_AMOUNT': str(course_title.price),
            'CUST_ID': f'{user.sno}',
            'INDUSTRY_TYPE_ID': 'Retail',
            'WEBSITE': 'WEBSTAGING',
            'CHANNEL_ID': 'WEB',
            'CALLBACK_URL': 'http://127.0.0.1:5000/payment'
        }
        data_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            data_dict, MERCHANT_KEY)
        return render_template('paytm.html', data_dict=data_dict)
    else:
        flash("To admit a course you must log in first")
        return redirect('/')
Example #19
0
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()
        thank = True
        id = order.order_id
        param_dict = {
            "MID": 'HPbcya56610208791518',
            "ORDER_ID": str(order.order_id),
            "CUST_ID": email,
            "TXN_AMOUNT": str(amount),
            "CHANNEL_ID": "WEB",
            "INDUSTRY_TYPE_ID": "Retail",
            "WEBSITE": "WEBSTAGING",
            "CALLBACK_URL": "http://localhost:8000/shop/handlerequest/"
        }

        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            param_dict, MERCHANT_KEY)
        return render(request, 'shop/paytm.html', {'param_dict': param_dict})
        # return render(request, 'shop/checkout.html', {'thank':thank, 'id': id})
    return render(request, 'shop/checkout.html')
Example #20
0
def loadPayment(request):
    try:
        # totalOrderAmount = orderList.aggregate(Sum('totalPrice'))
        # allOrder = []
        # for i in orderList:
        #     allOrder.append(i.id)
        # print(">>>>>>>>>>>>>>", allOrder)
        # addPayment = Payment.objects.filter(payment=totalOrderAmount['totalPrice__sum'], paymentstatus='pending',
        #                                     orders=str(allOrder)[1:len(str(allOrder)) - 1],
        #                                     userId_id=request.session['login_Id'])
        # if len(addPayment) == 0:
        #     addPayment = Payment(payment=totalOrderAmount['totalPrice__sum'], paymentstatus="pending",
        #                          userId_id=request.session['login_Id'], orders=str(allOrder)[1:len(str(allOrder)) - 1])
        #     addPayment.save()
        #     orderid = addPayment.id
        # else:
        #     orderid = addPayment[0].id

        orderList = Order.objects.get(userId=request.session['login_Id'],
                                      orderstatus="addtocart")

        param_dict = {
            'MID': 'nHXgex32367017368258',
            'ORDER_ID': str(orderList.id),
            'TXN_AMOUNT': str(orderList.totalPrice),
            'CUST_ID': request.session['login_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)
        print(
            ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>",
            param_dict)
        return render(request, 'user/paytm.html', {'param_dict': param_dict})
    except Exception as e:
        print(e)
Example #21
0
def checkout(request):
    if request.method == "POST":
        name = request.POST.get('name', '')
        amount = request.POST.get('amount', '')
        email = request.POST.get('email', '')
        address = request.POST.get('address', '')
        roll_number = request.POST.get('roll_number', '')
        phone = request.POST.get('phone', '')
        payment = Payments(name=name,
                           email=email,
                           address=address,
                           roll_number=roll_number,
                           phone=phone,
                           amount=amount)
        payment.save()
        update = FeeUpdate(payment_id=payment.payment_id,
                           name=payment.name,
                           email=payment.email,
                           address=payment.address,
                           roll_number=payment.roll_number,
                           phone=payment.phone,
                           amount=payment.amount,
                           update_desc="InQueue")
        update.save()
        param_dict = {
            'MID': 'xIVIoz54669135199172',
            'ORDER_ID': str(payment.payment_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/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/checkout.html')
Example #22
0
def payment(request):
    if request.method == 'POST':
        name = request.POST.get('name')
        email = request.POST.get('email')
        mobile = request.POST.get('mobile')
        amount = request.POST.get('amount')
        payment_obj = SupportModel(name=name, email=email, mobile=mobile, amount=amount)
        payment_obj.save()
        param_dict = {

            'MID': MID,
            'ORDER_ID': str(payment_obj.id),
            'TXN_AMOUNT': str(amount),
            'CUST_ID': email,
            'INDUSTRY_TYPE_ID': 'Retail',
            'WEBSITE': 'coronavirusapis',
            'CHANNEL_ID': 'WEB',
            'CALLBACK_URL': 'https://coronavirus-apis.herokuapp.com/handler-payment/',
        }
        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(param_dict, MERCHANT_KEY)
        return render(request, 'intro/paytm.html', {'param_dict': param_dict})
    return render(request, 'intro/index.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(response_dict)
            update = OrderUpdate(odr_id=response_dict['ORDERID'], update_desc="The order has been placed")
            update.save()
            Order.objects.filter(odr_id=response_dict['ORDERID']).update(paymentstatus=True,
                                                                         paymentid=response_dict['TXNID'],
                                                                         bankid=response_dict['BANKTXNID'])
    else:
        print("Order was not successful because " + response_dict['RESPMSG'])
        update = OrderUpdate(odr_id=response_dict['ORDERID'], update_desc=response_dict['RESPMSG'])
        update.save()
        Order.objects.filter(odr_id=response_dict['ORDERID']).update(paymentstatus=False)
    return render(request, 'shop/paymentstatus.html', {"response": response_dict})
Example #24
0
def handlepayment(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':
            order_id = int(response_dict['ORDERID'])
            order = Order.objects.get(order_id=order_id)
            order.completed = True
            order.trans_mode = "Paid Online"
            order.transaction_id = response_dict['TXNID']
            order.save()
            return render(request, 'shop/complete.html',
                          {'response': response_dict})
        else:
            return render(request, 'shop/complete.html',
                          {'response': response_dict})
    else:
        return redirect('shop_cart')
Example #25
0
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.filter(order_id=response_dict['ORDERID'])
            for item in order:
                name = item.name
                emailId = item.email
            template = render_to_string('shop/orderEmail.html', {
                'response_dict': response_dict,
                'name': name
            })
            email = EmailMessage(
                'Order Confirmation',
                template,
                settings.EMAIL_HOST_USER,
                [emailId],
            )
            email.fail_silently = False
            email.send()
        else:
            print('order was not successful because' +
                  response_dict['RESPMSG'])
            emailId = ''
    return render(request, 'shop/paymentstatus.html', {
        'response': response_dict,
        'email': emailId
    })
Example #26
0
def payment(request, pk):
    if request.method == "POST":
        c_obj = HarassmentComplaint.objects.get(pk=pk)
        c_obj.c_amt = request.POST.get('price', '')
        c_obj.save()

        temp = str(c_obj.hc_id)
        o_id = str(uuid.uuid4())
        if c_obj.p_status == 1:
            o_id = str(c_obj.new_cid)

        param_dict = {
            'MID':
            'DIY12386817555501617',
            'ORDER_ID':
            o_id,
            'TXN_AMOUNT':
            str(c_obj.c_amt),
            'CUST_ID':
            c_obj.o_email,
            'INDUSTRY_TYPE_ID':
            'Retail',
            'WEBSITE':
            'WEBSTAGING',
            'CHANNEL_ID':
            'WEB',
            'CALLBACK_URL':
            'http://127.0.0.1:8000/harassment/' + temp + '/' +
            'handlerequest/',
        }
        param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
            param_dict, MERCHANT_KEY)

        return render(request, 'divorce/paytm.html',
                      {'param_dict': param_dict})

    return render(request, 'divorce/payment.html')
Example #27
0
def checkout(request):
    if request.user.is_anonymous:
        params = {'msg' : "You need to Login First"}
        return render(request,'index.html', params)
    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','')
        contact = request.POST.get('contact','')
        order = Orders(items_json=items_json, name=name, email=email, address=address, city=city, state=state, zip_code=zip_code, contact=contact, 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,'thankyou.html', {'thank' : thank, 'id' : id})
        # Request Paytm to transfer the amount to your account after payment by user
        param_dict = {
            
            'MID':'please_enter_your_merchant_id',
            '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/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')
Example #28
0
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':
            allproduct = Orders.objects.all()
            useremail = list(reversed(allproduct))[0].email
            username = list(reversed(allproduct))[0].name
            userid = list(reversed(allproduct))[0].order_id
            orderprice = list(reversed(allproduct))[0].amount
            template2 = render_to_string('shop/orderemail.html', {
                'name': username,
                'orderid': userid,
                'amount': orderprice
            })
            email = EmailMessage('order succesfull', template2, to=[useremail])
            email.send()

            print('order successful')

        else:
            p = Orders.objects.all()
            q = OrderUpdate.objects.all()
            r = list(reversed(p))[0].delete()
            r = list(reversed(q))[0].delete()
            print('order was not successful because' +
                  response_dict['RESPMSG'])
    return render(request, 'shop/paymentstatus.html',
                  {'response': response_dict})
Example #29
0
def handlerequest(request):
    global orderObj
    # paytm will send you post request here
    form = request.POST
    response_dict = {}
    checksum = ''
    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')
            orderObj.save()
            # Create entry in order status table
            orderstatus = OrderStatus(
                orderid=orderObj.order_id,
                orderstatus="Order Recieved just now and sent for packing.")
            orderstatus.save()
            print("printing itmes json", orderObj.items_json, " and its type",
                  type(orderObj.items_json))
            mydict = json.loads(orderObj.items_json)
            for key in mydict:
                product_id = mydict[key][6]
                types = mydict[key][7]
                prdouct_qnty = mydict[key][2]
                # Update the quantity of products in products database which is ordered
                # (i.e decrease the amount of quantity )
                updateProductDb(product_id, types, prdouct_qnty)
        else:
            print('order was not successful because' +
                  response_dict['RESPMSG'])
    return render(request, 'shop/paymentstatus.html',
                  {'response': response_dict})
Example #30
0
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('Payment successful')
            appobj = Appointment.objects.get(pk=response_dict['ORDERID'])
            appobj.txnid = response_dict['TXNID']
            appobj.payment_status = True
            appobj.save()

        else:
            print('Payment was not successful because' +
                  response_dict['RESPMSG'])
    return render(request, 'patient/paymentstatus.html',
                  {'response': response_dict})