use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
@ISA = qw(Business::OnlinePayment::AuthorizeNet Business::OnlinePayment::HTTPS);
-$VERSION = '3.22';
+$VERSION = '3.23';
sub set_defaults {
my $self = shift;
'post authorization' => 'PRIOR_AUTH_CAPTURE',
'void' => 'VOID',
);
- $content{'action'} = $actions{lc($content{'action'})} || $content{'action'};
+ $content{'action'} = $actions{lc($content{'action'} || '')} || $content{'action'};
# TYPE MAP
my %types = ('visa' => 'CC',
'discover' => 'CC',
'check' => 'ECHECK',
);
- $content{'type'} = $types{lc($content{'type'})} || $content{'type'};
+ $content{'type'} = $types{lc($content{'type'} || '')} || $content{'type'};
$self->transaction_type($content{'type'});
# ACCOUNT TYPE MAP
'business checking' => 'CHECKING',
'business savings' => 'SAVINGS',
);
- $content{'account_type'} = $account_types{lc($content{'account_type'})}
+ $content{'account_type'} = $account_types{lc($content{'account_type'} || '')}
|| $content{'account_type'};
if (length $content{'password'} == 15) {
length $self->{_content}->{customer_org}
) {
push @required_fields, qw( customer_org customer_ssn );
- } else {
+ }
+ elsif ( defined $self->{_content}->{license_num} and
+ length $self->{_content}->{license_num}
+ ) {
push @required_fields, qw(license_num license_state license_dob);
}
Steve Simitzis contributed a patch for better compatibility with
eProcessingNetwork's AuthorizeNet compatability mode.
+Craig Pearlman <cpearlma@yahoo.com> sent in a patch to more accurately declare
+required fields for E-check transcations.
+
=head1 SEE ALSO
perl(1). L<Business::OnlinePayment> L<Business::OnlinePayment::AuthorizeNet>.