Provided by: libbusiness-onlinepayment-perl_3.04-1_all bug

NAME

       Business::FraudDetect - A cohort to Business::OnlinePayment

SYNOPSIS

         my %processor_info = ( fraud_detection => 'preCharge',
                                maximum_fraud_score => 500,
                                preCharge_id => '1000000000000001',
                                preCharge_security1 => 'abcdef0123',
                                preCharge_security2 => '3210fedcba',
                               )
         my $transaction = new Business::OnlinePayment($processor, %processor_info);
         $transaction->content(
                               type       => 'Visa',
                               amount     => '49.95',
                               cardnumber => '1234123412341238',
                               expiration => '0100',
                               name       => 'John Q Doe',
                              );
         $transaction->submit();

         if($transaction->is_success()) {
           print "Card processed successfully: ".$transaction->authorization()."\n";
         } else {
           print "Card was rejected: ".$transaction->error_message()."\n";
         }

DESCRIPTION

       This is a module that adds functionality to Business::OnlinePayment.  See
       Business::OnlinePayment.

       The user instantiates a Business::OnlinePayment object per usual, adding in three
       processor directives

       •   fraud_detection

           Which Fraud Detection module to use.

       •   maximum_fraud_score

           FraudDetection drivers are expected to return a numeric "risk" factor, this parameter
           allows you to set the threshold to reject the transaction based on that risk.  Higher
           numbers are "riskier" transactions.

       •   other driver-specific parameters.

           Consult the specific Fraud Detection module you intend to use for its required
           parameters.

       The $tx->submit() method is overridden to interpose a FraudDetection phase.  A subordinate
       object is created using the same content as the parent OnlinePayment object, and a Fraud
       Detect action is run against that subordinate object.  If the resulting fraud score is
       less than or equal to the maximum_risk parameter, the parent transaction will be allowed
       to proceed.  Otherwise, a failure state will exist with a suitable error message.

METHODS

       This module provides no new methods.  It does, however override the submit method to
       interpose an additional Fraud Detection phase.

AUTHORS

       Original author: Lawrence Statton <lawrence@cluon.com>

       Current maintainer: Ivan Kohler <ivan-bop@420.am> as part of the Business::OnlinePayment
       distribution.

DISCLAIMER

       THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,
       INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
       PARTICULAR PURPOSE.

SEE ALSO

       Business::OnlinePayment, http://perl.business/onlinepayment