It's pretty easy to say "non-profits should pay the same as for-profits" when you exclude the entire foundation of the difference.
Non-profits get treated differently to incentivise their work. Instead of working to increase shareholder value, they work for some ulterior goal -- generally a beneficial goal that couldn't be brought around as a side-effect of some profit-making enterprise.
This difference isn't just a "some other difference", it's the crux. It's why they get special tax status while for-profit businesses -- yes, even those that "do good" -- don't. Society wants to encourage the work of non-profits.
Companies should consider offering special pricing to non-profits because it helps to encourage organisations that exist purely to do good, not organisations that are legally mandated to make money and may do good as a side-effect.