Juhend PayPali integreerimiseks oma veebisaidile PHP-s
PayPal on kahtlemata veebisaitide üks populaarsemaid makselüüse. Enamik veebisaite kasutab PayPali oma rakenduses maksete saamiseks. Selles artiklis uurime PayPali integreerimist veebirakenduses PHP-s.
Miks valida PayPal?
PayPalis konto loomine on täiesti tasuta. Teil pole vaja midagi ette maksta. PayPal võtab teilt tasu iga tehingu alusel.
Maksetehingute tegemisel kasutab PayPal Secure Socket Layers (SSL) krüpteerimist. See kaitseb teie kliendi isiklikke ja konfidentsiaalseid andmeid. Seetõttu tunnevad teie kliendid end turvaliselt, kui teevad teie veebirakenduse kaudu makseid.
PayPal võimaldab maksta ka PayPali saldo-, krediit- või deebetkaartide kaudu. See lisab kliendile mitmeid võimalusi teie teenuse eest tasumiseks.
Krediitkaartidega makse aktsepteerimiseks võite kasutada ka teenust Authorize.net. Kui soovite Authorize.net-i kohta lisateavet, järgige meie õpetust Krediitkaardimakse aktsepteerimine Authorize.net-i makselüüsi abil PHP-s.
PayPali integreerimine
Kuna räägime PHP toega veebisaidist, siis kasutame PayPali ametlikku GiHubi teeki. See teek on mõeldud PHP-rakendustele.
Teegi installimiseks soovitame kasutada Composerit.
Nii et PayPali integreerimiseks veebisaidile käivitage kõigepealt projekti juurkataloogis järgmine käsk.
composer require "paypal/rest-api-sdk-php:*"
Hankige kliendi ID ja kliendi saladus
Kui klient maksab PayPali kaudu, peaks summa kandma teie PayPali kontole. Selleks peame hankima teie kliendi ID ja kliendi saladuse. Saate luua oma volikirjad siin.
Kerige sellel lehel Minu rakendused ja mandaadid jaotiseni „Rest API-rakendused" ja klõpsake nuppu „Loo rakendus”.
Pange oma rakendusele nimi ja vajutage nuppu „Loo rakendus”.
Pärast ülaltoodud samme saate mandaadid nii liivakasti kui ka reaalajas režiimi jaoks.
Nüüd oleme valmis oma kliendi ID ja kliendi salajaste võtmetega. Saame sammu edasi ja kirjutame mõne koodijupi.
Tegelik kood PayPali integreerimiseks
Selles etapis oleme raamatukogu ja volikirjadega valmis. Nüüd PayPali integreerimiseks veebisaidile loome 4 faili:
checkout.php
: Selles failis on meil vorm, mis sisaldab üksuse nime ja summat.
payment.php
: See on fail, kuhu kirjutame kogu PayPaliga seotud koodi.
success.php
: Pärast edukat maksmist suunab klient selle faili ümber.
error.php
: Kui makse ebaõnnestub, suunab klient selle faili ümber.
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();
}
?>
Asendage kohatäited tegelike väärtustega. Ülaltoodud koodis määrasime režiimi "liivakast" väärtuseks. Tootmisse minnes tehke see väärtus reaalajas ja lisage oma reaalajas kliendi ID ja kliendi saladus.
Kui teie makseprotsess on PayPali kaudu lõpule viidud, suunab see õnnestunud või ebaõnnestunud makse põhjal kas faili success.php või error.php.
edu.php
<h2>Payment Successful.</h2>
error.php
<h2>Something went wrong. Try again later.</h2>
Loodame, et mõistate PayPali veebirakenduse integreerimist. Palun jagage oma mõtteid allpool olevas kommentaaride jaotises.