diff --git a/lib/Business/PayPal/API.pm b/lib/Business/PayPal/API.pm index 9e1647f..6c96a62 100644 --- a/lib/Business/PayPal/API.pm +++ b/lib/Business/PayPal/API.pm @@ -4,7 +4,7 @@ use 5.008001; use strict; use warnings; -use SOAP::Lite 0.67; # +trace => 'all'; +use SOAP::Lite 0.710.10; # +trace => 'all'; use Carp qw(carp); our $VERSION = '0.69'; @@ -22,7 +22,7 @@ sub C_api_live () { 'https://api.paypal.com/2.0/' } sub C_api_live_3t () { 'https://api-3t.paypal.com/2.0/' } sub C_xmlns_pp () { 'urn:ebay:api:PayPalAPI' } sub C_xmlns_ebay () { 'urn:ebay:apis:eBLBaseComponents' } -sub C_version () { '3.0' } ## 3.0 adds RecurringPayments +sub C_version () { '61.0' } ## 3.0 adds RecurringPayments ## this is an inside-out object. Make sure you 'delete' additional ## members in DESTROY() as you add them. diff --git a/lib/Business/PayPal/API/ExpressCheckout.pm b/lib/Business/PayPal/API/ExpressCheckout.pm index 995f46b..8292870 100644 --- a/lib/Business/PayPal/API/ExpressCheckout.pm +++ b/lib/Business/PayPal/API/ExpressCheckout.pm @@ -168,6 +168,7 @@ sub DoExpressCheckoutPayment { PaymentAction => '', ## NOTA BENE! PayerID => 'ebl:UserIDType', currencyID => '', + ReturnFMFDetails => 'xs:boolean', ); ## PaymentDetails @@ -278,7 +279,9 @@ sub DoExpressCheckoutPayment { SOAP::Data->name( PaymentDetails => \SOAP::Data->value ( @payment_details )->type('ebl:PaymentDetailsType') ->attr( {xmlns => $self->C_xmlns_ebay} ), - ), ); + ), + SOAP::Data->name( ReturnFMFDetails => $args{ReturnFMFDetails} ) + ->type($types{ReturnFMFDetails})->attr( {xmlns => $self->C_xmlns_ebay} ), ); ## ## the main request object @@ -319,6 +322,11 @@ sub DoExpressCheckoutPayment { ExchangeRate => 'PaymentInfo/ExchangeRate', PaymentStatus => 'PaymentInfo/PaymentStatus', PendingReason => 'PaymentInfo/PendingReason', + AcceptFilters => 'FMFDetails/AcceptFilters', + DenyFilters => 'FMFDetails/DenyFilters', + PendingFilters => 'FMFDetails/PendingFilters', + ReportsFilters => 'FMFDetails/ReportsFilters', + ProtectionEligibility => 'PaymentInfo/ProtectionEligibility', } ); return %response; diff --git a/lib/Business/PayPal/API/GetTransactionDetails.pm b/lib/Business/PayPal/API/GetTransactionDetails.pm index c0d9330..4c3397d 100644 --- a/lib/Business/PayPal/API/GetTransactionDetails.pm +++ b/lib/Business/PayPal/API/GetTransactionDetails.pm @@ -82,6 +82,7 @@ sub GetTransactionDetails { PaymentStatus => '/PaymentInfo/PaymentStatus', PendingReason => '/PaymentInfo/PendingReason', ReasonCode => '/PaymentInfo/ReasonCode', + ProtectionEligibility => '/PaymentInfo/ProtectionEligibility', InvoiceID => '/PaymentItemInfo/InvoiceID', Custom => '/PaymentItemInfo/Custom',