اتصال به درگاه بانک پاسارگارد php

  • آپدیت شده در تاریخ

اتصال به درگاه بانک پاسارگارد php

بروزرسانی در ۲۴ اسفند ۱۴۰۲ : آپدیت جدید مطابق تغییرات درگاه بانک پاسارگارد

بروزرسانی در ۲۹ خرداد ۱۴۰۰ : آپدیت کدهای اتصال و تایید تراکنش درگاه بانک پاسارگارد

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

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

 

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

برای دریافت درگاه بانک پاسارگارد به سایت خود بانک پاسارگارد به آدرس زیر مراجعه کنید

ثبت درخواست پذیرندگی

و اطلاعات کاملا خود که یک سری اطلاعات پایه است را پر کنید. همچنین قبل از آن صفحه راهنما و نکات مهم را مطالعه کنید https://www.pep.co.ir/ipg

  • نکته : شما باید یک حساب در بانک پارسیان داشته باشید که بیشتر از ۴۸ ساعت از افتتاح حساب گذشته باشه(محدودیتی در حساب در بانک های دیگر نیست)
  • نکته ۲ : برای دریافت درگاه بانک پاسارگارد حتما سایت شما باید نماد اعتماد الکترونیک (اینماد) داشته باشد لینک ثبت نام Enamad

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

نکته خیلی مهم : اطلاعات مربوط به آدرس سایت خود و آی پی فروشگاه اینترنتی خود را وارد نمایید(برای به دست آوردن آی پی راه های متفاوتی وجود داره که بهترین راه تیکت زدن و پرسیدن اون آی پی از مسئول سرورتون که هاست ازش خریدین ، هستش) دقت داشته

باشین IP بسیار مهم هست و برای اتصال درگاه به سایت شما نقش اساسی دارد پس IP درست را وارد نمایید.

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

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

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

اتصال به درگاه بانک پاسارگارد php

به منظور استفاده هرچه راحتر یک نمونه کد ” اتصال به درگاه بانک پاسارگارد php ” برای ارسال تراکنش به بانک و یک نمونه کد برسی تراکنش بعد از برگشت از بانک نوشتم که کار شما رو تا حد زیادی راحت میکنه.

در آخر پروژه کلاس ها و توابع مورد نیاز در اتصال به بانک را برای دانلود قرار دادیم.

pay.php – ارسال تراکنش به درگاه بانک پاسارگارد

برای کپی صحیح و کامل کدها ، دابل کلیک کرده تا وارد محیط سفید و کپی شوید در غیر اینصورت امکان دارد اجرای کدها با مشکل روبرو شود

verify.php – جهت برسی نتیجه تراکنش :

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

 

برای دانلود سورس کد آموزش اتصال به درگاه بانک پاسارگارد php + کد های نمونه + توابع و کلاس های موردنیاز از باکس دانلود استفاده کنید.

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران (۲۷)

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

  1. سینا ۱۴ اسفند ۱۴۰۲

    این کدها قدیمی شده
    جدیدا چند روزه روش اتصال به درگاه پاسارگاد تغییر کرده
    لطفا کدهای جدید رو بذارید
    با تشکر

    پاسخ
    1. حسن شفیعی ۲۴ اسفند ۱۴۰۲

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

      پاسخ
  2. Mohammadreza ۳۰ فروردین ۱۴۰۲

    سلام وقت بخیر شما چطوری میخواین متوجه بشید که کدوم یوزر(فرض کنید یوزر با ایمیلش شناسایی میشه) خرید کرده؟وقتی کاربر هدایت میشه به درگاه و خرید موفقیت امیزه چطوری بفهمیم کدوم کاربر(یا ایمیل) خریدش رو کرده؟ و اطلاعات خریدش رو ثبت دیتابیس کنیم؟

    پاسخ
    1. حسن شفیعی ۳۰ فروردین ۱۴۰۲

      سلام. ممنون
      بله اطلاعات کاربر و سفارش رو تو یه جدول ذخیره میکنید و تو کال بک اون ایدی سفارش رو قرار میدید وقتی از درگاه برگشت خود درگاه با اون کال بک ایدی سفارش رو برمیگردونه و اینجوری متوجه میشید این تراکنش برای کدوم سفارش و کاربر بوده

      پاسخ
  3. امیرحسین آقاجانی ۲۴ بهمن ۱۴۰۱

    سلام،
    privateKey رو از کجا میشه تهیه کرد؟!
    و اینکه آیا merchantCode همون شماره (پذیرنده هست؟
    ممنون میشم راهنمایی بفرمایید

    پاسخ
    1. حسن شفیعی ۲۴ بهمن ۱۴۰۱

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

      پاسخ
      1. امیرحسین آقاجانی ۲۴ بهمن ۱۴۰۱

        ممنون 🙂

        پاسخ
  4. محمد ۲۹ خرداد ۱۴۰۰

    ولی در فایلی که من الان دانلود کردم ود فایل زیر موجود نیست :
    RSAProcessor.class.php
    parser.php
    خط ۴۰ و ۴۵ فایل verify.php را ببینید.

    پاسخ
    1. حسن شفیعی ۲۹ خرداد ۱۴۰۰

      از باکس دانلود مجدد دریافت کنید

      پاسخ
      1. محمد ۲۹ خرداد ۱۴۰۰

        فرک کنم مشکل دارد چون بانک خطای زیر را نمایش می دهد:
        “خطا در ارسال اطلاعات”

        پاسخ
  5. محمد ۲۷ خرداد ۱۴۰۰

    سلام در فایل parser.php من eval را حذف کردم ولی وقتی رشته داخلی را اصلاح میکنم بازهم مشکل پیش می اید . انکانش هست شما این رشته را اصلاح کنید؟ ممنون می شوم.
    eval(“\$ret[” . implode($hash_stack, “][“) . “] = ‘{$val[value]}’;”);

    پاسخ
    1. حسن شفیعی ۲۷ خرداد ۱۴۰۰

      سلام. به چه دلیل این کد رو دستکاری می کنید؟ فک نکنم برای اتصال به درگاه نیازی به تغییر در کدها باشه

      پاسخ
      1. محمد ۲۷ خرداد ۱۴۰۰

        پس علت خطاهای زیر چی هست ؟

        Warning: Use of undefined constant value – assumed ‘value’ (this will throw an Error in a future version of PHP) in /home2/mesbahsc/public_html/newsite/pasargad/parser.php on line 26

        Warning: Use of undefined constant actionResult – assumed ‘actionResult’ (this will throw an Error in a future version of PHP) in /home2/mesbahsc/public_html/newsite/pasargad/parser.php(26) : eval()’d code on line 1

        Warning: Use of undefined constant result – assumed ‘result’ (this will throw an Error in a future version of PHP) in /home2/mesbahsc/public_html/newsite/pasargad/parser.php(26) : eval()’d code on line 1

        Warning: Use of undefined constant value – assumed ‘value’ (this will throw an Error in a future version of PHP) in /home2/mesbahsc/public_html/newsite/pasargad/parser.php on line 26

        Warning: Use of undefined constant actionResult – assumed ‘actionResult’ (this will throw an Error in a future version of PHP) in /home2/mesbahsc/public_html/newsite/pasargad/parser.php(26) : eval()’d code on line 1

        Warning: Use of undefined constant resultMessage – assumed ‘resultMessage’ (this will throw an Error in a future version of PHP) in /home2/mesbahsc/public_html/newsite/pasargad/parser.php(26) : eval()’d code on line 1

        پاسخ
      2. حسن شفیعی ۲۸ خرداد ۱۴۰۰

        ورژن php

        پاسخ
      3. محمد ۲۸ خرداد ۱۴۰۰

        در اصلاح همین موارد خط ۲۶ از فایل parser.php را نمی توانم اصلاح کنم . و مجدد خطا ظاهر می شود . در واقع من eval را برداشتم ولی ورودیش را مجدد به چه صورت باید بنویسم؟

        پاسخ
      4. محمد ۲۸ خرداد ۱۴۰۰

        در واقع پیغام زیر ظاهر می شود:
        array(1) { [“actionResult”]=> array(2) { [“result”]=> string(5) “False” [“resultMessage”]=> string(124) “اطلاعات فرستاده شده از جانب فروشگاه با فرمت استاندارد همخوانی ندارد” } }

        پاسخ
      5. محمد ۲۸ خرداد ۱۴۰۰

        یک خطای دیگر هم که ظاهر می شود این است :
        اطلاعات فرستاده شده از جانب فروشگاه با فرمت استاندارد همخوانی ندارد

        پاسخ
      6. حسن شفیعی ۲۹ خرداد ۱۴۰۰

        کدهای درگاه بانک پاسارگارد کلا تغییر کرده و کدهای این صفحه با آخرین بروزرسانی تغییر کردند. لطفا از کدهای جدید استفاده کنید

        پاسخ
      7. محمد ۲۹ خرداد ۱۴۰۰

        فایلهایی که require_ince می شوند در لینک دانلود شما موجود نبود . آیا انها تغییر نکرده اند؟

        پاسخ
  6. صادق ۱۸ خرداد ۱۴۰۰

    توی کد ها نمیفهمم کجا از privatekey استفاده شده . توی ایجاد امضا هم ما از کلید خصوصی استفاده ای نکردیم

    پاسخ
  7. امیر خسروشاهی ۱۴ بهمن ۱۳۹۹

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

    پاسخ
    1. حسن شفیعی ۱۴ بهمن ۱۳۹۹

      سلام. InvoiceNumber

      پاسخ
      1. امیر خسروشاهی ۱۵ بهمن ۱۳۹۹

        مقدارشو خود بانک به ما میده ؟؟
        تا جایی که من میدونم باید خودمون تعریف کنیم و بهش مقدار بدیم

        پاسخ
  8. محمد ۱۴ اردیبهشت ۱۳۹۸

    سلام . من قبلا از طریق آموزشتون این درگاه رو تنظیم کردم و بدون مشکل کار میکرد اما به تازگی نسخه php خودم رو به ۷٫۲ ارتقا دادم . اما بعد از پرداخت ، از یکی از کد های داخل فایل parser.php خطا میگیره . متن خطاها هم این هستش :

    Warning: Use of undefined constant value – assumed ‘value’ (this will throw an Error in a future version of PHP) in public_html/payment/verify/pep/parser.php on line 26

    Warning: Use of undefined constant result – assumed ‘result’ (this will throw an Error in a future version of PHP) in public_html/payment/verify/pep/parser.php(26) : eval()’d code on line 1

    ممنون میشم راهنمایی کنید چطور مشکل رو رفع کنم .

    پاسخ
    1. حسن شفیعی ۱۴ اردیبهشت ۱۳۹۸

      سلام.
      مشکل از تابع eval در این نسخه از php است که برای رفع ان کدهای داخل این تابع را در خط ۲۶ فایل parser.php با رعایت کوتیشن ها و اسلش هایی که هست در بیارید و ان را بدون eval بنویسید تا مشکل حل بشه.
      در بالای این خط یعنی خط ۲۵ می تونید ان را از کامنت خارج کنید و یه exit بزارید تا ببینید چیزی که باید بنویسید باید به چه صورتی باشد و فعد کد را اصلاح کنید.
      در حال حاضر دسترسی به سیستم برای این تغییرات نیست و خودتان با کمی دفت میتونید این مورد را حل کنید.

      موفق باشید.

      پاسخ
  9. محمد جواد ۲۲ اسفند ۱۳۹۷

    سلام . بعد از اینکه کاربر از درگاه برمیگرده ، درگاه باید یه سری اطلاعات رو به صفحه verify ارسال کنه . مثلا شماره فاکتور . که با استفاده از اون شماره فاکتور ما بتونیم سایر اطلاعات فاکتور رو از پایگاه داده بخونیم . اما کد های مربوط به verify که شما قرار دادین این مورد داخلش نیست
    میشه یه کم توضیح بدین ؟
    تشکر

    پاسخ
    1. حسن شفیعی ۲۲ اسفند ۱۳۹۷

      سلام. در خط ۱۹ فایل pay.php شما باید شماره فاکتور را ایجاد ($invoiceNumber = 16525; //شماره فاكتور) و اطلاعات آن را در دیتابیس اضافه کنید و هنگام بازگشت از بانک این شماره فاکتور بصورت ‘InvoiceNumber’ => ‘۱۱۱۱’, در آرایه $fields برگشت داده میشه که با این شماره میتونید در دیتابیس کویری بزنید و اطلاعات رو بخونید و یا وضعیت تراکنش را در دیتابیس تغییر بدید.
      موارد مربوط به دیتابیس را شما باید دستی بنابر وضعیت کدهای خود در این نمونه کدها اضافه کنید.
      موفق باشید.

      پاسخ
دوره های آموزشی