By 'outstanding expenses,' I mean bills that are due but that you cannot, at present, pay. Nor do you know exactly when in the future you would be able to pay.

Here's what I've experimented with:

I have created a new liability account ('TEST') with an opening balance equal to the amount of the bill. I dated this initial transaction to when I was supposed to pay the bill.

So far so good. Recording the bill's payment is what I find difficult. To record the transaction, I have credited the 'Cash in Wallet' account, and debited the 'TEST' account.

The problem is this bypasses the 'Expense' account. Ideally, I would like for the bill-payment transaction to show as an expense. Also, I thought the only way to modify Balance Sheet Accounts is through Income and Expense Accounts.

The ability to account for outstanding expenses is very useful for budgeting.


The cable bill was due to be paid on 01/09/2014, but I could not pay it back then. I cannot record it as an Expense-transaction with a future data, because I do not know when I will be able to pay.

Many thanks in advance, absconditus

2 Answers 2


When you create a liability account with an opening balance, this creates a transaction to the account Equity:Opening Balance. You really want this transaction to be an expense.

I would delete the TEST account and the transactions you have made so far, and start again. Make a liability account (call it Liabilities:Overdue Cable Bill or something similar instead of the uninformative TEST) with an opening balance of 0, and create a transaction dated 01/09/14 which debits Liabilities:Overdue Cable Bill (showing up in the right-hand column as a charge) and credits Expenses:Cable (in the left-hand column as an expense). To check that the sign is right, Liabilities:Overdue Cable Bill should now have a positive balance, because money is owed. This indicates that you spent money you didn't have on cable, and now you owe the cable company.

When you pay off the debt, make a transaction that debits (right column) Assets:Cash in Wallet and credits Liabilities:Overdue Cable Bill (left column). Now you should have a reduced balance in Assets:Cash in Wallet and a zero balance in Liabilities:Overdue Cable Bill, and the entry in Expenses:Cable is still there to indicate where the money went.

This assumes you paid the bill in cash from your wallet; if you paid it by check or bank transfer or something else, you probably want to substitute Assets:Cash in Wallet with Assets:Checking Account or whatever is appropriate.

  • 1
    Just noticed this: When you pay off the debt, make a transaction that 1*debits (right column) Assets:Cash in Wallet and 2*credits Liabilities:Overdue Cable Bill (left column) Shouldn't (1) and (2) be the other way around?
    – samizdat
    Sep 15, 2014 at 23:31
  • @absconditus: No. You definitely want to debit Cash in Wallet so that its balance goes down (you now have less money in your wallet). Crediting a liability account also causes its balance to go down (because you now owe less), and that is what we want. Sep 16, 2014 at 1:17
  • 1
    Sorry if I'm being a bit dense. I don't know much about accounting, but I thought one 'credits' the source of a transaction and 'debits' its destination. In this case, we are moving money 'from' Cash in Wallet 'to' Liabilities. Also, in my interface the 'credit' column is on the right side, while the 'debit' is on the left side. (i.imgur.com/Pk23nCT.jpg). Sorry to waste more of your time. It's just that I've tried your way and it does the opposite - it increases the Liabilities account.
    – samizdat
    Sep 16, 2014 at 11:13
  • @absconditus: Oh, I think I see what may be happening. If you go to Preferences:Accounts, what is the setting of Reversed Balance Accounts? I have "Credit accounts" which causes liability accounts to show a positive balance when you owe money. Anyway, regardless of the column labels (which differ by account type), I'm pretty certain that the left/right prescriptions above are correct. I guess the most reliable test is whether the second transaction causes your bank balance to decrease and zeros out the liability account. Sep 16, 2014 at 14:08
  • @absconditus: You might also double check that your Liability account really is of type Liability (right-click it in the main Accounts tab and pick "Edit Account" from the context menu). Sep 16, 2014 at 14:09

While I'm not an accountant, this is how I do this for my personal accounting:

  1. I create a Vendor by going to Business:Vendor:New Vendor, see below: enter image description here
  2. I create a bill by going to Business:Vendor:New bill, see below: enter image description here
  3. Add your transaction info, you enter say Project as action and your expense account and amount, ...

Note, if you don't want the expense to take effect right away meaning it'll affect your Profits, then the transaction date here needs to be something in the future, then when you hit that date and the bill is still not paid, you just unpost the bill and repost again with a new date

. So you end up with something like the following: enter image description here 4. Now you post the invoice to Liabilities:Accounts Payable:The Cable Company, the invoice due date should reflect what you had in the invoice. This is important as gnucash will warn you that your bill is due if you want to pay it every time it starts: enter image description here

When you're ready to pay the bill, just find the bill and click pay invoice. If it's already paid and you imported transactions from your bank, find the transaction then right click and click assign as payment then choose your invoice.

Note: I've being using this to also record cheques that are given to people but not cashed yet.

I hope that helps.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .