Jump to content

Recommended Posts

Hello,

When an USD is transacted by a customer, the value of it in the WHMCS control panel triples up for no reason. But the payout values from the payment gateway still shows the same.

Here is the log of an 'INR' transaction (**Replaced irrelevant information with 'x'):

sale_id => xxxxxx
sale_date_placed => 2019-06-01 19:06:06
recurring => 0
payment_type => credit card
list_currency => USD
fraud_status => pass
vendor_id => 103346470
vendor_order_id => 1048
invoice_id => 250162125936
invoice_status => deposited
invoice_list_amount => 1.00
invoice_usd_amount => 0.01
invoice_cust_amount => 1.00
item_count => 1
auth_exp => 2019-06-08
customer_first_name => Upal
customer_last_name => Mukherjee
customer_name => Upal Mukherjee
customer_email => xxx@gmail.com
customer_phone => +91.1234567890
customer_ip => xxx.xxx.xxx.xxx
customer_ip_country => India
cust_currency => INR
bill_city => Kolkata
bill_country => IND
bill_postal_code => 700xx
bill_state => WB
bill_street_address => FL-4A, 188/93A, Prince Anwar Shah Road
bill_street_address2 =>
ship_status =>
ship_tracking_number =>
ship_name => Mukherjee Upal
ship_street_address => FL-4A, 188/93A, Prince Anwar Shah Road
ship_street_address2 =>
ship_city => Kolkata
ship_state => WB
ship_postal_code => 700045
ship_country => IND
message_id => 10792
message_type => INVOICE_STATUS_CHANGED
message_description => Invoice status changed
timestamp => 2019-06-01 16:44:12 EEST
item_name_1 => Test Item
item_id_1 => i1048_1519
item_list_amount_1 => 1.00
item_usd_amount_1 => 0.01
item_cust_amount_1 => 1.00
item_type_1 => bill
item_duration_1 => Forever
item_recurrence_1 =>
item_rec_list_amount_1 =>
item_rec_status_1 => live
item_rec_date_next_1 =>
item_rec_install_billed_1 =>
md5_hash => 2144C6F56B8103AA98DDB093013F22B9
key_count => 55

*After the test payment of 'INR 1.00' was made it automatically updated the transaction as INR 1.00 paid and added additional of INR 62.00, after INR 1.00 got subtracted from the total amount. The transaction details of WHMCS reflected it as INR -61.00 and had automatically added the remaining amount in the client's credit. I have tried applying the hotfix available in forums, but yet it still did not seem to resolve the issue.

And the problem started happening on the 1st day of May 2019, Kindly note that no changes were made before or after it.

We currently have two currencies enabled which is 'INR' as the primary and 'USD' as the secondary.


***Hope somebody finds a way to solve this issue. Ever since 2CheckOut has been flipping places, it even has turned my brain into a solemn dust.

Share this post


Link to post
Share on other sites

And here is the gateway log by WHMCS as 'Notification Only' which clearly shows INR as the 'currency_code' and even 'list_currency=>USD' for some reason.

sale_id => 250162125937
sale_date_placed => 2019-06-01 19:06:06
recurring => 0
payment_type => credit card
list_currency => USD
fraud_status => pass
vendor_id => 103346470
vendor_order_id => 1048
invoice_id => 250162125936
invoice_status => approved
invoice_list_amount => 1.00
invoice_usd_amount => 0.01
invoice_cust_amount => 1.00
item_count => 1
auth_exp => 2019-06-08
customer_first_name => Upal
customer_last_name => Mukherjee
customer_name => Upal Mukherjee
customer_email => shost212@gmail.com
customer_phone => +91.xxx
customer_ip => xxx.xxx.xxx.xxx
customer_ip_country => India
cust_currency => INR
bill_city => Kolkata
bill_country => IND
bill_postal_code => 700045
bill_state => WB
bill_street_address => FL-4A, 188/93A, Prince Anwar Shah Road
bill_street_address2 => 
ship_status => 
ship_tracking_number => 
ship_name => Mukherjee Upal
ship_street_address => FL-4A, 188/93A, Prince Anwar Shah Road
ship_street_address2 => 
ship_city => Kolkata
ship_state => WB
ship_postal_code => 700045
ship_country => IND
message_id => 10790
message_type => FRAUD_STATUS_CHANGED
message_description => Order fraud status changed
timestamp => 2019-06-01 16:43:16 EEST
item_name_1 => Test Item
item_id_1 => i1048_1519
item_list_amount_1 => 1.00
item_usd_amount_1 => 0.01
item_cust_amount_1 => 1.00
item_type_1 => bill
item_duration_1 => Forever
item_recurrence_1 => 
item_rec_list_amount_1 => 
item_rec_status_1 => live
item_rec_date_next_1 => 
item_rec_install_billed_1 => 
md5_hash => 2144C6F56B8103AA98DDB093013F22B9
key_count => 55

But how can an proper running system have issues all of sudden without any changes?

Share this post


Link to post
Share on other sites

In the recent log:

Quote


invoice_list_amount => 5088.62
invoice_usd_amount => 72.99
invoice_cust_amount => 72.99

Can someone tell me why the invoice_list_amount exist in the tco gateway callback?

And even if it does, from where does it pick the values up from?

Share this post


Link to post
Share on other sites

I started to face a similar issue from my side, already reported to support as well.

In my case I have WHMCS using USD as the default currency and 90% of my clients use a default currency (let's call it ASD) with a rate of 1 USD = 4 ASD

My 2Checkout transactions are collecting the amount correctly (example: 100 ASD) and everything shows 100 ASD everywhere: on WHMCS invoice, on 2Checkout and so on.

However, the client is getting a receipt of 400 ASD. Basically, WHMCS is converting the amount from 100 to 400 ASD as if the client was assigned with the USD currency which is not the case.

This is very odd as it just started to work this way in the last few days.

Could it be that something changed from 2CO side and the module is not working as it should?

Share this post


Link to post
Share on other sites
Posted (edited)

But as i investigated throughout the day, it does not seem to be a currency related issue.
As a client made a payment of 'USD 112.99' and that changed it into 'USD 5088.62'.

But my main concern here is where does the

invoice_list_amount => 5088.62

get it's values from?

Same problem is happening with the 'INR' currency as well. It is a very weird kind of an issue.

**Will downgrading the version of the base files fix it?

Edited by upalm

Share this post


Link to post
Share on other sites

I am not using INR currency so I can't tell what is the problem.

We both have 2 things in common: WHMCS and 2Checkout so I hope we can find some other people with a similar problem to find a solution ASAP.

I tested in USD and a similar problem shows up: 

item_list_amount_1 => 7.33
item_usd_amount_1 => 2.00
item_cust_amount_1 => 2.00

The invoice was marked as 2 USD. 2Checkout shows 2 USD and the client is charged 2 USD. However, in the invoice and payment receipt that WHMCS sent to the client it showed 7.33 USD. This is the odd part!
We really need to have this fixed asap.

I am under the impression that something changed in 2Checkout that could be causing this? Hard to believe all of a sudden WHMCS started to do this without any recent update.

Share this post


Link to post
Share on other sites
Posted (edited)
3 minutes ago, sitesme said:

I am not using INR currency so I can't tell what is the problem.

We both have 2 things in common: WHMCS and 2Checkout so I hope we can find some other people with a similar problem to find a solution ASAP.

I tested in USD and a similar problem shows up: 


item_list_amount_1 => 7.33
item_usd_amount_1 => 2.00
item_cust_amount_1 => 2.00

The invoice was marked as 2 USD. 2Checkout shows 2 USD and the client is charged 2 USD. However, in the invoice and payment receipt that WHMCS sent to the client it showed 7.33 USD. This is the odd part!
We really need to have this fixed asap.

I am under the impression that something changed in 2Checkout that could be causing this? Hard to believe all of a sudden WHMCS started to do this without any recent update.

EXACTLY! This.

My exact same issue. Thank you so much, finally somebody gets it.

2Checkout would never even bother to help me as it is the entire idea of running a payment gateway runs over their head.

Edited by upalm

Share this post


Link to post
Share on other sites

Are you using any custom modules/plugins? Any invoice plugins or something that could be the culprit?

I am using:

  • Clean HTML Invoice
  • Clean PDF
  • Xero

I also purchased a 3rd party 2Checkout plugin from a company called "whmcs global services" but there was a big problem with one of the payments so I have stopped and uninstalled it. I am back to the native 2Checkout plugin now that ships with WHMCS and I installed this hotfix: 

 

Still, the problem persists.

I hope WHMCS team can help us to get this sorted out. I have a ticket regarding this matter in the queue.

Share this post


Link to post
Share on other sites
Posted (edited)

Nope, we have our very own coded template built from the scratch which just calls one module to change the type of login pages, that we have made. Other than the just one being added, I don't think it should not be any payment related thing.

And yup that hotfix was updated on the April 5th and yet it did not solve this issue. And trust me I had even re installed the entire WHMCS 7.7.1, tried it without the hotfix plus with it. Did not notice any change.

Maybe 2Checkout had some API changes?

Please post a fix here too if you find it, it would be highly appreciated by us 🙂

Edited by upalm

Share this post


Link to post
Share on other sites

Could it be because of this?

https://docs.whmcs.com/Changelog:WHMCS_V7.7.1

API

CORE-13101 - Return replyid in replies data of GetTicket API
CORE-13138 - Ensure currency data is provided in response of GetInvoices API
    Also known as: CORE-13047

CORE-13138 was recently added in the 7.7.1 version. Maybe downgrading it would solve the issue? 

Share this post


Link to post
Share on other sites

Hi all,

We've been made aware of a technical issue at 2Checkout which sounds like the cause of the problem you're experiencing here.

Quote

We have identified a release made on the May 30th which is causing the issue
The issue only affects 2checkout accounts with primary currency different than USD

A fix for the issue is purportedly being deployed to 2Checkout's systems today.

In the meantime a potential workaround from the WHMCS side is:

  1. Navigate to Setup > Payments > Payment Gateways > Manage Existing Gateways tab
  2. Adjust the 2Checkout "Convert to For Processing" setting
  3. Choose the currency matching that in which your 2Checkout account is held.

I have published a help article with some more information: https://help.whmcs.com/m/payments/l/1103107-2checkout-transactions-30th-may-4th-june-2019

Share this post


Link to post
Share on other sites

The workaround did not work for me since the currencies were showing incorrectly from my end, but this problem is finally solved out.

It seems that it was a problem from 2Checkout end and they have confirmed that it is fixed. I tested and I can confirm it as well.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated