VERSION
version 0.74SYNOPSIS
use Business::PayPal::API qw(DirectPayments);
## see Business::PayPal::API documentation for parameters
my $pp = Business::PayPal::API->new(
Username => 'name_api1.example.org',
Password => 'somepass',
CertFile => '/path/to/tester1.cert_key_pem.txt',
KeyFile => '/path/to/tester1.cert_key_pem.txt',
sandbox => 1,
);
my %response = $pp->DoDirectPaymentRequest (
PaymentAction => 'Sale',
OrderTotal => 13.59,
TaxTotal => 0.0,
ShippingTotal => 0.0,
ItemTotal => 0.0,
HandlingTotal => 0.0,
InvoiceID => 'your-tracking-number',
CreditCardType => 'Visa',
CreditCardNumber => '4561435600988217',
ExpMonth => '01',
ExpYear => '2007',
CVV2 => '123',
FirstName => 'James',
LastName => 'PuffDaddy',
Street1 => '1st Street LaCausa',
Street2 => '',
CityName => 'La',
StateOrProvince => 'Ca',
PostalCode => '90210',
Country => 'US',
Payer => '[email protected]',
ShipToName => 'Jane Doe',
ShipToStreet1 => '1234 S. Pleasant St.',
ShipToStreet2 => 'Suite #992',
ShipToCityName => 'Vacation Town',
ShipToStateOrProvince => 'FL',
ShipToCountry => 'US',
ShipToPostalCode => '12345',
CurrencyID => 'USD',
IPAddress => '10.0.0.1',
MerchantSessionID => '10113301',
);
DESCRIPTION
Business::PayPal::API::DirectPayments implements PayPal's DirectPayments API using SOAP::Lite to make direct API calls to PayPal's SOAP API server. It also implements support for testing via PayPal's sandbox. Please see Business::PayPal::API for details on using the PayPal sandbox.DoDirectPaymentRequest
Implements PayPal's DoDirectPaymentRequest API call. Supported parameters include:
PaymentAction ( Sale|Authorize, Sale is default ) OrderTotal TaxTotal ShippingTotal ItemTotal HandlingTotal InvoiceID CreditCardType CreditCardNumber ExpMonth ( two digits, leading zero ) ExpYear ( four digits, 20XX ) CVV2 FirstName LastName Street1 Street2 CityName StateOrProvince PostalCode Country Payer ShipToName ShipToStreet1 ShipToStreet2 ShipToCityName ShipToStateOrProvince ShipToCountry ShipToPostalCode CurrencyID (USD is default) IPAddress MerchantSessionID
as described in the PayPal ``Web Services API Reference'' document.
Returns a hash containing the results of the transaction. The Ack element and TransactionID are the most useful return values.
Example:
my %resp = $pp->DoDirectPaymentRequest( PaymentAction => 'Sale', OrderTotal => '10.99', ... ); unless( $resp{Ack} !~ /Success/ ) { for my $error ( @{$response{Errors}} ) { warn "Error: " . $error->{LongMessage} . "\n"; } }
ERROR HANDLING
See the ERROR HANDLING section of Business::PayPal::API for information on handling errors.EXPORT
None by default.AUTHORS
- Scott Wiersdorf <[email protected]>
- Danny Hembree <[email protected]>
- Bradley M. Kuhn <[email protected]>
COPYRIGHT AND LICENSE
This software is copyright (c) 2006-2015 by Scott Wiersdorf, Danny Hembree, Bradley M. Kuhn.This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.