The problem with pulse counting is you will lose some percentage of them. For example, during Zigbee route discovery you’ll probably lose 5 seconds worth of pulses. You coudl look into the ‘Programmable XBee’ to do the counting locally and send a total over the RF.
If you set the correct bits in the IC setting, the Xbee will send you a new packet every time the input changes, but I won’t trust doing this with more than a 10Hz signals.