payee id is from current user
add pre trigger and some refactoring