I just noticed the error message in the console:
Traceback (most recent call last):
File “apps/frappe/frappe/app.py”, line 121, in application
response = frappe.api.handle(request)
File “apps/frappe/frappe/api/init.py”, line 63, in handle
data = endpoint(**arguments)
File “apps/frappe/frappe/api/v1.py”, line 40, in handle_rpc_call
return frappe.handler.handle()
~~~~~~~~~~~~~~~~~~~~~^^
File “apps/frappe/frappe/handler.py”, line 53, in handle
data = execute_cmd(cmd)
File “apps/frappe/frappe/handler.py”, line 86, in execute_cmd
return frappe.call(method, **frappe.form_dict)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “apps/frappe/frappe/init.py”, line 1124, in call
return fn(*args, **newargs)
File “apps/frappe/frappe/utils/typing_validations.py”, line 36, in wrapper
return func(*args, **kwargs)
File “apps/frappe/frappe/desk/form/save.py”, line 41, in savedocs
doc.submit()
~~~~~~~~~~^^
File “apps/frappe/frappe/utils/typing_validations.py”, line 36, in wrapper
return func(*args, **kwargs)
File “apps/frappe/frappe/model/document.py”, line 1270, in submit
return self._submit()
~~~~~~~~~~~~^^
File “apps/frappe/frappe/model/document.py”, line 1251, in _submit
return self.save()
~~~~~~~~~^^
File “apps/frappe/frappe/model/document.py”, line 518, in save
return self._save(*args, **kwargs)
~~~~~~~~~~^^^^^^^^^^^^^^^^^
File “apps/frappe/frappe/model/document.py”, line 572, in _save
self.run_post_save_methods()
~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File “apps/frappe/frappe/model/document.py”, line 1378, in run_post_save_methods
self.run_method(“on_submit”)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File “apps/frappe/frappe/model/document.py”, line 1181, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File “apps/frappe/frappe/model/document.py”, line 1578, in composer
return composed(self, method, *args, **kwargs)
File “apps/frappe/frappe/model/document.py”, line 1556, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
~~^^^^^^^^^^^^^^^^^^^^^^^
File “apps/frappe/frappe/model/document.py”, line 1178, in fn
return method_object(*args, **kwargs)
File “apps/erpnext/erpnext/accounts/doctype/payment_entry/payment_entry.py”, line 208, in on_submit
self.make_gl_entries()
~~~~~~~~~~~~~~~~~~~~^^
File “apps/erpnext/erpnext/accounts/doctype/payment_entry/payment_entry.py”, line 1292, in make_gl_entries
make_gl_entries(gl_entries, cancel=cancel, adv_adj=adv_adj, merge_entries=merge_entries)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “apps/erpnext/erpnext/accounts/general_ledger.py”, line 59, in make_gl_entries
save_entries(gl_map, adv_adj, update_outstanding, from_repost)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “apps/erpnext/erpnext/accounts/general_ledger.py”, line 422, in save_entries
make_entry(entry, adv_adj, update_outstanding, from_repost)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “apps/erpnext/erpnext/accounts/general_ledger.py”, line 433, in make_entry
gle.submit()
~~~~~~~~~~^^
File “apps/frappe/frappe/utils/typing_validations.py”, line 36, in wrapper
return func(*args, **kwargs)
File “apps/frappe/frappe/model/document.py”, line 1270, in submit
return self._submit()
~~~~~~~~~~~~^^
File “apps/frappe/frappe/model/document.py”, line 1251, in _submit
return self.save()
~~~~~~~~~^^
File “apps/frappe/frappe/model/document.py”, line 518, in save
return self._save(*args, **kwargs)
~~~~~~~~~~^^^^^^^^^^^^^^^^^
File “apps/frappe/frappe/model/document.py”, line 540, in _save
return self.insert()
~~~~~~~~~~~^^
File “apps/frappe/frappe/model/document.py”, line 447, in insert
self.run_before_save_methods()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File “apps/frappe/frappe/model/document.py”, line 1335, in run_before_save_methods
self.run_method(“validate”)
~~~~~~~~~~~~~~~^^^^^^^^^^^^
File “apps/frappe/frappe/model/document.py”, line 1181, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File “apps/frappe/frappe/model/document.py”, line 1578, in composer
return composed(self, method, *args, **kwargs)
File “apps/frappe/frappe/model/document.py”, line 1556, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
~~^^^^^^^^^^^^^^^^^^^^^^^
File “apps/frappe/frappe/model/document.py”, line 1178, in fn
return method_object(*args, **kwargs)
File “apps/erpnext/erpnext/accounts/doctype/gl_entry/gl_entry.py”, line 89, in validate
self.check_mandatory()
~~~~~~~~~~~~~~~~~~~~^^
File “apps/erpnext/erpnext/accounts/doctype/gl_entry/gl_entry.py”, line 165, in check_mandatory
frappe.throw(
~~~~~~~~~~~~^
_(“{0} {1}: Either debit or credit amount is required for {2}”).format(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
self.voucher_type, self.voucher_no, self.account
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
)
^
File “apps/frappe/frappe/utils/messages.py”, line 148, in throw
msgprint(
~~~~~~~~^
msg,
^^^^
…<6 lines>…
primary_action=primary_action,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File “apps/frappe/frappe/utils/messages.py”, line 109, in msgprint
_raise_exception()
~~~~~~~~~~~~~~~~^^
File “apps/frappe/frappe/utils/messages.py”, line 58, in _raise_exception
raise exc
frappe.exceptions.ValidationError: Payment Entry ACC-PAY-2026-00256: Either debit or credit amount is required for 1110 - AR-Trade - CG