Я пытаюсь внедрить многосторонний платеж Paypal, чтобы я мог соединить продавца и покупателя, а затем я беру с них x% комиссии за использование платформы. например. Fiverr, Upwork, Фрилансер, поэтому сначала продавец подключает свою учетную запись, а затем они могут продавать услуги и принимать платежи через PayPal, но я не знаю, как подключить учетную запись There Paypal к моему приложению.
Я использую laravel 9 с пакетом srmklive/laravel-paypal.
Это мой код
Route::get('https://api-m.sandbox.paypal.com/v2/customer/partner-referrals', function () {
$provider = new PayPalClient;
$provider->setApiCredentials(config('paypal'));
$paypalToken = $provider->getAccessToken();
$partner = $provider->createPartnerReferral([
"operations" => [
[
"operation" => "API_INTEGRATION",
"api_integration_preference" => [
"rest_api_integration" => [
"integration_method" => "PAYPAL",
"integration_type" => "FIRST_PARTY",
"first_party_details" => [
"features" => [
"PAYMENT",
"REFUND"
],
"seller_nonce" => uniqid()
]
]
]
]
],
"products" => [
"EXPRESS_CHECKOUT"
],
"legal_consents" => [
[
"type" => "SHARE_DATA_CONSENT",
"granted" => true
]
]
]);
dd($partner);
})
это выход
^ array:2 [▼
"type" => "error"
"message" => "{"operations":[{"operation":"API_INTEGRATION","api_integration_preference":{"rest_api_integration":{"integration_method":"PAYPAL","integration_type":"FIRST_PARTY","first_party_details":{"features":["PAYMENT","REFUND"],"seller_nonce":"623a1fcec9be3"}}}}],"products":["EXPRESS_CHECKOUT"],"legal_consents":[{"type":"SHARE_DATA_CONSENT","granted":true}]} {"name":"INVALID_REQUEST","message":"Request is not well-formed, syntactically incorrect, or violates schema.","debug_id":"f64fe0ec63213","information_link":"","details":[{"issue":"INVALID_STRING_LENGTH","description":"The length of a field value should not be shorter than 44 characters.","field":"/operations/0/api_integration_preference/rest_api_integration/first_party_details/seller_nonce","location":"body"}],"links":[]} ◀"
]
Заранее спасибо
Route::get('https://api-m.sandbox.paypal.com/v2/customer/partner-referrals', function () {
$provider = new PayPalClient;
$provider->setApiCredentials(config('paypal'));
$paypalToken = $provider->getAccessToken();
$partner = $provider->createPartnerReferral([
"operations" => [
[
"operation" => "API_INTEGRATION",
"api_integration_preference" => [
"rest_api_integration" => [
"integration_method" => "PAYPAL",
"integration_type" => "FIRST_PARTY",
"first_party_details" => [
"features" => [
"PAYMENT",
"REFUND"
],
"seller_nonce" => uniqid()
]
]
]
]
],
"products" => [
"EXPRESS_CHECKOUT"
],
"legal_consents" => [
[
"type" => "SHARE_DATA_CONSENT",
"granted" => true
]
]
]);
dd($partner);
})
это выход
^ array:2 [▼
"type" => "error"
"message" => "{"operations":[{"operation":"API_INTEGRATION","api_integration_preference":{"rest_api_integration":{"integration_method":"PAYPAL","integration_type":"FIRST_PARTY","first_party_details":{"features":["PAYMENT","REFUND"],"seller_nonce":"623a1fcec9be3"}}}}],"products":["EXPRESS_CHECKOUT"],"legal_consents":[{"type":"SHARE_DATA_CONSENT","granted":true}]} {"name":"INVALID_REQUEST","message":"Request is not well-formed, syntactically incorrect, or violates schema.","debug_id":"f64fe0ec63213","information_link":"","details":[{"issue":"INVALID_STRING_LENGTH","description":"The length of a field value should not be shorter than 44 characters.","field":"/operations/0/api_integration_preference/rest_api_integration/first_party_details/seller_nonce","location":"body"}],"links":[]} ◀"
]
"details":[{"issue":"INVALID_STRING_LENGTH","description":"The length of a field value should not be shorter than 44 characters.","field":"/operations/0/api_integration_preference/rest_api_integration/first_party_details/seller_nonce
Детали сообщений об ошибках полезны, да? Поле задокументировано в ссылка на API. Вы также можете попробовать исключить его.
После некоторого поиска я обнаружил, что проблема в том, что мое поле seller_nonce
было меньше 44 символов, поэтому убедитесь, что ваше seller_nounce
больше 44 символов. Также убедитесь, что вы установили флажок На борту после оплаты
seller_nonce => uniqid(Str::random(40), true)
Привет, сэр, я новичок в PayPal API. Можете ли вы привести пример? Мне нужна кнопка, чтобы мы, пользователи, нажали ее, и они будут перенаправлены на страницу регистрации/входа для подключения своей учетной записи.