A lot of their products and services could be sold on-line. However, e-commerce is not an easy task, nor is it necessarily cheap (I've worked in the industry for several years now). It also distracts from the non-profits main mission, whatever that may be.
The non-profit I want to start would provide e-commerce as a service to other non-profits: getting more customers for the products they sell or services they deliver, reducing their time spent on fundraising, and allowing them to focus more on their mission.
Commercially, the margins on non-profit products and services tend to be quite high; and non-profits (in particular charities) are used to paying a % of donations in fundraising costs. As a non-profit delivering this service, 65% of profits must be re-invested back into delivering it [the service]. However, as a community interest company, 35% of profits can be distributed as dividends. For reference, JustGiving (a for-profit) raises tens of millions for charities, and has revenue of 16MM/year.