If you only expect 1 payment per order, you could reuse the addresses.
The original bitcoin notify suggested this, so after a period of maybe 1week from a purchase you reenter the address in the pool.
Or you could make a webservice of some kind where a different crontab can upload public addresses, ie. once a day check if there is less than 100 addresses left, and then upload 100more, still keeping the private keys off the webserver, so if it gets hacked, they cant use the coins.
But with vanity gen you could make 100.000 addresses, that should last a while