NAME
Business::PayflowPro::Reporting - Payflow Pro Reporting API
VERSION
version 0.01
SYNOPSIS
use Business::PayflowPro::Reporting;
use Data::Dumper;
my $bpr = Business::PayflowPro::Reporting->new(
user => $cfg{user},
vendor => $cfg{vendor},
partner => $cfg{partner},
password => $cfg{password},
) or die $Business::PayflowPro::Reporting::errstr;
my $reportId = $bpr->runReportRequest(
reportName => 'TransactionSummaryReport',
start_date => '2010-09-17 00:00:00',
end_date => '2010-09-18 23:59:59',
pageSize => 50, # optional
) or die $bpr->errstr;
print "Get $reportId\n";
my $metadata = $bpr->getMetaDataRequest($reportId) or die $bpr->errstr;
my $page = $metadata->{numberOfPages};
my $columnMetaData = $metadata->{columnMetaData}; # col name
foreach my $p (1 .. $page) {
my @reportDataRow = $bpr->getDataRequest($reportId, $p); # col value
print Dumper(\@reportDataRow);
}
DESCRIPTION
Payflow Pro Reporting API, read https://cms.paypal.com/cms_content/US/en_US/files/developer/PP_Reporting_Guide.pdf for more details.
WARN: Report Template stuff is not implemented. drop me a note if you need it, I am glad to do it.
METHODS
CONSTRUCTION
my $bpr = Business::PayflowPro::Reporting->new(
user => $cfg{user},
vendor => $cfg{vendor},
partner => $cfg{partner},
password => $cfg{password},
) or die $Business::PayflowPro::Reporting::errstr;
user
vendor
partner
password
config keys from PayPal
debug
test_mode
Live or Test Transactions
ua_args
passed to LWP::UserAgent
ua
LWP::UserAgent or WWW::Mechanize instance
runReportRequest
# Running a Daily Activity Report
my $reportId = $bpr->runReportRequest(
reportName => 'DailyActivityReport',
report_date => '2010-09-18',
pageSize => 50, # optional
) or die $bpr->errstr;
# or Running a Transaction Summary Report
my $reportId = $bpr->runReportRequest(
reportName => 'TransactionSummaryReport',
start_date => '2010-09-17 00:00:00',
end_date => '2010-09-18 23:59:59',
pageSize => 50, # optional
) or die $bpr->errstr;
getResultsRequest
Getting Results by Report ID
my $report = $bpr->getResultsRequest($reportId) or die $bpr->errstr;
getMetaDataRequest
retrieve the format of the data in a previously run report.
my $metadata = $bpr->getMetaDataRequest($reportId);
getDataRequest
my @reportDataRow = $bpr->getDataRequest($reportId, $pageNum);
AUTHOR
Fayland Lam <fayland@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2010 by Fayland Lam.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.