Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Turning off or disabling "Suspected Fraud" check on Magento orders
 
mlracing
Jr. Member
 
Total Posts:  6
Joined:  2011-06-27
 

Agreed, would love for this feature to be disabled easily.

 
Magento Community Magento Community
Magento Community
Magento Community
 
happyshop
Jr. Member
 
Total Posts:  9
Joined:  2011-07-19
 

It is not fixed in version 1.6?

 
Magento Community Magento Community
Magento Community
Magento Community
 
Rhonda_Rondeau
Enthusiast
 
Total Posts:  924
Joined:  2010-08-03
Culver City
 

Hey guys sorry for the late response was just directed to this thread again.

IF you are still having issue please let me know which version.  I have a ticket that I put in when this issue started and team fixed and closed the issue in June.  I am on the late freight obviously.  :/ apologies for that.

Rhonda

 
Magento Community Magento Community
Magento Community
Magento Community
 
satish
Enthusiast
 
Total Posts:  812
Joined:  2008-03-24
34,mantri Sadan,Shivaji Nagar,Nagpur,MS,India 4400
 

I analysed why this Suspected Fraud Happens:

Say you have a product costing 15.99 USD.

Now you have tax 20% so total cost will have some rounding effect.

When IPN is received IPN checks for order amount by recalculating.
here as no rounding is considered hence values of payment captured and that should have been varies by less then .01

But code assumes its different and so it treats this order as a suspected Fraud.

Hope this helps.

Solution:
1. Do not use products with cost on second decimal.
2. If this cant be avoided then as provided in above post use this
$orderGrandTotal = $this->getOrder()->getBaseGrandTotal();
if (abs($orderGrandTotal - ($this->getBaseAmountPaid() + $amountToCapture)) < 0.01 ) {

Satish

 
Magento Community Magento Community
Magento Community
Magento Community
 
tzepf
Member
 
Total Posts:  32
Joined:  2011-04-13
 

I have also the fraudulent issue, very annoying thing… currently i´m using magento 1.5.1

tried the fix with the rounding, but it doesn´t work.i get the following in my logs:

2011-09-29T07:35:13+00:00 DEBUG (7): ====hankzh log==== orderGrandTotal=1.4500
2011-09-29T07:35:13+00:00 DEBUG (7): ====hankzh log==== getBaseAmountPaid=1.4500
2011-09-29T07:35:13+00:00 DEBUG (7): ====hankzh log==== amountToCapture=1.45
2011-09-29T07:35:13+00:00 DEBUG (7): ====hankzh log==== find fake fraud again, amount = 1.45

so theres no rounding error at this point…

what else can i do? in my order backend the “row Sum” under ordered articles is 1 cent lower than the total sum below…

for me only the cron change works. but then customers din´t get any mail, so i added the following after the setstate command:

try
    
{
    $order
->sendNewOrderEmail();
    
Mage::log("Mail Sent");
    
catch (Exception $ex{  }

but this isn´t a solution, so please magento support help me smile

 
Magento Community Magento Community
Magento Community
Magento Community
 
hankzh
Member
 
Total Posts:  56
Joined:  2011-02-08
 

compare your log with this:

if (abs($orderGrandTotal - ($this->getBaseAmountPaid() + $amountToCapture)) < 0.01 {
vs
abs(1.4500 - (1.4500 1.45))

It looks like that amountToCapture’s value is wrong. Did you customize something?

 
Magento Community Magento Community
Magento Community
Magento Community
 
tzepf
Member
 
Total Posts:  32
Joined:  2011-04-13
 

hmm i changed nothing but i have installed several modules… in my opinion the amounttocapture is wrong here?!

what happens if i disable the if part completely?

thanks for your help smile

 
Magento Community Magento Community
Magento Community
Magento Community
 
millejano
Member
 
Avatar
Total Posts:  40
Joined:  2007-09-18
 

I have also some fraud orders with a 1.4.1.1 and also 1.6. version. The problem is that paypal recalculates the order and takes the price without tax for each cart item and adds the tax_cart.

See the example below: 52,21([amount] => 43.87 + [tax] => 8.34) vs. 52,22 (Paypal calculation:  [amount_1] => 23.85 + [amount_2] => 11.32 + [amount_3] => 8.71 + [tax_cart] => 8.34).  I post this also in the german forum: http://www.magentocommerce.com/boards/viewthread/236236/

[request] => Array
        (
            
[business] => ****
            
[invoice] => 200001993
            [currency_code] 
=> EUR
            [paymentaction] 
=> sale
            [return] 
=> http://domain.tld/paypal/standard/success/
            
[cancel_return] =>http://domain.tld/paypal/standard/cancel/
            
[notify_url] => http://domain.tld/paypal/ipn/
            
[bn] => Varien_Cart_WPS_DE
            [item_name] 
=> Online Shop
            [charset] 
=> utf-8
            [amount] 
=> 43.87
            [tax] 
=> 8.34
            [shipping] 
=> 0.00
            [discount_amount] 
=> 0.00
            [item_number_1] 
=> 12512662
            [item_name_1] 
=> Produkt 1
            [quantity_1] 
=> 1
            [amount_1] 
=> 23.85
            [item_number_2] 
=> 12522869
            [item_name_2] 
=> Produkt 2
            [quantity_2] 
=> 1
            [amount_2] 
=> 11.32
            [item_number_3] 
=> 82521269
            [item_name_3] 
=> Produkt 3
            [quantity_3] 
=> 1
            [amount_3] 
=> 8.71
            [cmd] 
=> _cart
            [upload] 
=> 1
            [tax_cart] 
=> 8.34
            [discount_amount_cart] 
=> 0.00
            [city] 
=> Maxhausen
            [country] 
=> DE
            [email] 
=> abd@domain.tld
            [first_name] 
=> abc
            [last_name] 
=> cde
            [zip] 
=> 00099
            [state] 
=> 
            
[address1] => Maxstr3
            [address2] 
=> 
            
[address_override] => 1
        
)

    
[__pid] => 4578
)

A workaround for the 1.6 Version is to deactivate the ‘Transfer Cart Line Items’-option for ‘Website Payments Standard’. Now you get the right price on the paypal page but you haven’t the cart view with the products anymore.

Hope this issue will be fixed in 1.6.0.1!

 
Magento Community Magento Community
Magento Community
Magento Community
 
tzepf
Member
 
Total Posts:  32
Joined:  2011-04-13
 

hey millejano,

hankzhs fix in this thread should work for you.

disabling the check completely in code will also work, but the question is how it affects the security?

tobias

 
Magento Community Magento Community
Magento Community
Magento Community
 
continent7
Jr. Member
 
Total Posts:  5
Joined:  2011-08-28
 

It seems the bug is fixed in Magento 1.5.1.1:
https://www.magentocommerce.com/bug-tracking/issue/?issue=11331

But where can Magento 1.5.1.1 be downloaded?

 
Magento Community Magento Community
Magento Community
Magento Community
 
Rhonda_Rondeau
Enthusiast
 
Total Posts:  924
Joined:  2010-08-03
Culver City
 
continent7 - 21 October 2011 07:30 AM

It seems the bug is fixed in Magento 1.5.1.1:
https://www.magentocommerce.com/bug-tracking/issue/?issue=11331

But where can Magento 1.5.1.1 be downloaded?

Actually the version on that bug ticket says 1.5.0.1

But it is probably better to update to 1.5.1.0

If you click on Release Archives, you should see everything: http://www.magentocommerce.com/download/

 
Magento Community Magento Community
Magento Community
Magento Community
 
continent7
Jr. Member
 
Total Posts:  5
Joined:  2011-08-28
 

Ah ok. We’re on 1.5.1.0 so the bug does still exist.

 
Magento Community Magento Community
Magento Community
Magento Community
 
continent7
Jr. Member
 
Total Posts:  5
Joined:  2011-08-28
 

The discussed bugfixes didn’t work so we just deactivated the fraud checks.

Quick & Dirty in Magento 1.5.1.0:

We just commented out all setIsFraudDetected(true) calls…

app/code/core/Mage/Paypal/Model/Ipn.php (around line 623):

if ($this->_info->isPaymentReviewRequired($payment)) {
$payment->setIsTransactionPending(true);
if ($fraudFilters) {
//$payment->setIsFraudDetected(true);
}
}

app/code/core/Mage/Sales/Model/Order/Payment.php (around line 343):

// register new capture
if (!$invoice) {
if ($this->_isCaptureFinal($amount)) {
$invoice = $order->prepareInvoice()->register();
$order->addRelatedObject($invoice);
$this->setCreatedInvoice($invoice);
} else {
//$this->setIsFraudDetected(true);
$this->_updateTotals(array(’base_amount_paid_online’ => $amount));
}
}

 
Magento Community Magento Community
Magento Community
Magento Community
 
tzepf
Member
 
Total Posts:  32
Joined:  2011-04-13
 

thats exactly what i did continent…

doesn anyone has this problems with 1.6?

 
Magento Community Magento Community
Magento Community
Magento Community
 
millejano
Member
 
Avatar
Total Posts:  40
Joined:  2007-09-18
 

Yes we have the problem in the 1.6.0.0 Version.

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top