The breakage deposit should not be categorized as revenue, because you have undertaken no economic activity to earn it. Likewise, returning the deposit is not actually an expense. It is merely satisfying the liability. What I would do is:
-
Create a liabilities account called Breakage Deposits.
-
Create the new customer identity, if necessary.
-
When you create a sales invoice, include a line for the deposit and allocate only that line to the Breakage Deposits
account. Allocate other lines according to what type of sale they are.
-
Using a journal entry, transfer the deposit to Customer credits
for that customer. Debit Breakage Deposits
and credit Customer credits
.
-
Under Bank Accounts
, Receive Money against that invoice in Accounts Receivable
. This can be done all at once, if the customer pays in full, or in stages.
-
When the chairs are returned from rental, Spend Money from the bank account, allocating the expenditure to Customer credits and the appropriate customer.
Unfortunately, as you have observed, you cannot allocate a sales invoice line item directly to Customer credits
. If you could, steps #1 and #2 above would not be necessary. I have raised this issue with @lubos before, but without response. This is the same situation as when a customer pays a deposit against upcoming delivery of goods or services, but requires a sales invoice in order to authorize payment. The small change of allowing allocation of sales invoice lines to Customer credits
would greatly streamline the workflow.
An important consideration here is that Manager’s present restriction requires creation of a liabilities account that you expect to be zero. Much better to hold amounts owed to customers in their individual Customer credits
subaccounts than to leave them lumped together in the temporary liabilities account where they are nameless.