آموزش اتصال به درگاه پرداخت زرین پال در لاراول

اتصال به درگاه پرداخت زرین پال در لاراول

در فناوری مالی عصر جدید گاهی دریافت وجه از کاربران به دلایل امنیتی پیچیده به نظر می رسد، اما اتصال به درگاه پرداخت زرین پال در لاراول این کار را برای همه ما آسان کرده است و می توانید تنها با استفاده از نصب یک پکیج امکانات ویژه ای برای کاربران خود مهیا کنید. پس اگر آماده سفارشی سازی در نحوه دریافت حق اشتراک، حق دانلود، خرید محصول و ... در پلتفرم شخصی خود هستید آموزش زیر را دنبال کنید.
مراحل اتصال به درگاه پرداخت زرین پال در لاراول

مزیت های استفاده از درگاه زرین پال در لاراول

  • عدم نیاز به مراحل تایید هویت چند مرحله ای و خسته کننده
  • درخواست کمتر برای دریافت e-namad از بانک
  • طرفداری دوجانبه از خریدار و فروشند در تضمین پرداخت
  • کارمزد کمتر در هنگام استفاده از زرین کارت
  • امکان دریافت زرین کارت حتی بدون داشتن وب سایت
  • قابلیت استفاده از درگاه اشتراکی در کسب و کارهای شراکتی
  • وجود بیش از 70 پلاگین متنوع و کاربردی
  • داشتن پنل مدیریتی ساده و کاربردی
  • امنیت بالا در سرویس های پرداختی
  • امکان گزارش گیری از تراکنش های انجام شده

نحوه اتصال به درگاه پرداخت زرین پال در لاراول

سریع ترین روشی که می توانید با استفاده از آن یک درگاه زرین پال ایجاد کنید، اضافه کردن پکیج در لاراول می باشد. این روش باعث می شود تا بتوانید پرداخت ها را از درگاه زرین پال که مبتنی بر Rest است را دریافت کرده و تایید نهایی را انجام دهید.

1- نصب و راه اندازی درگاه زرین پال

با اجرا دستور زیر پکیج مورد نظر را از طریف دستور Composer نصب خواهید کرد:

composer requires rasulian/laravel-zarinpal
با کمک دستور زیر ارائه دهنده خدمات را ثبت کنید:


// config/app.php

'providers' => [
// ...
Rasulian\ZarinPal\ZarinPalServiceProvider::class,
];

پس از وارد کردن دستور بالا، جهت منتشر کردن فایل پیکربندی باید با کمک دستور زیر config/zarinpal.php را اجرا کنید:

php artisan vendor:publish --provider="Rasulian\ZarinPal\ZarinPalServiceProvider"


توجه داشته باشید که این محتوای پیش فرض پیکربندی شده است:


// config/zarinpal.php


return [
'params' => [
'merchant-id' => '',

// Leave it empty if you're passing the callback url when doing the request
'callback-url' => '',

// A summary of your product or application, if needed
'description' => '',
],

// Set to true if you want to test the payment in sandbox mode
'testing' => false
];

نحوه نصب و راه اندازی درگاه زرین پال

2- نحوه استفاده از درگاه زرین پال

اکنون که نصب و راه اندازی درگاه زرین پال را انجام دادید می توانید با خیالی آسوده مراحل استفاده از جمله هدایت مشتریان و تایید پرداخت نهایی را پشت سر بگذارید. 
  • هدایت مشتری
در مرحله اول باید در قسمت کنترلری که مشتری را به زرین پال هدایت خواهید کرد، درگاه پرداخت را با کمک دستور زیر وارد کنید:

use Rasulian\ZarinPal\Payment;
class CheckoutConfirmOrderController extends Controller {
/**
* @param $zarinPal
*/
protected $zarinPal;
public function __construct(Payment $zarinPal)
{
...
$this->zarinPal = $zarinPal;
...
}
دقیقاً در همان Controller قسمت order$ که در طول فرآیند پرداخت کاربران ایجاد شده است را تنظیم کنید:

public function doPayment(Request $request)
{
$invoice = $this->invoiceRepo->getCurrentInvoice();
// Doing the payment
$payment = $this->zarinPal->request(
// The total price for the order
$invoice->totalPrice,
// Pass any parameter you want when the customer successfully makes the payment
// and gets back to your site
['paymentId' => $invoice->payment_id],
// Callback URL
route('checkout.payment.callback'),
// A summary of your product or application
'Good product'
);
// Throw an exception if the payment request result had any error
if ($payment->get('result') == 'warning')
throw new Exception($payment->get('error'));
// Redirect the customer to the ZarinPal gateway to make the payment
return redirect()->away($payment->get('url'));
}
  • تایید پرداخت
اکنون مشتری به درگاه پرداخت زرین پال هدایت شده است و پس از ورود اطلاعات پرداختی، مشتری به وب سایت انتقال داده خواهد شد. در این قسمت تغییر مسیر لازم انجام می شود و ما باید از درخواست های معتبر استقبال کنیم تا تایید پرداخت صورت بگیرد. برای این کار در Controller که Request را مدیریت می کنید دستور زیر را اجرا کنید:

use Rasulian\ZarinPal\Payment;
class CheckoutPaymentVerificationController extends Controller {
/**
* @param $zarinPal
*/
protected $zarinPal;
public function __construct(Payment $zarinPal)
{
...
$this->zarinPal = $zarinPal;
...
}
...
اکنون در این مرحله باید در همان Controller در روشی که برای رسیدگی به درخواست ارائه دهنده پرداخت استفاده می‌کنید، از Verify جهت تایید نهایی کمک بگیرید:

public function verifyPayment(Request $request)
{
$authority = $request->input('Authority');
$invoice = $this->invoiceRepo->getCurrentInvoice();
$verify = $this->zarinPal->verify($invoice->totalPrice, $authority);
if ($verify->get('result') == 'success') {
...
// Do the needed stuff if the verification was successful
...
// If not, we can check which status code is given back to us from the ZarinPal gateway
// and show an error message corresponding to the status code.
} else if (in_array($verify->get('code'), [-42, -54])) {
return view('shopping.payment')->with(['error' => $verify->get('error')]);
}
}
نحوه تایید پرداخت در درگاه زرین پال

سخن آخر

انتخاب اتصال به درگاه پرداخت زرین پال در لاراول علاوه بر آسودگی در شیوه خدمات رسانی، می تواند شما را از فریبکاری کلاهبرداران در امان نگه دارد! بنابراین توصیه می کنیم تا همگام با تحولات پرداختی پیش بروید و از ایجاد نوآوری ها نترسید. ما همواره در مجموعه آموزشی آترو سعی در رفع موانع و چالش های جدید کسب و کارهای شما هستیم. کاربران عزیز می توانید برای دریافت مشاوره و نحوه ارتقا مهارت های خود با واحد پشتیبانی ما در ارتباط باشید.
چقدر این پست مفید بود؟ روی یک ستاره کلیک کنید تا به آن امتیاز دهید!
پست های پیشنهادی