So here are my thoughts.
You have a series of special accounts. If you do leading digits of 1=asset, 2=liability, etc, then I would recommend putting these in 6xxx range so that they appear last on the dropdown boxes.
My thinking is this:
6010 -- Deposits Payable, Liability, Non-tracking Items Income and Receivables income checked.
Then have a series of accounts for tracking the expenses and income of categories of these. So maybe:
6110 -- Building repairs, expense, Payables expense checked
6120 -- Building repairs, income, receivables income checked, and so forth.
Your vendor transactions post to the first and your deductions from deposites post to the second. The fact that they are closely tracked and next to eachother on the COA shows you at a glance what you are looking at regarding unbilled repairs you need to deduct.
Then have a service with your standard deposit value, and the "income" set to track in the liability account. Then you can "sell" the service, but instead of posting income, you post a liability. This ensures your balance sheet is accurate.
Then when you are ready to return this, you issue a credit note to the customer. Start off with the amount of deposit against that same account, and then add line items for the deducted expenses. You can then post that, and "receive" the negative amount.