fix: use card's own currency for all card statement transactions
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
e975cfbe26
commit
677c1492e7
|
|
@ -1359,7 +1359,9 @@ def get_card_statement_transactions(from_date, to_date, card_account_number, log
|
||||||
if date_diff(getdate(to_date), getdate(from_date)) > 90:
|
if date_diff(getdate(to_date), getdate(from_date)) > 90:
|
||||||
return {"success": False, "message": "Card statement date range cannot exceed 90 days."}
|
return {"success": False, "message": "Card statement date range cannot exceed 90 days."}
|
||||||
|
|
||||||
pan = frappe.db.get_value("Kapital Bank Card", card_account_number, "pan") or card_account_number
|
card_doc = frappe.db.get_value("Kapital Bank Card", card_account_number, ["pan", "currency"], as_dict=True)
|
||||||
|
pan = (card_doc.pan if card_doc else None) or card_account_number
|
||||||
|
card_currency = (card_doc.currency if card_doc else None) or "AZN"
|
||||||
|
|
||||||
# Fetch card statement (date format: YYYY-MM-DD, raw Frappe date)
|
# Fetch card statement (date format: YYYY-MM-DD, raw Frappe date)
|
||||||
client = BIRBankClient(login_name)
|
client = BIRBankClient(login_name)
|
||||||
|
|
@ -1401,7 +1403,7 @@ def get_card_statement_transactions(from_date, to_date, card_account_number, log
|
||||||
|
|
||||||
# Amount and currency
|
# Amount and currency
|
||||||
amount = abs(flt(txn.get("amount") or txn.get("originalAmount") or 0))
|
amount = abs(flt(txn.get("amount") or txn.get("originalAmount") or 0))
|
||||||
currency = (txn.get("originalCurrencyStr") or txn.get("currencyStr") or "AZN").strip()
|
currency = card_currency
|
||||||
|
|
||||||
# Direction: DEBIT/CREDIT → D/C
|
# Direction: DEBIT/CREDIT → D/C
|
||||||
direction = (txn.get("direction") or "").upper()
|
direction = (txn.get("direction") or "").upper()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue