BitPay does not block either VPN or Tor users. This is a Cloudflare/Tor issue that we're investigating, and we are developing a fix to this issue for Tor users. There is an immediate workaround detailed at the bottom of this post.
The issue you're experiencing is a known issue with Cloudflare (our CDN) that we're working on currently.
In this case, Cloudflare is intercepting a BitPay invoice request (what's happening when you go to pay with bitcoin at a BitPay merchant) and is requiring a captcha to prove that the user is a person and not a robot.
Cloudflare tends to do this with requests made over Tor at a much higher rate. The way this captcha is delivered by Cloudflare to the Tor browser is taking users to an archived invoice page and not allowing them to proceed with a payment. The captcha itself may not be displayed depending on how risky/trustworthy Cloudflare considers a particular IP address.
This captcha issue appears to be specific to the Tor browser bundle and not to Tor in general. Our team has tested and confirmed that vanilla Firefox over Tor presents the Cloudflare captcha correctly and allows users to proceed to payment.
Our no-script invoice works for Tor browser users. If you generate an invoice, simply copy the invoice ID for the invoice in question (E.g. JWi53uinKVUxhe72jCoqY in https://bitpay.com/invoice?id=JWi53uinKVUxhe72jCoqY) into the following URL: https://bitpay.com/invoice-noscript?id=INVOICEIDGOESHERE