Jump to content

Missing Currency and Amount in Basket


Guillaume

Recommended Posts

Hi,

I am testing a payment gateway which I just developped, and for some reason, very recently I have been getting the error that the currency and the amount are empty in the form. When I checked my soft I couldn't identify any obvious root cause. However when checking the logs which are at the bottom of the page, I indeed do not see any currency nor amount filled in (logs are attached). However, if I change the currency to GBP, I can see it in the logs, as below. If I change it back to EUR, I also can see it, so it isn't a problem of how the currency is set.

'__client' =>

'ip_address' => 89.2.214.195
'useragent' => Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0
'session_start' => 1623257111
'session_last' => 1623257114
'language' => fr-FR
'user_language' => fr-FR
'currency' => GBP
 
I had based my code on the parameter 'currency' always being present. Is that assumption wrong?
Also, for a reason which I ignore, although I still cannot see the amount in the logs after changing the currency back and forth, it is sent to the payment provider correctly. So I am assuming that Cubecart has it although I cannot see it.
 
Appreciate any helps anyone has here. Cheers,
Guillaume

missing currency logs.txt

Link to comment
Share on other sites

Inside the gateway class, $this->_basket['total'] should be available, as that is what is generally sent to the payment processor. You might want to send the basket total through (if this works the way I think it does):

$customer_currency_total = $GLOBALS['tax']->priceConvertFX($this->_basket['total'])

as CubeCart will only work with prices in the store owner's default currency.

You might also see if this has a value:

$customer_currency_code = $GLOBALS['tax']->_currency_vars['code'];

The SESSION array will not have a client's currency if the customer has not changed from the store's default currency.

Link to comment
Share on other sites

Thanks! I got really confused that I was doing all my tests with the same user, user whom had changed the currency at some point, and hence I got always see the currency in the session parameters. But as soon as I got someone else to test my module everything failed. Sorted now, thanks!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...