update bank gateway

This commit is contained in:
Parsa Nazer
2026-05-22 20:11:17 +03:30
parent e56df858fd
commit 6ed95784a3
22 changed files with 574 additions and 415 deletions
+7 -4
View File
@@ -58,6 +58,7 @@ class Bahamta(BaseBank):
"payer_mobile": self.get_mobile_number(),
"callback_url": self._get_gateway_callback_url(),
}
data.update(self.get_custom_data())
return data
def prepare_pay(self):
@@ -70,7 +71,9 @@ class Bahamta(BaseBank):
if response_json["ok"]:
# در این سیستم رفرنس برای ذخیره سازی بر نمی گردد!
token = self.get_tracking_code()
self._payment_url, self._params = split_to_dict_querystring(response_json["result"]["payment_url"])
self._payment_url, self._params = split_to_dict_querystring(
response_json["result"]["payment_url"]
)
self._set_reference_number(token)
else:
logging.critical("Bahamta gateway reject payment")
@@ -82,7 +85,7 @@ class Bahamta(BaseBank):
def prepare_verify_from_gateway(self):
super(Bahamta, self).prepare_verify_from_gateway()
token = self.get_request().GET.get("reference", None)
token = self.get_request().GET.get("reference")
self._set_reference_number(token)
self._set_bank_record()
@@ -109,7 +112,7 @@ class Bahamta(BaseBank):
super(Bahamta, self).verify(transaction_code)
data = self.get_verify_data()
response_json = self._send_data(self._verify_api_url, data)
if response_json.get("ok", False) and response_json.get("result", {}).get("state", None) == "paid":
if response_json.get("ok", False) and response_json.get("result", {}).get("state") == "paid":
self._set_payment_status(PaymentStatus.COMPLETE)
extra_information = json.dumps(response_json.get("result", {}))
self._bank.extra_information = extra_information
@@ -121,7 +124,7 @@ class Bahamta(BaseBank):
def _send_data(self, api, data):
try:
url = append_querystring(api, data)
response = requests.get(url, timeout=5)
response = requests.get(url, timeout=self.get_timeout())
except requests.Timeout:
logging.exception("Bahamta time out gateway {}".format(data))
raise BankGatewayConnectionError()