Revision history for Perl extension Business::OnlinePayment::PayflowPro.
+0.04 Wed Oct 11 04:00:36 PDT 2006
+ - Prevent unnecessary warnings when no AVS response elements are
+ received, patch from Michael Peters <mpeters@plusthree.com>
+ - have tests work with environment variables
+ - forgot to increment the version number in 0.03
+
0.03 Tue Aug 2 17:56:11 PDT 2005
- Fix inadvertant clobbering of zip code, patch from
<phil@perkpartners.com>, CPAN bug #13896
@ISA = qw(Exporter AutoLoader Business::OnlinePayment);
@EXPORT = qw();
@EXPORT_OK = qw();
-$VERSION = '0.02';
+$VERSION = '0.04';
sub set_defaults {
my $self = shift;
$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'});
use Business::OnlinePayment;
+die "set environment variables to test: PFPRO_USER, PFPRO_VENDOR, PFPRO_PWD, ".
+ "and optionally PFPRO_PARTNER and PFPRO_CERT_PATH\n"
+ unless $ENV{'PFPRO_USER'} && $ENV{'PFPRO_VENDOR'} && $ENV{'PFPRO_PWD'};
+
my $tx = new Business::OnlinePayment("PayflowPro",
- #'vendor' => 'your_vendor',
- 'partner' => 'verisign',
- 'cert_path' => '/home/ivan/Business-OnlinePayment-PayflowPro.docs/verisign/payflowpro/linux/certs/',
+ 'vendor' => $ENV{PFPRO_VENDOR} ,
+ 'partner' => ( $ENV{PFPRO_PARTNER} || 'verisign' ),
+ 'cert_path' => ( $ENV{PFPRO_CERT_PATH} || '.' ) ,
);
$tx->content(
type => 'VISA',
- login => 'test231',
- password => '231test',
+ login => $ENV{'PFPRO_USER'},
+ password => $ENV{'PFPRO_PWD'},
action => 'Normal Authorization',
description => 'Business::OnlinePayment::PayflowPro visa test',
amount => '0.01',
#card_number => '4007000000027',
#card_number => '4111111111111111',
card_number => '4111111111111112',
- expiration => '12/2004',
+ expiration => '12/2009',
);
$tx->test_transaction(1);
use Business::OnlinePayment;
+die "set environment variables to test: PFPRO_USER, PFPRO_VENDOR, PFPRO_PWD, ".
+ "and optionally PFPRO_PARTNER and PFPRO_CERT_PATH\n"
+ unless $ENV{'PFPRO_USER'} && $ENV{'PFPRO_VENDOR'} && $ENV{'PFPRO_PWD'};
+
my $tx = new Business::OnlinePayment("PayflowPro",
- #'vendor' => 'your_vendor',
- 'partner' => 'verisign',
- 'cert_path' => '/home/ivan/Business-OnlinePayment-PayflowPro.docs/verisign/payflowpro/linux/certs/',
+ 'vendor' => $ENV{PFPRO_VENDOR} ,
+ 'partner' => ( $ENV{PFPRO_PARTNER} || 'verisign' ),
+ 'cert_path' => ( $ENV{PFPRO_CERT_PATH} || '.' ) ,
);
$tx->content(
type => 'VISA',
- login => 'test231',
- password => '231test',
+ login => $ENV{'PFPRO_USER'},
+ password => $ENV{'PFPRO_PWD'},
action => 'Normal Authorization',
description => 'Business::OnlinePayment::PayflowPro visa test',
amount => '0.01',
email => 'ivan-payflowpro@420.am',
#card_number => '4007000000027',
card_number => '4111111111111111',
- expiration => '12/2004',
+ expiration => '12/2009',
);
$tx->test_transaction(1);