مقالات


استفاده از درگاه پرداخت بانک پارسیان در زبان PHP

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

 

نصب پکیج:

به منظور استفاده از این پکیج ابتدا با استفاده از composer اقدام به نصب پکیج می کنیم:

$ composer require dpsoft/parsian-payment

 

درخواست پرداخت به بانک:

با استفاده از کد زیر درخواست پرداخت برای بانک پارسیان ارسال می گردد و توکن اختصاص داده شده توسط بانک و همچنین شماره سفارش به صورت آرایه دریافت می شود که می توانید این اطلاعات را ذخیره نمایید.

<?php 
use Dpsoft\Parsian\Parsian;

try{
    /**
    * @param int $pin (required) The Parsian gateway pin code 
    */
    $parsian = new Parsian($pin);
	
    /**
     * @param int $amount (required) The amount that customer must pay
     * @param string $callbackUrl (required) The url that customer redirect to after payment
     * @param int $orderId (optional) The unique order id, generate by package if value passed null
     * @param int $additionalData (optional) addition data
	 *
	 * @method payRequest Return array contain transaction `token` and `orderId` and you cat save.
     * $token = $response['token'];
     * $orderId = $response['orderId'];
     *     
     */
    $response = $parsian->payRequest($amount, $callbackUrl, $orderId, $additionalData);
    
    /**
     * Redirect user to payment gateway
     */
     echo $parsian->redirect();
    
    /**
     * If you need to get payment url for application or another reason you can use this method  
     * 
     * $paymentUrl = $parsian->getPaymentUrl();
     * 
     */
}catch (\Throwable $exception){
    echo $exception->getMessage();
}

بعد از این مرحله کاربر با استفاده از آدرس تولید شده به درگاه پرداخت منتقل می شود در صورتی که نیاز داشته باشید تا فقط آدرس تولید شده برای این پرداخت را داشته باشید می توانید متد getPaymentUrl() را فراخوانی نمایید.

 

تایید تراکنش:

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

<?php
use Dpsoft\Parsian\Parsian;

try{
        /**
         * @param int $pin (required) The Parsian gateway pin code 
         */
        $parsian = new Parsian($pin);
	
        /**
          * @var $token (required) Your transaction token you need to verify
          * @var $amount (required) Your consider amount for compare with payment amount
          * 
          * @method $verify return array of  transaction data.
          * $token = $response['Token'];
          * $orderId = $response['OrderId'];
          * $terminalNo = $response['TerminalNo'];
          * $RRN = $response['RRN'];
          * $hashCardNumber = $response['HashCardNumber'];
          * $amount = $response['Amount'];
          */
        $response = $parsian->verify($token, $amount);
        
        echo "Successful payment ...";
}catch (\Throwable $exception){
    echo $exception->getMessage();
}

 

برگشت تراکنش:

در شرایطی ممکن است نیاز باشد که تراکنش برای کاربر برگشت داده شود که می توان به جای تایید تراکنش آن را برگشت زد.

<?php
use Dpsoft\Parsian\Parsian;

try{
        /**
         * @param int $pin (required) The Parsian gateway pin code 
         */
        $parsian = new Parsian($pin);
	
        /**
         * @param int $pin (required) The Parsian gateway pin code 
         */
        $parsian->reverse($token);
    	
        echo "Transaction reverse successful ...";
       
}catch (\Throwable $exception){
    echo $exception->getMessage();
}

 

پکیج پرداخت آنلاین بانک پارسیان توسط دپارتمان فنی دانش پژوهان توسعه داده شده و به صورت رایگان و متن باز در گیت هاب (https://github.com/dpsoft-official/parsian) منتشر شده است.

نظرات

comment pic

نظرات خود را با ما به اشتراک بگذارید...


با ما درارتباط باشید

آدرس:

اصفهان-بلوار آیینه خانه-نرسیده به خیابان جهانگیر قشقایی

شماره تماس

۰۳۱۹۵۰۲۵۵۱۰-۰۳۱۳۶۶۸۸۵۷۵

پست الکترونیکی:

info@dpsoft.ir