As an alternative to Zigbee, you might have a look at Wireless Sensor Tags, which use RF and have a very long range.
They don’t use a magnet, but they do detect open/closed through movement and angle change, plus temperature and humidity. One model does luminosity as well. You need a base station to use them, but it’s very small and relatively inexpensive.
There is a HA integration (yaml only and cloud-based, unfortunately).
I’ve had several of these for years and found them to be quite reliable. The manufacturer’s estimate of battery life is a bit optimistic - more like six months in my experience, particularly at low temperatures. Not waterproof (except for the sealed moisture sensors).