Я пытаюсь использовать PayPal PHP SDK
в своем проекте, и пока мне не очень повезло с этим.
Я установил SDK на свой сервер, используя composer
. Протестировал, чтобы убедиться, что все работает, и я вижу, что журналы успешно регистрируются в моей учетной записи разработчика PayPal. Итак, я знаю, что установка прошла успешно.
Теперь я пытаюсь использовать PayPal PHP SDK для создания единой выплаты, как показано здесь:
https://developer.paypal.com/docs/payouts/reference/setup-sdk/#set -up-the-environment
Но я получаю эту ошибку каждый раз, когда запускаю свой код:
PHP message: PHP Fatal error: Uncaught Error: Class 'PaypalPayoutsSDK\\Core\\SandboxEnvironment' not found
Во время исследования этой проблемы я столкнулся с несколькими похожими вопросами по Stackoverflow, и они указали, что слово Paypal
следует заменить на PayPal
с Capital P
.
Итак, я пошел дальше и сделал это, но все равно получаю эту ошибку:
Got error 'PHP message: PHP Fatal error: Uncaught Error: Class 'PayPalPayoutsSdk\\Core\\SandboxEnvironment' not found
Итак, я застрял, и я действительно не понимаю, почему PayPal выпустит неполный SDK с ошибками, который, кажется, полон опечаток!
Это весь мой код:
<?php
namespace Sample;
require 'vendor/autoload.php';
use PayPalPayoutsSDK\Core\PayPalHttpClient;
use PayPalPayoutsSDK\Core\SandboxEnvironment;
// Creating an environment
$clientId = "Af-I0mFTWp0mpf2423NWWnGrfAFajiszEJtg8N10.....";
$clientSecret = "687684OjSRWTYJ.....";
$environment = new SandboxEnvironment($clientId, $clientSecret);
$client = new PayPalHttpClient($environment);
use PayPalPayoutsSDK\Payouts\PayoutsPostRequest;
$request = new PayoutsPostRequest();
$body= json_decode(
'{
"sender_batch_header":
{
"email_subject": "SDK payouts test txn"
},
"items": [
{
"recipient_type": "EMAIL",
"receiver": "sb-uo5q4745644@business.example.com",
"note": "Your 1£ payout",
"sender_item_id": "Test_txn_12",
"amount":
{
"currency": "GBP",
"value": "1.00"
}
}]
}',
true);
$request->body = $body;
$client = PayPalClient::client();
$response = $client->execute($request);
print "Status Code: {$response->statusCode}\n";
print "Status: {$response->result->batch_header->batch_status}\n";
print "Batch ID: {$response->result->batch_header->payout_batch_id}\n";
print "Links:\n";
foreach($response->result->links as $link)
{
print "\t{$link->rel}: {$link->href}\tCall Type: {$link->method}\n";
}
echo json_encode($response->result, JSON_PRETTY_PRINT), "\n";
?>
Может ли кто-нибудь дать совет по этому вопросу, поскольку я потратил на это 2 дня безрезультатно.