When you receive a refund from BitPay for an underpayment or an overpaid amount, you get the total invoice amount minus the BitPay Network Cost and the miner fee for returning the payment.
When you send a bitcoin payment to a BitPay invoice, you are sending the amount necessary to cover the invoice price, plus the standard BitPay Network Cost for each invoice.
This total amount is reflected in the BTC price your wallet fetches from the invoice when you scan to pay. It's also shown on the invoice's total BTC price.
The additional Network Cost included in your invoice total covers the cost of BitPay's UTXO sweep for your payment. You can learn more about the reasons for this additional fee here: https://blog.bitpay.com/network-costs/
Because the Network Cost has to be paid to bitcoin miners in order for BitPay to access your payment, it cannot be used again. This means it cannot be included in the refund you receive from BitPay.
Also note that BitPay does not receive the miner fee your bitcoin wallet includes in the outgoing bitcoin transaction. This fee pays your cost of getting a transaction confirmed on the Bitcoin network.
If you use an exchange or online account to send bitcoin payments to BitPay (not recommended), the service provider may deduct a miner fee or service fee from your outgoing payment that is not sent to BitPay.
Finally, if you receive a refund for an underpayment or overpayment via BitPay's refund processing flow, the miner fee required to issue the refund will be deducted from the amount that returns to your wallet address.
Because Bitcoin Cash currently has lower miner fee levels, you may also choose to pay a BitPay invoice with Bitcoin Cash if you are concerned about high costs.