2-3% of the invoice value seems high to me. They aren't providing any additional value for larger invoices, so why should they receive a percentage of the total?
2.9% is a pretty standard credit card processing fee. You'll find that it's the same price if you tried to do your own payment processing via stripe or paypal.