Просмотр исходного кода

fix: check payment status before capturing the payment

pull/2/head
Saurabh 6 лет назад
Родитель
Сommit
1fa9736335
1 измененных файлов: 5 добавлений и 1 удалений
  1. +5
    -1
      payments/payment_gateways/doctype/razorpay_settings/razorpay_settings.py

+ 5
- 1
payments/payment_gateways/doctype/razorpay_settings/razorpay_settings.py Просмотреть файл

@@ -312,9 +312,13 @@ def capture_payment(is_sandbox=False, sanbox_response=None):
data = json.loads(doc.data) data = json.loads(doc.data)
settings = controller.get_settings(data) settings = controller.get_settings(data)


resp = make_post_request("https://api.razorpay.com/v1/payments/{0}/capture".format(data.get("razorpay_payment_id")),
resp = make_get_request("https://api.razorpay.com/v1/payments/{0}".format(data.get("razorpay_payment_id")),
auth=(settings.api_key, settings.api_secret), data={"amount": data.get("amount")}) auth=(settings.api_key, settings.api_secret), data={"amount": data.get("amount")})


if resp.get('status') == "authorized":
resp = make_post_request("https://api.razorpay.com/v1/payments/{0}/capture".format(data.get("razorpay_payment_id")),
auth=(settings.api_key, settings.api_secret), data={"amount": data.get("amount")})

if resp.get("status") == "captured": if resp.get("status") == "captured":
frappe.db.set_value("Integration Request", doc.name, "status", "Completed") frappe.db.set_value("Integration Request", doc.name, "status", "Completed")




Загрузка…
Отмена
Сохранить