X-Git-Url: http://git.freeside.biz/gitweb/?p=Business-OnlinePayment-eSelectPlus.git;a=blobdiff_plain;f=eSelectPlus.pm;fp=eSelectPlus.pm;h=806fb65ad6a7127ffe85badc19e55d54dde1b92c;hp=b1180803063e69b02b678b68c54f5229035636a6;hb=5d6d9f2bb7de1d5efa60172d351e7ae64676ddf5;hpb=d83690e6c6ec34f7767b22794b53cc9da60078f4
diff --git a/eSelectPlus.pm b/eSelectPlus.pm
index b118080..806fb65 100644
--- a/eSelectPlus.pm
+++ b/eSelectPlus.pm
@@ -8,11 +8,12 @@ use Business::OnlinePayment::HTTPS 0.03;
use vars qw($VERSION $DEBUG @ISA);
@ISA = qw(Business::OnlinePayment::HTTPS);
-$VERSION = '0.08_01';
+$VERSION = '0.08_02';
$DEBUG = 0;
sub set_defaults {
my $self = shift;
+ my %opts = @_;
#USD
#$self->server('esplusqa.moneris.com'); # development
@@ -26,8 +27,11 @@ sub set_defaults {
$self->port('443');
- $self->build_subs(qw( order_number avs_code ));
+ $self->build_subs(qw( order_number avs_code skip_avs skip_cvv ));
# avs_code order_type md5 cvv2_response cavv_response
+
+ $self->skip_avs( $opts{skip_avs} );
+ $self->skip_cvv( $opts{skip_cvv} );
}
sub submit {
@@ -188,14 +192,14 @@ sub submit {
''.
join('', map "<$_>$avs_fields{$_}$_>", keys %avs_fields ).
''
- if grep $_, values %avs_fields;
+ if ! $self->skip_avs && grep $_, values %avs_fields;
tie my %cvd_fields, 'Tie::IxHash', $self->get_fields( $self->cvd_fields );
$post_data .=
''.
join('', map "<$_>$cvd_fields{$_}$_>", keys %cvd_fields ).
''
- if grep $_, values %cvd_fields;
+ if ! $self->skip_cvv && grep $_, values %cvd_fields;
}
$post_data .=
@@ -431,6 +435,17 @@ so that authorization() and order_number() can return the 2 fields needed
for capture. See also
cpansearch.perl.org/src/IVAN/Business-OnlinePayment-3.02/notes_for_module_writers_v3
+=head2 Note for upgrading to 0.08 without AVS/CVV enabled with Moneris
+
+This version now passes AVS and CVV info (previous versions did not). If your
+Moneris account is not enabled for these services, you can omit them by passing
+the "skip_avs" and/or "skip_cvv" options set to a true value:
+
+ my $tx = new Business::OnlinePayment('eSelectPlus',
+ 'skip_avs' => 1,
+ 'skip_cvv' => 1,
+ );
+
=head1 AUTHOR
Ivan Kohler