From 3ffad22f15b2ce6e9e193c0336dd19b328731985 Mon Sep 17 00:00:00 2001 From: gaurav Date: Thu, 16 Feb 2017 16:09:48 +0530 Subject: [PATCH] [python-sample-app] added support for order --- app.py | 28 ++++++++++++++++++++++++---- templates/app.html | 3 ++- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/app.py b/app.py index 4a6a79b..bc65bd6 100644 --- a/app.py +++ b/app.py @@ -3,20 +3,40 @@ from flask import Flask, render_template, request -app = Flask(__name__,static_folder = "static", static_url_path='') +app = Flask(__name__, static_folder="static", static_url_path='') razorpay_client = razorpay.Client(auth=("", "")) @app.route('/') def app_create(): - return render_template('app.html') + data = { + 'amount': 5100, + 'currency': 'INR', + 'receipt': 'test receipt', + 'payment_capture': 1, + 'notes': { + 'key': 'value' + } + } + + order = razorpay_client.order.create(data) + + order_id = order['id'] + + return render_template('app.html', order_id=order_id, amount=data['amount']) @app.route('/charge', methods=['POST']) def app_charge(): - amount = 5100 + params_dict = dict(request.form.iteritems()) + + try: + razorpay_client.utility.verify_payment_signature(params_dict) + except ValueError: + return json.dumps('Signature Validatioon failed') + payment_id = request.form['razorpay_payment_id'] - razorpay_client.payment.capture(payment_id, amount) + return json.dumps(razorpay_client.payment.fetch(payment_id)) if __name__ == '__main__': diff --git a/templates/app.html b/templates/app.html index 1ebe927..34e8f86 100644 --- a/templates/app.html +++ b/templates/app.html @@ -7,7 +7,7 @@