Add avs_code and cvv2_response to build_subs, they're standard fields
[Business-OnlinePayment.git] / OnlinePayment.pm
index ceb9c74..e7c9bcb 100644 (file)
@@ -6,7 +6,7 @@ use Carp;
 
 require 5.005;
 
-$VERSION = '3.02_00';
+$VERSION = '3.03_01';
 $VERSION = eval $VERSION; # modperlstyle: convert the string into a number
 
 # Remember subclasses we have "wrapped" submit() with _pre_submit()
@@ -33,6 +33,8 @@ my @methods = qw(
     response_code
     response_header
     response_page
+    avs_code
+    cvv2_response
 );
 
 #fallback
@@ -50,16 +52,16 @@ sub _info {
 %_info_handler = (
   'supported_types'   => sub {
     my( $class, $v ) = @_;
-    my $types = ref($v) ? $v : [ $v ];
-    $types = { map { $_=>1 } @$types } if ref($v) eq 'ARRAY';
+    my $types = ref($v) ? $v : defined($v) ? [ $v ] : [];
+    $types = { map { $_=>1 } @$types } if ref($types) eq 'ARRAY';
     $types;
   },
   'supported_actions' => sub {
     my( $class, $v ) = @_;
-    return $v if ref($v) eq 'HASH';
+    return %$v if ref($v) eq 'HASH';
     $v = [ $v ] unless ref($v);
-    my $types = $class->info('supported_types');
-    { map { $_ => $v } keys %$types };
+    my $types = $class->info('supported_types') || {};
+    ( map { $_ => $v } keys %$types );
   },
 );
 
@@ -270,7 +272,7 @@ Business::OnlinePayment - Perl extension for online payment processing
                         type        => 'Visa',
                         amount      => '49.95',
                         card_number => '1234123412341238',
-                        expiration  => '0100',
+                        expiration  => '06/15',
                         name        => 'John Q Doe',
                        );
   $transaction->submit();
@@ -345,6 +347,8 @@ What action being taken by this transaction. Currently available are:
 
 =item Post Authorization
 
+=item Reverse Authorization
+
 =item Void
 
 =item Credit
@@ -499,7 +503,7 @@ Credit card number.
 
 =item expiration
 
-Credit card expiration.
+Credit card expiration, MM/YY.
 
 =item cvv2
 
@@ -633,8 +637,9 @@ Submit the transaction to the processor for completion
 
 =head2 is_success()
 
-Returns true if the transaction was submitted successfully, false if
-it failed (or undef if it has not been submitted yet).
+Returns true if the transaction was approved by the gateway, false if 
+it was submitted but not approved, or undef if it has not been 
+submitted yet.
 
 =head2 error_message()
 
@@ -774,7 +779,7 @@ Phil Lobbes E<lt>phil at perkpartners dot comE<gt>
 
 Copyright (c) 1999-2004 Jason Kohles
 Copyright (c) 2004 Ivan Kohler
-Copyright (c) 2007-2011 Freeside Internet Services, Inc.
+Copyright (c) 2007-2014 Freeside Internet Services, Inc.
 
 All rights reserved.
 
@@ -794,21 +799,18 @@ http://420.am/cgi-bin/mailman/listinfo/bop-devel/
 
 =head1 REPOSITORY
 
-The code is available from our public CVS repository:
+The code is available from our public git repository:
 
-  export CVSROOT=":pserver:anonymous@cvs.freeside.biz:/home/cvs/cvsroot"
-  cvs login
-  # The password for the user `anonymous' is `anonymous'.
-  cvs checkout Business-OnlinePayment
+  git clone git://git.freeside.biz/Business-OnlinePayment.git
 
 Or on the web:
 
-  http://freeside.biz/cgi-bin/viewvc.cgi/Business-OnlinePayment/
+  http://freeside.biz/gitweb/?p=Business-OnlinePayment.git
 
 Many (but by no means all!) processor plugins are also available in the same
 repository, see:
 
-  http://freeside.biz/cgi-bin/viewvc.cgi/
+  http://freeside.biz/gitweb/
 
 =head1 DISCLAIMER