Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

paypal express integration confusion and files provided by paypal dont work

Tags:

php

paypal

i used the paypal integration wizard to create the files that i need to integrate paypal into a custom shopping cart and in the paypalfunctions.php page i added the api credentials. i loaded the expresscheckout.php, file provided by the wizard, and got this error

SetExpressCheckout API call failed. Detailed Error Message: 
Security header is not validShort Error Message: Security 
errorError Code: 10002Error Severity Code: Error

what does it mean?

this is the page i loaded only. currently i have not attached these pages to the commerce site and am only testing the files given by paypal to see if it works before doing any integration.

require_once ("paypalfunctions.php");
// ==================================
// PayPal Express Checkout Module
// ==================================

//'------------------------------------
//' The paymentAmount is the total value of 
//' the shopping cart, that was set 
//' earlier in a session variable 
//' by the shopping cart page
//'------------------------------------
$paymentAmount = "10.45";

//'------------------------------------
//' The currencyCodeType and paymentType 
//' are set to the selections made on the Integration Assistant 
//'------------------------------------
$currencyCodeType = "USD";
$paymentType = "Sale";

//'------------------------------------
//' The returnURL is the location where buyers return to when a
//' payment has been succesfully authorized.
//'
//' This is set to the value entered on the Integration Assistant 
//'------------------------------------
$returnURL = "http://www.mysite.com/orderConfirm.php";

//'------------------------------------
//' The cancelURL is the location buyers are sent to when they hit the
//' cancel button during authorization of payment during the PayPal flow
//'
//' This is set to the value entered on the Integration Assistant 
//'------------------------------------
$cancelURL = "http://www.mysite.com/cancelOrder.php";

//'------------------------------------
//' Calls the SetExpressCheckout API call
//'
//' The CallShortcutExpressCheckout function is defined in the file PayPalFunctions.php,
//' it is included at the top of this file.
//'-------------------------------------------------
$resArray = CallShortcutExpressCheckout ($paymentAmount, $currencyCodeType, $paymentType, $returnURL, $cancelURL);
$ack = strtoupper($resArray["ACK"]);
if($ack=="SUCCESS" || $ack=="SUCCESSWITHWARNING")
{
    RedirectToPayPal ( $resArray["TOKEN"] );
} 
else  
{
    //Display a user friendly Error on the page using any of the following error information returned by PayPal
    $ErrorCode = urldecode($resArray["L_ERRORCODE0"]);
    $ErrorShortMsg = urldecode($resArray["L_SHORTMESSAGE0"]);
    $ErrorLongMsg = urldecode($resArray["L_LONGMESSAGE0"]);
    $ErrorSeverityCode = urldecode($resArray["L_SEVERITYCODE0"]);

    echo "SetExpressCheckout API call failed. ";
    echo "Detailed Error Message: " . $ErrorLongMsg;
    echo "Short Error Message: " . $ErrorShortMsg;
    echo "Error Code: " . $ErrorCode;
    echo "Error Severity Code: " . $ErrorSeverityCode;
}
like image 576
Exploit Avatar asked Feb 25 '23 19:02

Exploit


2 Answers

Detailed Error Message:  Security header is not valid

what does it mean?

It means that your security header is not valid.

The 39,000 Google results for your specific error message all suggest that the API username and password you are using is incorrect for the specific endpoint you're using. Either your credentials are for the sandbox and you're using them on live, or your credentials are for live and you're using them for the sandbox. Or there's a typo.

like image 95
Charles Avatar answered Feb 27 '23 08:02

Charles


try in

paypalfunctions.php

$SandboxFlag = false;
like image 42
user956584 Avatar answered Feb 27 '23 08:02

user956584