The short answer is no, you don’t, but and there is always a “but”….
All employees are entitled to 5.6 weeks of annual leave and it is quite legal to include bank holidays in this figure. However, this should be clearly spelt out in the contract of employment (which of course you have given them). Additional bank holidays can also be included in the annual leave.
If the contract does include a bank holiday working clause, you should provide the opportunity for the employee to take their leave at another time in the year.
If the contract of employment does not cover the situation, then what has become the norm, is established as the working practice.
If the employee or employees have worked bank holidays and been paid for this at a previous time, then this practice should be continued as the precedent has been set.
Should the employee, even when their contract of employment stipulates they are to work on bank holidays, refuse to do so, this then becomes a disciplinary issue and the employer can commence disciplinary procedures.
Even when armed with the facts, as always our advice is to take professional advice before taking any action whatsoever, including discussing the issue with staff.