نمایش نتایج 1 تا 3 از 3

نام تاپیک: چک کردن مبلغ پرداختی در درگاه بانک ملی (سداد)

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    چک کردن مبلغ پرداختی در درگاه بانک ملی (سداد)

    سلام خدمت دوستان
    برای درگاه پرداخت یک سایت دارم از درگاه سداد شاپرک استفاده میکنم.

    کد فایل پرداخت (Pay.php):
    <?php
    session_start();
    include_once("function.php");
    /*
    * WWW.NETPARADIS.COM
    */
    //Prepare data
    $key="YourKey"; // TerminalKey
    $MerchantId="YourMerchantId";
    $TerminalId="YourTerminalId";

    $Amount=100; // مبلغ به ریال
    $OrderId = time().mt_rand(0,3222) ; // شماره سفارش را در دیتابیس ذخیره کنید به عنوان یک سطر جدید
    $LocalDateTime=date("m/d/Y g:i:s a");

    $ReturnUrl="http://site.Com/Verify.php"; // ادرس بازگشتی به سایت شما

    $SignData=encrypt_pkcs7("$TerminalId;$OrderId;$Amo unt","$key");
    $data = array('TerminalId'=>$TerminalId,
    'MerchantId'=>$MerchantId,
    'Amount'=>$Amount,
    'SignData'=> $SignData,
    'ReturnUrl'=>$ReturnUrl,
    'LocalDateTime'=>$LocalDateTime,
    'OrderId'=>$OrderId);

    $str_data = json_encode($data);

    $res=CallAPI('https://sadad.shaparak.ir/vpg/api/v0/Request/PaymentRequest',$str_data);
    $arrres=json_decode($res);
    if($arrres->ResCode==0)
    {
    $Token= $arrres->Token;
    $url="https://sadad.shaparak.ir/VPG/Purchase?Token=$Token";
    header("Location:$url");exit;
    }
    else
    die($arrres->Description);


    ?>



    و کد فایل چک کردن وضعیت پس از پرداخت (Verify.php):
    <?php
    include_once("function.php");

    $key="YourKey"; // TerminalKey

    $OrderId=$_POST["OrderId"];
    $Token=$_POST["token"];
    $ResCode=$_POST["ResCode"];

    if($ResCode==0)
    {
    $verifyData = array('Token'=>$Token,'SignData'=>encrypt_pkcs7($T oken,$key));
    $str_data = json_encode($verifyData);
    $res=CallAPI('https://sadad.shaparak.ir/vpg/api/v0/Advice/Verify',$str_data);
    $arrres=json_decode($res);
    }
    if($arrres->ResCode!=-1 && $ResCode==0)
    {
    //Save $arrres->RetrivalRefNo,$arrres->SystemTraceNo,$arrres->OrderId to DataBase
    echo "شماره سفارش:".$OrderId."<br>"."شماره پیگیری : ".$arrres->SystemTraceNo."<br>"."شماره مرجع:".
    $arrres->RetrivalRefNo."<br> اطلاعات بالا را جهت پیگیری های بعدی یادداشت نمایید."."<br>";

    // در اینجا باید سفارش کاربر را تایید و در دیتابیس موفقیت آمیز قرار بدید
    // نمایش صفحه تاییدیه پرداخت
    }
    else
    echo "تراکنش نا موفق بود در صورت کسر مبلغ از حساب شما حداکثر پس از 72 ساعت مبلغ به حسابتان برمی گردد.";
    ?>



    به این صورت هست.
    تمام فرآیند پرداخت کاملا درست پیش میره فقط یک مشکل دارم.بعد از پرداخت نمیتونم مبلغ پرداخت شده رو بگیرم که بتونم با ارزش واقعی کالا مقایسه کنم.یعنی مثلا اگه کاربر با هر ترفندی بتونه مبلغ پرداخت رو متفاوت وارد کنه با مبلغ کالا هیچ راهی برا چک کردنش نیست.چون فرض کنید من با متد get مبلغ رو بفرستم به فایل Pay.php اونوقت کاربر اگه مبلغ رو توی url تغییر بده و یه مبلغ دیگه رو پرداخت کنه چجوری میتونم چک کنم این قضیه رو؟
    ممنون میشم راهنمایی بفرمایید.
    آخرین ویرایش به وسیله majidghafoorzade : دوشنبه 03 بهمن 1401 در 23:59 عصر

تاپیک های مشابه

  1. سوال: اتصال به درگاه بانک ملی سداد
    نوشته شده توسط Rezvane.R در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: یک شنبه 30 آبان 1395, 14:16 عصر
  2. خالی بودن سشن ها بعد از تأیید پرداخت در درگاه بانک ملی
    نوشته شده توسط bftarane در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: چهارشنبه 18 تیر 1393, 13:27 عصر
  3. چک کردن وجود اطلاعات در بانک
    نوشته شده توسط sepide_68_91 در بخش C#‎‎
    پاسخ: 2
    آخرین پست: یک شنبه 04 تیر 1391, 09:55 صبح
  4. مبتدی: چک کردن اعداد تصادفی در بانک اطلاعاتی
    نوشته شده توسط vbiman در بخش C#‎‎
    پاسخ: 1
    آخرین پست: چهارشنبه 29 تیر 1390, 20:20 عصر
  5. چک کردن وجود جدول در بانک اطلاعاتی
    نوشته شده توسط v_shalchian در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 2
    آخرین پست: یک شنبه 30 شهریور 1382, 10:01 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •