我已经用Composer设置了Paypal Payout SDK。
贝宝向我保证,支付功能是为我的帐户启用的。我已经创建了一个新的Live Rest应用程序,并在PayPalClient类中使用了Client-ID和Client-Secret:
<?php
namespace PaypalPayoutsSDK\Payouts;
use PaypalPayoutsSDK\Core\PayPalHttpClient;
use PaypalPayoutsSDK\Core\ProductionEnvironment;
class PayPalClient {
public static function client() {
return new PayPalHttpClient(self::environment());
}
public static function environment() {
$clientId = getenv("CLIENT_ID") ?: "my-client-id";
$clientSecret = getenv("CLIENT_SECRET") ?: "my-client-secret";
return new ProductionEnvironment($clientId, $clientSecret);
}
}
?>现在我想做一个简单的交易。我使用了PayPal Payout SDK附带的示例,并使用上面提到的PayPalClient创建了一个payout:
<?php
require __DIR__ . '/vendor/autoload.php';
use PaypalPayoutsSDK\Payouts\PayPalClient;
use PaypalPayoutsSDK\Payouts\PayoutsPostRequest;
$request = new PayoutsPostRequest();
$body= json_decode(
'{
"sender_batch_header":
{
"email_subject": "SDK payouts test txn"
},
"items": [
{
"recipient_type": "EMAIL",
"receiver": "myname@gmail.com",
"note": "Your 4$ payout",
"sender_item_id": "Test_txn_12",
"amount":
{
"currency": "USD",
"value": "4.00"
}
}]
}',
true);
$request->body = $body;
$client = PayPalClient::client();
$response = $client->execute($request);
?>然而,当我执行这个文件时,我得到了以下错误:
Fatal error: Uncaught PayPalHttp\HttpException: {"name":"AUTHORIZATION_ERROR","message":"Authorization error occurred.","debug_id":"d3c2fe720217b","information_link":"https://developer.paypal.com/docs/api/payments.payouts-batch/#errors","links":[]} in /hermes/bosnaweb27a/b1507/dom.mydomain/mydomain/payment/vendor/paypal/paypalhttp/lib/PayPalHttp/HttpClient.php:215 Stack trace: #0 /hermes/bosnaweb27a/b1507/dom.mydomain/mydomain/payment/vendor/paypal/paypalhttp/lib/PayPalHttp/HttpClient.php(100): PayPalHttp\HttpClient->parseResponse(Object(PayPalHttp\Curl)) #1 /hermes/bosnaweb27a/b1507/dom.mydomain/mydomain/payment/payuser.php(37): PayPalHttp\HttpClient->execute(Object(PaypalPayoutsSDK\Payouts\PayoutsPostRequest)) #2 {main} thrown in /hermes/bosnaweb27a/b1507/dom.mydomain/mydomain/payment/vendor/paypal/paypalhttp/lib/PayPalHttp/HttpClient.php on line 215 HTTPClient似乎出现错误。我已经向Paypal的技术助理提供了相同的信息,但他似乎什么都不知道。
这可能是什么问题。我确信Client-ID和Client-Secret是正确的,我已经尝试用一个新的REST-APP来做这件事了。也许我的代码出了什么问题?或者我只是错过了什么?
发布于 2020-06-10 00:52:37
您的PayPal帐户将需要‘验证’才能发送支出。请尝试添加并确认银行帐户,或与PayPal联系以了解其他可能性。
https://stackoverflow.com/questions/62283676
复制相似问题