Stock Received But Not Billed


Pls can someone explain what Stock Received But Not Billed means?

I just received some items into inventory and completed the goods receipt, invoicing and payment processes on ERPNext.

However i have the following issues

  1. Some items received into the system didn’t update the stock balance.
  2. Stock received but not billed was on all the purchase invoices even when the invoice has been billed.

Pls can someone enlighten me?

Many Thanks


1 Like

Hi @adekunle!

For Question #1, did you check if your items are set to “Maintain Stock”? For #2, Stock Received But not Billed are Receipts which doesn’t have a “Submitted” Invoice linked to them yet.

Hope this helps!

As you receive goods, these goods are now part of your stock. Lets say you received steel used in the manufacturing of your components worth $100.

Now you have $100 worth of steel in your warehouse, but you have neither paid for it, nor created a liability for it yet - That’s done when you do the invoice.

So, the Stock Received but not Billed is a temporary account into which a liability is created, just so that your books balance (the philosophy of double entry book keeping).

As you make a Purchase Invoice, this value in Stock Received but not Billed is nullified and in its place a liability in favor of the supplier is created. This $100 now moves to your accounts payable report.

And finally when you make a payment, your liability against your supplier is nullified and you use the money in your cash box or your bank to pay your supplier.

So, the net effect of this cycle is that you paid $100 and received $100 of steel. But because this happens on different time slices, these multiple accounts are necessary. But this has no effect on your Balance Sheet or your P&L. The money in your bank is now locked up in steel in your stores.

You can eliminate the Purchase Receipt, if you so wish, by doing a Purchase Invoice directly, but just make sure that you check the Update Stock Checkbox.

As @creamdory has detailed out, if you set up an item without checking the Maintain Stock Checkbox, the value of that item is directly expensed out.

You’d want to do this for your Category C items, that you don’t want to track stock issues for (like Cotton Waste, Printing Paper, etc.).

If you’ve made a mistake, but intended to check Maintain Stock checkbox but missed doing so, things become a bit convoluted now:

You have two options:

The Simpler (but not necessarily easier) Option:

Cancel all transactions starting from downstream transactions.
Change the Item to Maintain Stock
Redo your transactions

The more complicated option:

First check if ERPNext allows you to check Maintain Stock option for that item(s). Chances are it won’t. In which case, Duplicate Item and give it another Item Code. But remember to Check Maintain Stock this time around.

If you have completed all transactions for these items, the net effect of the transaction is that you paid $100 for an item and that has got expensed out. If you didn’t select a specific expense account in the item master or the transactions (Purchase Receipt, Purchase Invoice), it should have gotten expensed out to the default expense account. In effect your money (Balance Sheet) has moved to the expense account (P&L).

Use the general ledger to find out what account has been expensed out.

This assumes that you’ve enabled “Post an Accounting Entry for every Stock Transaction”.

Now pass a Journal Entry that reverses that account by that amount and use a Temporary Opening account for the balancing entry.
Now go to Stock>Stock Reconciliation (you can’t do this if you’ve enabled Serial Number or Batch Number on your Item, in which case use Stock Entry purpose Material Receipt) and set up a new Stock Reconciliation and inward the item at the value that you’d bought this for and use the same Temporary account for the balancing entry.

If the amounts in the Journal Entry and the Stock Reconciliation matches, the net effect of these two entries is that you have moved the value of your Inventory that you’d received from your supplier from the Expense account (P&L) to your Stock Account (Balance Sheet).

I’d recommend that you take the more complicated option, as the simpler option may not be available all the time. Plus it is natural for people to make mistakes and your diving into this will help you and your organization become more resilient form errors and mistakes.

Hope this helps.




Hello @creamdory,

Thanks for your response. To answer your questions,

  1. Yes, the items are set o maintain stock
  2. Yes there is a submitted invoice to the Purchase order and Purchase receipt.

Kind Regards,


Thanks Jay,

The confusion for me at the moment is that this issue shouldn’t occur as the maintain stock flag is set on the item record and i have created all the necessary documents that should support the Purchase order. I.e the Purchase receipt and purchase order. In this instance, we pay the invoice on the due date. Hence, payment can not be processed yet.

But the problem still exits.

Your thoughts?

Many Thanks

Please check if you have set up an expense account for these items in your item master. Or if the Purchase Receipt (please check in the Purchase Receipt Item level as well) has an entry against the Expense Account.



1 Like


I’m having the same issue as @adekunle, I follow the correct step PO > Purchase Receipt > Payment Invoice. However, in Purchase Receipt ledger, the amount of Stock In Hand is not equal to Purchase Receipt amount and there is Stock Received But Not Billed amount in debit balance (Rightly, when receive stock, Stock In Hand amount should be equal Stock Received But Not Billed amount).


What is that 429.50 value? That’s hitting both sides. Are those non-stock items? Or services? Maybe thats the reason that value is not hitting your Stock in Hand account.



Hi @JayRam,

I followed the process PO > Purchase Receipt > Purchase Invoice. But i don’t know how the issue happen and how to correct it?

Anyway, I also got issue when Purchase Receipt and Accounting Ledger appear different amount for the same transaction. I tried to check line by line item for price and valuation, and appear correct but different amount still appear between Purchase Receipt & Accounting Ledger as in following screen:



The value difference? Maybe you have some taxes and other charges loaded onto the Purchase Receipt. And you have set up the taxes and charges template such that it hits the valuation of the item.

Just check the effect of the Purchase Invoice on the General Ledger. Maybe that indicates something else.

Or maybe you have multiple currencies involved.

All I can tell you is that this part (and most else) works as designed on ERPNext. So when you see results other than the one you are expecting, it 99.9% of the time means that there is a reason why it is showing higher numbers in the General Ledger than in the PR (at least the part of the PR that you’ve reproduced in your post).

Hope this helps.



Hi Jay,

Thank you. As I checked in all documents, there are no multi currency, taxes and charges involved, but the real issue may come from purchase of items that has price fluctuate from the standard buying price.

I tried to remove “valuation rate” in item, and seems the issue seems resolved.

Best regards,

This is an old posting but is related to my issue so I continue here.

After created PO, I created Purchase Invoice (bypassing the Purchase Recipt).
But in the invoice I don’t use the button “get items from”.

In the ledger I see that Stock Received but not Billed is cleared. No issue here.

Then I create a new Invoice for the same supplier. This time I hot the “get items from” button. And I still see the PO for that supplier. Select it, save the Invoice, and submit.

Now in the ledger I see there are 2 Invoices for 1 PO; with a uncleared Stock Received but not Billed account.
This cause a negative Stock Received but not Billed in the Balance Sheet (too many invoices than goods received).

This happens both with Update Stock checkbox checked or not.

So the issue I think is a bug:

  • When filling items in invoice directly, the “get items from” button should consider if the PO (and Stock Received but not Billed account) has been cleared. So not displaying the PO again.

But again, I might be wrong or missed a step.
Does anyone experience this issue?
Is there anything I missed or should do in doing the process?

Thank you