Frankly, I think a more appropriate place to discuss the technical details of how each wallet can fail to fulfill BitPay's ridiculous requirements would be a new topic. I too am very annoyed by how BitPay has started handling payments but I feel like I lack the technical knowledge to analyze it in depth.
Bitpay to me:
Payment Protocol and uses BitPay's required minimum miner fee rate. Because your payment was sent with an
incompatible wallet (or not broadcast via Payment Protocol), your payment was not accepted to the invoice.
Generally, we recommend not using "Spend Unconfirmed Funds", as you will have to wait until the incoming
transactions get confirmed before your outgoing transactions can be sent. Our invoices do not accept
payments sent with unconfirmed inputs.
You must use a Bitcoin or Bitcoin Cash wallet that supports the Payment Protocol.
refund if:
1. incompatible wallet
2. not broadcast via Payment Protocol
3. Spend Unconfirmed Funds
I make as:
Electron-Cash-4.0.11-portable
1. -------------------------------------------------ok, wallet Electron-Cash, Windows
2. not broadcast via Payment Protocol---------no
3. 2 of 6 Unconfirmed Funds--------------------no