Where is the transaction fee coming from (using Sage Pay)?
I'm working on a Tea Commerce project. I've implemented the checkout process and I'm using Sage Pay (test environment) to process credit card and PayPal payments. Everything works fine, but when I place an order using a credit card there's a transaction fee applied to the order. This causes a payment inconsistency because the authorized amount doesn't match the total amount including transaction fees.
Where are the transaction fees coming from? I've already spoken to Sage Pay support and they told me they're not adding any transaction fees or surcharges, and that the order amount is processed as is. Is Tea Commerce somehow adding these fees?
So far I've seen it happen once during testing. My initial thoughts were that it might have something to do with using different countries for billing and shipping, but other tests didn't result in any transaction fees being added.
The transaction fee is normally set if you send 100 USD to the gateway but they reserve 101 USD. Then 1 USD will be transaction fee. So you need to figure out why there is a difference in the amount sent to the gateway and what amount you get back.
BUT the weird part is tha tif you look in line 224 of the provider that it uses the amount that is set for the order. So I have no idea why this amount would be different from the one you sent to the gateway. Do you at any time after calling GeneratePaymentForm change the order in any way. When you call GeneratePaymentForm you should not change the order any more as the order is locked and will result in a copy when its changed (because of security)
Could you maybe download the payment provider project and try and debug what goes wrong?
No, I did not change the order during or after the payment process. I had already included the SagePay.cs in my project for debugging, but strangely enough I've not been able to reproduce the problem. The transaction fee has only been applied once. Even when I place the exact same order with the exact same billing and shipping addresses and pay with the same dummy credit card.
It would've made sense if Sage Pay had applied some surcharges to the order for some reason, but no surcharges have been registered. So the amount authorized by Sage Pay matches the order amount.
Did you ever figure this out? I have a client with a suddenly appearing "transactionfee" of exactly the same amount as the shipping... Using epay.dk.
But where the heck did that come from? The order is flagged with a warning as the full reserved amount is not the same as the total, since the transaction fee appeared..
I'm afraid not. The issue only occurred once during testing (with a Sage Pay test account). Even when I placed the exact same order with the exact same dummy credit card.
Did you contact the payment service provider to ask why their gateway reserved a different amount than the original order amount?
Hmm. Interesting. This is also only ONE order, all the other orders coming in are fine, e.g no "transaction fee".
I've looked on the callback-log on the paymentprovider, and they did NOT send a transaction fee (txfee=0).
However, this is also just one occurence and I can't reproduce it, so I'm writing this off as a "lets see if it ever happens again"-error..
A bit of bonus-info; After googling around, I found a post with similar issues. Anders (from TeaCommerce) stated there, that the transactionfee is put on the order AFTER FINALIZATION, so the order and the transaction are fine, except that the total isn't right, but from the customer perspective everything would look as expected.
A bit of bonus-info; After googling around, I found a post with
similar issues. Anders (from TeaCommerce) stated there, that the
transactionfee is put on the order AFTER FINALIZATION, so the order
and the transaction are fine, except that the total isn't right, but
from the customer perspective everything would look as expected.
Exactly. The order amount has been charged and processed. It's just that TeaCommerce shows an "inconsistency" warning. But the merchant received his money, so it's definitely not a show stopper.
Where is the transaction fee coming from (using Sage Pay)?
I'm working on a Tea Commerce project. I've implemented the checkout process and I'm using Sage Pay (test environment) to process credit card and PayPal payments. Everything works fine, but when I place an order using a credit card there's a transaction fee applied to the order. This causes a payment inconsistency because the authorized amount doesn't match the total amount including transaction fees.
Where are the transaction fees coming from? I've already spoken to Sage Pay support and they told me they're not adding any transaction fees or surcharges, and that the order amount is processed as is. Is Tea Commerce somehow adding these fees?
So far I've seen it happen once during testing. My initial thoughts were that it might have something to do with using different countries for billing and shipping, but other tests didn't result in any transaction fees being added.
Any help would be appreciated.
The transaction fee is normally set if you send 100 USD to the gateway but they reserve 101 USD. Then 1 USD will be transaction fee. So you need to figure out why there is a difference in the amount sent to the gateway and what amount you get back.
BUT the weird part is tha tif you look in line 224 of the provider that it uses the amount that is set for the order. So I have no idea why this amount would be different from the one you sent to the gateway. Do you at any time after calling GeneratePaymentForm change the order in any way. When you call GeneratePaymentForm you should not change the order any more as the order is locked and will result in a copy when its changed (because of security)
Could you maybe download the payment provider project and try and debug what goes wrong?
https://github.com/TeaCommerce/Payment-providers/blob/master/Source/TeaCommerce.PaymentProviders/Classic/SagePay.cs
No, I did not change the order during or after the payment process. I had already included the SagePay.cs in my project for debugging, but strangely enough I've not been able to reproduce the problem. The transaction fee has only been applied once. Even when I place the exact same order with the exact same billing and shipping addresses and pay with the same dummy credit card.
It would've made sense if Sage Pay had applied some surcharges to the order for some reason, but no surcharges have been registered. So the amount authorized by Sage Pay matches the order amount.
Did you ever figure this out? I have a client with a suddenly appearing "transactionfee" of exactly the same amount as the shipping... Using epay.dk.
But where the heck did that come from? The order is flagged with a warning as the full reserved amount is not the same as the total, since the transaction fee appeared..
I'm afraid not. The issue only occurred once during testing (with a Sage Pay test account). Even when I placed the exact same order with the exact same dummy credit card.
Did you contact the payment service provider to ask why their gateway reserved a different amount than the original order amount?
Hmm. Interesting. This is also only ONE order, all the other orders coming in are fine, e.g no "transaction fee".
I've looked on the callback-log on the paymentprovider, and they did NOT send a transaction fee (txfee=0).
However, this is also just one occurence and I can't reproduce it, so I'm writing this off as a "lets see if it ever happens again"-error..
A bit of bonus-info; After googling around, I found a post with similar issues. Anders (from TeaCommerce) stated there, that the transactionfee is put on the order AFTER FINALIZATION, so the order and the transaction are fine, except that the total isn't right, but from the customer perspective everything would look as expected.
Thanx for replying!
/Niels
Exactly. The order amount has been charged and processed. It's just that TeaCommerce shows an "inconsistency" warning. But the merchant received his money, so it's definitely not a show stopper.
is working on a reply...