summaryrefslogtreecommitdiff
path: root/PayflowPro.pm
diff options
context:
space:
mode:
Diffstat (limited to 'PayflowPro.pm')
-rw-r--r--PayflowPro.pm20
1 files changed, 11 insertions, 9 deletions
diff --git a/PayflowPro.pm b/PayflowPro.pm
index 0051fb9..fe70d7a 100644
--- a/PayflowPro.pm
+++ b/PayflowPro.pm
@@ -14,7 +14,7 @@ require Exporter;
@ISA = qw(Exporter AutoLoader Business::OnlinePayment);
@EXPORT = qw();
@EXPORT_OK = qw();
-$VERSION = '0.02';
+$VERSION = '0.04';
sub set_defaults {
my $self = shift;
@@ -197,14 +197,16 @@ sub submit {
$self->authorization( $response->{'AUTHCODE'} );
$self->order_number( $response->{'PNREF'} );
my $avs_code = '';
- if ( $response->{AVSADDR} eq 'Y' && $response->{AVSZIP} eq 'Y' ) {
- $avs_code = 'Y';
- } elsif ( $response->{AVSADDR} eq 'Y' ) {
- $avs_code = 'A';
- } elsif ( $response->{AVSZIP} eq 'Y' ) {
- $avs_code = 'Z';
- } elsif ( $response->{AVSADDR} eq 'N' || $response->{AVSZIP} eq 'N' ) {
- $avs_code = 'N';
+ if ( exists $response->{AVSADDR} || exists $response->{AVSZIP} ) {
+ if ( $response->{AVSADDR} eq 'Y' && $response->{AVSZIP} eq 'Y' ) {
+ $avs_code = 'Y';
+ } elsif ( $response->{AVSADDR} eq 'Y' ) {
+ $avs_code = 'A';
+ } elsif ( $response->{AVSZIP} eq 'Y' ) {
+ $avs_code = 'Z';
+ } elsif ( $response->{AVSADDR} eq 'N' || $response->{AVSZIP} eq 'N' ) {
+ $avs_code = 'N';
+ }
}
$self->avs_code( $avs_code );
$self->cvv2_code( $response->{'CVV2MATCH'});