X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FraudDetect%2FpreCharge.pm;h=aa8bcb394ac4536e732a15530e46df83ba8aefcb;hb=fb8d21e0431c9b3c081faf043cc0127f9d08e496;hp=2d34544c3bf42ed3c86ae161233498e92a6006ef;hpb=d1ffb1dddfef66b75320f92929616df6a784d821;p=Business-OnlinePayment.git diff --git a/FraudDetect/preCharge.pm b/FraudDetect/preCharge.pm index 2d34544..aa8bcb3 100644 --- a/FraudDetect/preCharge.pm +++ b/FraudDetect/preCharge.pm @@ -11,12 +11,19 @@ use Business::OnlinePayment::HTTPS; $VERSION = '0.01'; +sub _glean_parameters_from_parent { + my ($self, $parent) = @_; + foreach my $method (qw / precharge_id precharge_security1 precharge_security2 /) { + $self->$method($parent->$method); + } +} + sub set_defaults { my ($self) = @_; $self->server('api.precharge.net'); $self->port(443); $self->path('/charge'); - $self->build_subs(qw /currency risk_level error_code + $self->build_subs(qw /currency fraud_score error_code precharge_id precharge_security1 precharge_security2 force_success / ); $self->currency('USD'); return $self; @@ -26,7 +33,6 @@ sub submit { my ($self) = @_; if ($self->force_success()) { $self->is_success(1); - $self->risk_level(100); $self->result_code('1'); $self->error_message('No Error. Force success path'); return $self; @@ -127,7 +133,7 @@ sub submit { if ($output{response} == 1 ) { $self->is_success(1); - $self->risk_level($output{score}); + $self->fraud_score($output{score}); $self->result_code($output{response}); $self->error_message('No Error. Risk assesment transaction successful'); } else { @@ -137,6 +143,9 @@ sub submit { } } + + + 1; @@ -151,13 +160,11 @@ Business::FraudDetect::preCharge - backend for Business::FraudDetect (part of Bu use Business::OnlinePayment my $tx = new Business::OnlinePayment ( 'someGateway', - risk_management => 'preCharge', - maximum_risk => 500, - risk_management_params => { - preCharge_id => '1000000000000001', - preCharge_security1 => 'abcdef0123', - preCharge_security2 => '3210fedcba', - } + fruad_detection => 'preCharge', + maximum_fraud_score => 500, + preCharge_id => '1000000000000001', + preCharge_security1 => 'abcdef0123', + preCharge_security2 => '3210fedcba', ); $tx->content( first_name => 'Larry Walton', @@ -189,7 +196,28 @@ This module provides a driver for the preCharge Risk Management Solutions API Ve See L and L for more information. -Whe constructing the Business::OnlinePayment object, three risk management parameters must be passed in for the preCharge object to be properly constructed. These are preCharge_id (called the merchant_id in the preCharge API manual), and two security codes (preCharge_security1 and preCharge_security2). + +=head1 CONSTRUCTION + +Whe constructing the Business::OnlinePayment object, three risk management parameters must be included for the preCharge object to be properly constructed. + +=over 4 + +=item * precharge_id + +This field is called "merchant_id" in the preCharge API manual + + +=item * precharge_security1 + +This field is called "security_1" in the preCharge API manual + +=item * precharge_secuirty2 + +This field is called "security_2" in the preCharge API manual + +=back + =head1 METHODS