Provided by: libbusiness-paypal-api-perl_0.70-1_all bug

NAME

       Business::PayPal::API::DirectPayments - PayPal DirectPayments API

SYNOPSIS

           use Business::PayPal::API qw(DirectPayments);

           ## see Business::PayPal::API documentation for parameters

           my $pp = new Business::PayPal::API(
                               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              => 'Joe@Example.org',
                               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.

SEE ALSO

       <https://developer.paypal.com/en_US/pdf/PP_APIReference.pdf>

AUTHOR

       Daniel Hembree <danny@dynamical.org>

COPYRIGHT AND LICENSE

       Copyright (C) 2006 by Daniel P. Hembree

       This library is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself, either Perl version 5.8.5 or, at your option, any later version of
       Perl 5 you may have available.