WEB и WordPress новости, темы, плагины. Здесь мы делимся советами и лучшими решениями для сайтов.

Руководство по интеграции PayPal на вашем веб-сайте в PHP

507

PayPal, несомненно, является одним из самых популярных платежных шлюзов для веб-сайтов. Большинство веб-сайтов используют PayPal для приема платежей через свои приложения. В этой статье мы изучаем интеграцию PayPal в веб-приложение на PHP.

Почему выбрать PayPal?

Создание учетной записи в PayPal совершенно бесплатно. Вам не нужно ничего платить вперед. PayPal будет взимать плату за каждую транзакцию.

При выполнении платежных транзакций PayPal использует шифрование Secure Socket Layers (SSL). Это защищает личные и конфиденциальные данные вашего клиента. Благодаря этому ваши клиенты чувствуют себя в безопасности при оплате через ваше веб-приложение.

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

Для приема оплаты с помощью кредитных карт вы также можете использовать сервис Authorize.net. Если вы хотите узнать больше об Authorize.net, следуйте нашему руководству. Принимайте платежи по кредитным картам с помощью платежного шлюза Authorize.net на PHP.

Интеграция PayPal

Поскольку мы говорим о веб-сайте на PHP, мы будем использовать официальную библиотеку GiHub PayPal. Эта библиотека предназначена для приложений PHP.

Мы рекомендуем использовать Composer для установки библиотеки.

Итак, чтобы интегрировать PayPal на веб-сайт, сначала выполните следующую команду в корневом каталоге проекта.

composer require "paypal/rest-api-sdk-php:*"

Получить идентификатор клиента и секрет клиента

Когда клиент платит через PayPal, сумма должна быть переведена на ваш счет PayPal. Для этого нам нужно получить ваш идентификатор клиента и секрет клиента. Вы можете создать свои учетные данные здесь.

На этой странице «Мои приложения и учетные данные» прокрутите вниз до раздела «Остальные приложения API» и нажмите кнопку «Создать приложение».

Руководство по интеграции PayPal на вашем веб-сайте в PHP

Дайте название своему приложению и нажмите кнопку «Создать приложение».

Руководство по интеграции PayPal на вашем веб-сайте в PHP

После вышеуказанных шагов вы получите учетные данные как для песочницы, так и для живого режима.

Руководство по интеграции PayPal на вашем веб-сайте в PHP

Теперь мы готовы с нашим идентификатором клиента и секретными ключами клиента. Давайте сделаем шаг вперед и напишем какой-нибудь фрагмент кода.

Актуальный код для интеграции PayPal

На этом этапе у нас есть библиотека и учетные данные. Теперь, чтобы интегрировать PayPal на сайт, мы создаем 4 файла:

checkout.php: В этом файле у нас есть форма, которая содержит название и количество предмета.
payment.php: Это файл, в который мы пишем весь код, связанный с PayPal.
success.php: После успешной оплаты клиент будет перенаправлен на этот файл.
error.php: Если платеж не прошел, клиент перенаправляет на этот файл.

checkout.php

<form action="payment.php" method="post">
    <input type="text" name="item" placeholder="Enter Item Name">
    <input type="text" name="amount" placeholder="Enter Amount">
    <input type="submit" name="submit" value="Pay">
</form>

payment.php

<?php
require_once 'vendor/autoload.php';
 
use PayPalApiItem;
use PayPalApiItemList;
 
$apiContext = new PayPalRestApiContext(
    new PayPalAuthOAuthTokenCredential(
        'YOUR_CLIENT_ID',     // ClientID
        'YOUR_CLIENT_SECRET'  // ClientSecret
    )
);
 
$apiContext->setConfig(
    array(
        'log.LogEnabled' => true,
        'log.FileName' => 'PayPal.log',
        'log.LogLevel' => 'DEBUG',
        'mode' => 'sandbox', //'live' or 'sandbox'
    )
);
 
$payer = new PayPalApiPayer();
$payer->setPaymentMethod('paypal');
 
$item1 = new Item();
$item1->setName($_POST['item'])
    ->setCurrency('USD')
    ->setQuantity(1)
    ->setPrice($_POST['amount']);
 
$itemList = new ItemList();
$itemList->setItems(array($item1));
 
$amount = new PayPalApiAmount();
$amount->setTotal($_POST['amount']);
$amount->setCurrency('USD');
 
$transaction = new PayPalApiTransaction();
$transaction->setDescription("Payment For Service")
            ->setItemList($itemList)
            ->setAmount($amount);
 
$redirectUrls = new PayPalApiRedirectUrls();
$redirectUrls->setReturnUrl("YOUR_HTTP_PATH/success.php")
    ->setCancelUrl("YOUR_HTTP_PATH/error.php");
 
$payment = new PayPalApiPayment();
$payment->setIntent('sale')
    ->setPayer($payer)
    ->setTransactions(array($transaction))
    ->setRedirectUrls($redirectUrls);
 
// 4. Make a Create Call
try {
    $payment->create($apiContext);
 
    header('Location: '. $payment->getApprovalLink());
}
catch (PayPalExceptionPayPalConnectionException $ex) {
    // This will print the detailed information on the exception.
    //REALLY HELPFUL FOR DEBUGGING
    echo $ex->getData();
}
?>

Обязательно замените заполнители фактическими значениями. В приведенном выше коде мы устанавливаем для параметра «режим» значение «песочница». При переходе к производству сделайте это значение как «живое» и добавьте свой действующий идентификатор клиента и секрет клиента.

После завершения процесса оплаты через PayPal, в зависимости от успешной или неудачной оплаты, он будет перенаправлен либо в файл success.php, либо в файл error.php.

success.php

<h2>Payment Successful.</h2>

error.php

<h2>Something went wrong. Try again later.</h2>

Мы надеемся, что вы понимаете интеграцию PayPal в веб-приложении. Пожалуйста, поделитесь своими мыслями в разделе комментариев ниже.

Источник записи: artisansweb.net

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее