2017-05-05 193 views
1

我使用Rest Api(不是信用卡付款)设置了简单的paypal付款。使用REST api的Paypal付款处理

在Sandbox模式下一切正常,但切换到Live模式并使用Live模式clientID与Secret密钥。我得到这个错误:

PHP Fatal error: Uncaught exception 'PayPal\Exception\PayPalConnectionException' with message 'Got Http response code 401 when accessing https://api.sandbox.paypal.com/v1/oauth2/token.' in /vendor/paypal/rest-api-sdk-php/lib/PayPal/Core/PayPalHttpConnection.php:154 
Stack trace: 
#0 /vendor/paypal/rest-api-sdk-php/lib/PayPal/Auth/OAuthTokenCredential.php(241): PayPal\Core\PayPalHttpConnection->execute('grant_type=clie...') 
#1 /vendor/paypal/rest-api-sdk-php/lib/PayPal/Auth/OAuthTokenCredential.php(266): PayPal\Auth\OAuthTokenCredential->getToken(Array, '***', '***...', 'grant_type=clie...') 
#2 /vendor/paypal/rest-api-sdk-php/lib/PayPal/Auth/OAuthTokenCredential.php(210): PayPal\Auth\OAuthTokenCredential->generateAccessToken(Array, NULL) 
#3 /vendor/paypal/rest-api-sdk-php/lib/PayPal/Auth/OAuthTokenCredential.php(160 in /vendor/paypal/rest-api-sdk-php/lib/PayPal/Core/PayPalHttpConnection.php on line 154 

这种事只有在实时模式...我检查了所有按键,一切都设置正确,从我的观点。请让我知道如何解决这个问题?

回答

1

问题解决了!

我需要添加如下因素代码手工配置实时模式:

$paypal->setConfig(
     array(
     'mode' => 'live', 
     'log.LogEnabled' => true, 
     'log.FileName' => 'PayPal.log', 
     'log.LogLevel' => 'FINE' 
    ) 
    ); 
+0

对于laravel:$ apiContext->调用setConfig需要进行设置。 https://github.com/paypal/PayPal-PHP-SDK/wiki/Adding-Configurations –