Mark invoice as "PAID" without creating a payment

Hi,

Wondering if it’s possible to mark a Sales Invoice as paid without creating the associated Payment entry in ERPNext?

Basically, I’m using ERPNext for invoicing and pushing all of the accounting stuff to XERO via an API. So once the invoice is created I’d like to have the option to mark it as Paid.

I’ve tried directly updating the ‘status’ field frm.set_value('status', 'paid'), however this doesn’t work and sends the form into a loop. I’m guessing there is logic in there somewhere looking for an actual payment doctype.

Hoping there is a simple way to solve this without digging too deep into the sales_invoice.js or .py source code?

Many thanks!