How do i go about on salary advance for employees, this is paying the empoyee before end month and deducting the amount at the end of the month
It may be simplest to create a Salary Advances account in your Assets side (if you make it a Payable account, you can use Party and Employee and Employee ID in your transactions so that you can track at an employee level without having to clutter your chart of accounts with one Salary Advances account per employee).
Then when you actually pay the salary, you can use this account instead of the bank account.
I can see that parts of this will end up becoming manual but with a little bit of scripting you should be able to automate this.
Hope this helps.