Assume your client confirmed a project with you and agree to pay a nonrefundable deposit of $10,000. The deposit will be used as a part payment or forfeited if the project cancelled.
From IRAS (http://iras.gov.sg):
Q: Do I need to charge GST on deposit received from customers?
A: If a deposit is required to be collected as a
(a) security and is refundable - GST is not chargeable.
(b) partial payment - GST is chargeable.
You create an invoice to the customer and use the “Nonrefundable Deposit Collected” account under the By Account tab of the invoice transaction. The “Nonrefundable Deposit Collected” account is a Current Liabilities account (you may rename the account according to the accounting requirement). Although, this is a security deposit, it is nonrefundable, hence GST applied. The double entry for this transaction will be:
Debit Accounts Receivable 10,700
Credit Nonrefundable Deposit Collected 10,000
Credit GST Received (Output) 700
If customer decided to call off the project, since it is a nonrefundable deposit, you may pass a journal to debit Nonrefundable Deposit Collected account and credit Other Income. As the GST has already been taken care of initially, the full amount of the nonrefundable deposit will be reclassified to the Other Income account.