Is there a way to keep a purchase invoice that is NOT marked as paid from being in the P&L and expenses until its marked paid? I put an expense in to track it that its made, but I don’t need that being a part of my P&L and an expense until after I make a payment against that purchase invoice. But once I submit an invoice and it says unpaid, its part of the expense already. I don’t want it as a draft, since I might need to make partial payments against it and have those payments count as expenses. Any way to do this?
Hi there,
Putting unpaid invoices on your P&L is pretty fundamental to how accrual accounting works. It sounds like you’re looking for cash basis accounting, which ERPNext can sort of handle but isn’t really designed for.
Your best bet is probably to process them all initially as Purchase Orders and then book the invoices only when payment is made.
More steps means more time for each process we do, I’m trying to do as few steps as possible to save time and streamline the process. No way to edit settings and stop it from doing what I mentioned?
No, not that I’m aware of. ERPNext doesn’t really do cash basis accounting. You can make it work, but it’s not what the doctypes and workflows are designed to support.
The issue is more than just a setting for reports. Purchase Invoices write expenses and liabilities to the General Ledger when they are submitted.
Edited to add: What I’m suggesting doesn’t involve extra steps. Right now, you’re using an accrual process Purchase Invoice
→ Payment Entry
. If you don’t want the accrual on your books, you could do Purchase Order
→ Purchase Invoice (with payment included)
instead.
If you’re trying to approximate cash basis accounting, you really shouldn’t be using the Payment Entry
doctype at all.
All this time I was under the understanding that a “Payment Entry” was needed to mark the final invoice as paid. Is that not necessary?
Anything that clears the payable liability on the invoice will mark it as paid.
A Purchase Invoice creates a liability to a creditor (accounts payable). A Payment Entry settles that debt. In accrual basis accounting, those are two separate steps. If you’re using cash basis accounting, you don’t have accounts payable. Expenses and payments should always be booked as part of the same transaction.
You can do that by checking the “Is Paid” field on your invoices. From the sounds of it, you probably don’t ever want to submit an invoice without marking it Is Paid. It might even be worth setting the value as checked by default and hiding the field so it never gets forgotten by mistake.
https://docs.frappe.io/erpnext/user/manual/en/purchase-invoice#42-accounting-when-is-paid-is-checked
Another question, or thought. If I’m doing Purchase Order → Purchase Invoice (w payment), how would I process partial payments in this manner? There are some larger payments we make payments to over like two months, how would this work?
I’m trying to wrap my head around it to make it happen, some things I’ve found is I can make fields for purchase orders and using scripts copy those fields to purchase invoices when we convert, which is helpful with customer data, what method was use, etc. stuff we track.
There are still some minor things I’m trying to figure out however as far as process goes. Thanks!
You cannot process partial payments with the integrated payments feature of ERPNext in Purchase Invoice or Sales Invoice. The most correct time to use this feature is when it the payment and receipt of goods or services is simultaneous. But if you know about a bill and aren’t entering the invoice because you’re on 30 day terms and it isn’t due yet, that’s incorrect accounting.
Why do you want to obscure your payables? What problem does this solve? It will neither hold up in court or under audit.
Whatever you submit in an invoice is booked as an expense on that posting date. That’s just what invoices do. The only way to do a partial payment like you’re describing is to create a partial invoice (i.e., creating the invoice for less than 100% of the quantity on the purchase order).
You’re really pushing against ERPNext’s design at this point, though. If you’re truly stuck with cash basis accounting, I’d probably try to convince you that this software is just not a good fit for your needs.