راهنمای سرویس خرید شارژ

1

خرید شارژ

دانلود داکیومنت ها
نمیتواند خالی باشد
نمیتواند خالی باشد
نمیتواند خالی باشد
نمیتواند خالی باشد
نمیتواند خالی باشد
نمیتواند خالی باشد
نمیتواند خالی باشد
غیر ضروری
غیر ضروری

index.php

        //بارگذاری کلاس مربوط به انجام عملیات های پرداخت
        require_once '../PecRequestClass.php';

$pecRequest = new PecRequestClass();
$res = false;
$success = false;
if(isset($_POST['callback'])){
    $callback = $_POST['callback'];
}else{
    $callback = 'localhost/mobilecharge/callback.php';
}
if ($_POST) {
    if ($_POST['pin'] == '' || $_POST['orderId'] == '' || $_POST['callback'] == ''|| $_POST['Amount'] == '' || $_POST['RequesterMobileNumber'] == '' || $_POST['ChargeMobileNumber'] == '' || $_POST['TopupType'] == '' ) {
        $pecRequest->errorMsg = 'لطفا اطلاعات درخواست شده را تکمیل نمایید.';
        $res = $pecRequest->alertMsg();
    }else{
        // دریافت اطلاعات از فرم
        $pecRequest->pin = $_POST['pin'];
        $pecRequest->callbackUrl = $_POST['callback'];
        $orderId = $_POST['orderId'];
        $chargeMobileNumber = $_POST['ChargeMobileNumber'];
        $requesterMobileNumber = $_POST['RequesterMobileNumber'];
        $topupType = $_POST['TopupType'];
        $amount = $_POST['Amount'];
        $additionalData = $_POST['additionalData'];
        $orginator = $_POST['orginator'];
        
        // ارسال درخواست
        $res = $pecRequest->chargeMobileService($orderId,$chargeMobileNumber,$requesterMobileNumber,$topupType,$amount,$additionalData,$orginator); 
        if ($res == false) {
				$res = $pecRequest->alertMsg();
        }
        else{
            $success = true;
        }
    }
    
}

                        

PecRequestClass.php

                        // سرویس خرید شارژ موبایل
    public function chargeMobileService($orderId,$chargeMobileNumber,$requesterMobileNumber,$topupType,$amount,$additionalData,$orginator){
        $this->url = "https://pec.shaparak.ir/NewIPGServices/SimCharge/TopupChargeService.asmx?wsdl";
        $this->orderId = $orderId;
        $params = array (
			"LoginAccount" => $this->pin,
			"OrderId" => $orderId,
            "ChargeMobileNumber" => $chargeMobileNumber,
            "RequesterMobileNumber" => $requesterMobileNumber,
            "TopupType" => $topupType,
            "Amount" => $amount,
			"CallBackUrl" => $this->callbackUrl,
            "AdditionalData" => $additionalData,
            "Originator" => $orginator, 
	    );

        // در این مرحله میتوانید اطلاعات قبل از ارسال را ذخیره سازی کنید.

        $client = new SoapClient ( $this->url );
        try {
            $result = $client->TopupChargeRequest ( array (
                    "requestData" => $params 
            ));
            if ($result->TopupChargeRequestResult->Token && $result->TopupChargeRequestResult->Status === 0) {
                // توکن دریافت شده را میتوانید در این مرحله به تراکنش مورد نظر مرتبط نموده و ذخیره سازی کنید.
                // $token = $result->TopupChargeRequestResult->Token;
                header ( "Location: https://pec.shaparak.ir/NewIPG/?Token=" . $result->TopupChargeRequestResult->Token ); /* Redirect browser */
                exit ();
            }
            elseif ( $result->TopupChargeRequestResult->Status  != '0') {
                $err_msg = "( کد خطا : " . $result->TopupChargeRequestResult->Status . ") " .
                $result->TopupChargeRequestResult->Message ;
                $this->errorMsg = $err_msg;
                return false;
            }
        } catch ( Exception $ex ) {
            $this->errorMsg =  $ex->getMessage();
        }
    }