کد PHP:
<?
    $pluginData[shetabha_default][type] = 'payment';
    $pluginData[shetabha_default][name] = 'شتاب ها';
    $pluginData[shetabha_default][uniq] = 'shetabha_default';
    $pluginData[shetabha_default][description] = ' مخصوص پرداخت با دروازه پرداخت الکترونیک واسط <a href="http://shetabha.com">شتاب ها</a>';
    $pluginData[shetabha_default][author][name] = 'Mehrdad Amini';
    $pluginData[shetabha_default][author][url] = 'http://Mehrdad.FarsiText.CoM';
    $pluginData[shetabha_default][author][email] = 'PCMehrdad@gmail.com';
    
    //-- فیلدهای تنظیمات پلاگین
    $pluginData[shetabha_default][field][config][1][title] = 'کد کاربری شتاب ها';
    $pluginData[shetabha_default][field][config][1][name] = 'user_id';
    $shetabha_main_url = "http://www.shetabha.com/";
    //=======================
    
    function gateway__shetabha_default($data)
    {
        global $config,$smarty,$db,$shetabha_main_url;
        
        $bank_slug='default';
        $type_pre_respons='clear';
        $sql = 'SELECT * FROM `payment` WHERE `payment_rand` = "'.$data[invoice_id].'" LIMIT 1;';
        $payment = $db->fetch($sql);
        if ( $payment ) {
            $user_id         =     $data[user_id];
            $amount         =     $data[amount];
            $invoice_id        =     $data[invoice_id];
            $id             =     $payment[payment_id];
            $callbackUrl       =     $data[callback].'&id='.$id;
            $payment_email     =     $payment[payment_email];
            $payment_mobile = $payment[payment_mobile];
            ///////////////\\\\\\\\\\\\\\\\ 
            
            $reserve_data = array(
                'userid'=>$user_id,
                'amount'=>$amount,
                'backurl'=>$callbackUrl,
                'type'=>$bank_slug,
                'email'=>$payment_email,
                'mobile'=>$payment_mobile);
            $get_reserve = httpPost($shetabha_main_url.'api/reserve/'.$type_pre_respons,$reserve_data);
            if(intval($get_reserve) >=0)
            {
                $sql = $db->queryUpdate('payment', array('payment_ref_num'=>$get_reserve), 'WHERE `payment_id` = "'.$id.'" LIMIT 1;');
                $db->execute($sql);
                header('location:'.$shetabha_main_url.'api/payment/'.$get_reserve.'/'.$bank_slug);
                exit;
            }else
            {
                $data[title] = 'خطای سیستم';
                $data[message] = '<font color="red">در ارتباط با شتاب ها خطایی رخ داده است</font> شماره خطا: '.intval($get_reserve).'<br /><a href="index.php" class="button">بازگشت</a>';
                $smarty->assign('data', $data);
                $smarty->display('message.tpl');
                exit;
            }
        }
    }

    
//==========================================================================================================    

    function callback__shetabha_default($data)
    {
        global $post,$config,$db,$get,$smarty,$shetabha_main_url;
        $type_post_respons='clear';
        //===================
        $row_id = $get['id'];
        $payment_id = $post['payment_id'];
        $resid = $post['resid'];
        $resid2 = $post['resid2'];
        $status = $post['status'];
        $time = $post['time'];
        $amount = $post['amount'];
        $user_id         =     $data[user_id];
        if(($status == 1) AND $resid)
        {
            $sql         = 'SELECT * FROM `payment` WHERE `payment_id` = "'.$row_id.'" LIMIT 1;';
            $payment     = $db->fetch($sql);
            if ($payment)
            {
                //-- یعنی کد درست وارد شده است و وجود دارد٬ حالا وضعیت سفارش چک شود در چه مرحله ای هست
                if ($payment[payment_status] == 1)//-- آماده پرداخت است
                {
                    
                    //$get_verify = file_get_contents($shetabha_main_url."api/verify/".$user_id.'/'.$payment_id.'/'.$resid.'/'.$type_post_respons);
                    $get_verify = httpPost($shetabha_main_url."api/verify/".$user_id.'/'.$payment_id.'/'.$resid.'/'.$type_post_respons,NULL);
                    $response=explode(',',$get_verify);
                    
                    if($response[0]=='1')
                    {
                        $output[status]        = 1;
                        $output[res_num]    = $resid;
                        $output[ref_num]    = $resid2;
                        $output[payment_id] = $payment[payment_id];
                    }else if($response[0]=='0')
                    {
                        $output[status]    = 0;
                        $output[message]= 'تراکنش هنوز در حالت رزرو می باشد.';
                        
                    }else if($response[0]=='2')
                    {
                        $output[status]    = 0;
                        $output[message]= 'تراکنش پرداخت نشده است.';
                        
                    }else if($response[0]=='3')
                    {
                        $output[status]    = 0;
                        $output[message]= 'تراکنش منقضی شده است';
                    }else
                    {
                        $output[status]    = 0;
                        $output[message]= 'چنین تراکنشی وجود ندارد.';
                    }
                }
                else
                {
                    $output[status]    = 0;
                    $output[message]= 'این تراکنش قبلا تغییر وضعیت داده است.';
                }
            }
            else
            {
                $output[status]    = 0;
                $output[message]= 'چنین تراکنشی وجود ندارد.';
            }
        }
        else
        {
            $output[status]    = 0;
            $output[message]= 'پرداخت موفقيت آميز نبود.';
        }
        return $output;
    }
//==========================================================
if(!function_exists('httpPost')) {
function httpPost($url,$postData){
    $ch = curl_init();  
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch,CURLOPT_HEADER, false); 
    if(is_array($postData) and !empty($postData)){curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));}
    $output=curl_exec($ch);
    curl_close($ch);
    return $output;
}
}
شتاب ها انگار متفاوته نمیشه .