Hey, there's nothing wrong with asking a candidate what his/her current salary is. When we are about to make an offer to a candidate, we usually take a couple factors into consideration. We look at how many years of work experience the person has, his skills and qualifications, what the market is currently paying for someone doing the same job (we look at salary surveys and other comp info), we look at internal equity i.e. what are the other people in the department currently getting paid to do a similar job and we look at the person's current salary. We also take the candidate's salary expectations into consideration. eg. If you are an investment banker and are currently getting a base salary of $150k per annum and you are looking for $250K in your next job, then we would take that into consideration before offering you a job with our firm.
Another factor which we have to consider is the hiring manager's recruitment budget. Sometimes the hiring manager will just tell us that they are not willing to pay any more than $100K for a particular job. If that's the case, and the hiring manager is not willing to budge on salary, then there's no point in progressing any further with candidates who are currently earning $100K or more, or with candidates who have already told us that they are looking for more than $100K in their next job.
If the candidate is currently underpaid at Company XYZ, then we want to know about it. If this is the case, we will usually give the person a good (sometimes huge) salary increase to bring him up to market, when we make him a job offer.
HR does not usually interfere with job offers. Our line managers usually tell us what their recruitment budget is for a particular position and we work around that figure. Sometimes we actually advise the hiring managers to be more flexible with salaries if they want to attract & retain high calibre candidates. For example, last year, I recruited a lawyer from an MNC. The person had about 10 years relevant work experience but was grossly underpaid. I went through all of our salary surveys and found out that the person should have been paid 50% more than what she was getting to do his job. The Head of our Legal dep't only wanted to offer the candidate a 20% increase on his current salary. I told him that the candidate had very good work experience and skills and deserved to be paid more. I also explained that the person was underpaid at his current organisation.
In the end, after a lot of discussion, I managed to persuade the Head of Legal to hire the candidate and pay him what he was worth. I'm glad to say that the person is working out really well in our organisation and is well liked by his internal clients and colleagues.
Since most of you are not Compensation & Benefits specialists, I don't think you really understand how job offers are made. You may not be happy with your current HR staff but then not all HR staff are the same.
And where exactly are you all from? I have worked in the UK, Australia, NZ, Hong Kong & Singapore and have always been asked for salary details (not necessarily payslips) by my new employers, along with references.
As a candidate, you can always ask for whatever you want in terms of salary package from your new employer. HR ususally negotiates with candidates but we don't always give you guys everything that you ask for. Base salary is just one part of the salary package. You also need to take other factors into consideration like discretionary bonus potential, car allowance, club membership, housing allowance, stock options etc. It's the total package that really counts.