This article outlines the steps in handling upfront deposits.
You need to create an item that you will use when you record the transactions associated with upfront deposits Note that the item is linked to a liability account since upfront deposit, even though deposited to your bank account, is a liability and not an income.
When it’s time to collect payments, you can use the upfront deposit and apply it as payment to the invoice. In this step, you move the upfront deposit from the liability account to your income account. There are two ways to do this. Choose one that works best for your business.
Use this additional step if your customer cancels the job so the upfront deposit will not remain as a liability. You have two options to do this depending on your business process.