From e37c7e9b32cf7975277f47534e0b7cdff9547437 Mon Sep 17 00:00:00 2001 From: Mihir Kandoi Date: Wed, 24 Jun 2026 20:37:30 +0530 Subject: [PATCH] refactor: parse native JSON request args in accounts/doctype/dunning/dunning.py Use frappe.parse_json instead of json.loads so the whitelisted endpoints accept native JSON types (list/dict/bool) in addition to JSON strings. --- erpnext/accounts/doctype/dunning/dunning.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/erpnext/accounts/doctype/dunning/dunning.py b/erpnext/accounts/doctype/dunning/dunning.py index f64e957400b..0c5cf545c9c 100644 --- a/erpnext/accounts/doctype/dunning/dunning.py +++ b/erpnext/accounts/doctype/dunning/dunning.py @@ -248,8 +248,7 @@ def get_dunning_letter_text(dunning_type: str, doc: str | dict, language: str | DOCTYPE = "Dunning Letter Text" FIELDS = ["body_text", "closing_text", "language"] - if isinstance(doc, str): - doc = json.loads(doc) + doc = frappe.parse_json(doc) if not language: language = doc.get("language")