we are using the paypal plugin allow for paypal payments on our site. Therefore, we have configured the paypal plugin in compliance with our paypal conditions (0,39€ fixed amount per transaction plus 2,99% of the overall transaction fee).
I was assuming, that we would by that configuration handing over the paypal fees to our customers using that service. Whatsoever, I oberserved that this is not entirely the case, as paypal is calculating the fees based on the amount charged to the customer, after calcuation of the fees by events booking.
To illustrate the whole thing with numbers:
- Amount of booking is 80€
- Events Booking calculates a fee of 2,78€ (0,39€ + 0,0299 * 80€) and charges the customer paying per pay an overall amount of 82,78€
- Paypal calculates the a fee of 2,87€ which is based on the charged amount 82,78€ (not on 80€) since this is the charged amount (0,39€ + 0,0299 * 82,78€)
- Accrodingly we are finally payng a transaction fee of 2,87€ instead of the one calculated by events booking which 2,78€
- in an ideal world we would like PayPal to calculate the fee based on the "net amount" of 80€
Consequently PayPal calculates a higher fee, which prevents us from letting the customer pay for the comfort function of using PayPal.
The best idea I had so far, is to increase the Payment processing fee (%) in the paypal plugin configuration of paypal (we charge the customer with a higher fee than PayPal is doing afterwards). Whatsoever, I don't see how how this can be done accurately (due to rounding I assume, that there will be always slight differences betwenn the amount calculated by events booking and PayPal). Further, this is very sensitive to changes of the fees by PayPal, which we do not review regularly.
I do not see a way around this given german accounting rules and required accuracy. We are thinking about abandoning PayPal again, as this is complicating things very much more for us internally, from an accounting point of view.
- Have I missed anything?
- Is there any approach to this?
- Do you have similar experiences or even work-arounds in the community?
I would be grateful for sparring and exchange on this "issue".