Интеграция Paypal с laravel 6 с использованием API Paypal

#laravel #paypal #laravel-6

#laravel #paypal #laravel-6

Вопрос:

Я впервые использую Paypal в своем проекте электронной коммерции. После неудачной попытки использования пакета, который я видел, я решил прочитать документацию Paypal и посмотреть, смогу ли я сделать это самостоятельно. До сих пор я получил токен доступа, но я не знаю, куда идти дальше, поскольку я не смог найти api конечной точки для совершения платежа. Пожалуйста, кто-нибудь может подсказать, что мне делать, или направить меня по правильной ссылке, объясняющей процедуры работы с Paypal с Laravel 6

 $client = new Client();
$response = $client->request('POST', 'https://api.sandbox.paypal.com/v1/oauth2/token',
[
 'auth' => [
            '<username>', '<password>','basic'], 
             [
                'headers'        => [
               'Accept' => 'application/json', 
               'Accept-Language'=> 'en_US', 
               'Content-Type' => 'application/x-www-form-urlencoded'
             ], 
             ],
             'body' => 'grant_type=client_credentials'
              
             ],  );
             $data = json_decode($response->getBody(), true);

             $access_token = $data['access_token'];
  

Комментарии:

1. positronx.io/how-to-integrate-paypal-payment-gateway-in-laravel Попробуйте эту статью. Он использует laravel-библиотеку paypal ( github.com/srmklive/laravel-paypal ) . Также вы можете следить за readme в репозитории библиотеки github. Дайте мне знать, если это сработает для вас.

2. Спасибо, я использовал версию 1.0 [srmklive / paypal: ~ 1.0], но я мог видеть только учетные данные nvp / soap api для песочницы paypal, я не мог не видеть текущие учетные данные. Я следовал процедурам, но не смог найти доступ к API в настройках своей учетной записи. Я также пытался использовать [srmklive / paypal: ~ 2.0], но я потерялся, так как я не знаю правильного метода для вызова после создания поставщика экземпляра

Ответ №1:

Создайте на своем сервере два маршрута, которые реализуют v2/checkout/orders API для «Настройки транзакции» и «Захвата транзакции», описанные здесь: https://developer.paypal.com/docs/checkout/reference/server-integration /

Вы можете использовать Checkout-PHP-SDK (который автоматизирует получение токена доступа) или реализовать API HTTPS напрямую, как вы делаете в своем примере, любое решение (с или без v2 SDK) полностью подходит. Просто не используйте ничего, что основано на более старом SDK версии v1 или API «v1 / payments», поскольку они устарели для новых интеграций

Поскольку на вашем сервере реализованы два маршрута «Настройка транзакции» и «Захват транзакции», рекомендуемый поток для утверждения клиентом: https://developer.paypal.com/demo/checkout/#/pattern/server

Он предлагает лучший, самый современный веб-интерфейс, поскольку нет перенаправления на approval_url — вместо этого ваш сайт остается загруженным в фоновом режиме, и над ним открывается вход в систему PayPal, что очень желательно.