Hi,
0 is considered as not a price so when you save a price with a value of 0, it will remove it.
So it's not a bug.
There are two ways to do it though:
- instead of 0, you could write 0.00001 In that case, the price will be rounded to 0 when displaying it on the frontend, but the system will accept the price as it's not 0.
- Instead of using a price in each product you want to be free for a specific user group, you could instead create one discount with a 100% discount and restrict that discount to the user group (and maybe products) you want.