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

آموزش اتصال به درگاه بانک ملت php

بروزرسانی در ۳ بهمن ۱۳۹۷ : افزودن لیست خطاهای درگاه بانک ملت

بروزرسانی در ۲۷ شهریور ۱۳۹۷ : افزودن کلاس PHP جدا و پکیج لاراول درگاه بانک ملت

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

دریافت درگاه بانک ملت

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

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

بسته به نوع کسب و کار خود نوع حقوقی و یا حقیقی را انتخاب کنید

در مرحله بعد از شما یک سری اطلاعات از شخص شما یا شرکت درخواست می شود که باید با دقت وارد و ثبت کنید

بعد از ثبت درخواست از شما مدارکی به شرح زیر اخذ می شود .

مدارک مورد نیاز دریافت درگاه بانک ملت

  • مشتریان حقیقی :
    اصل و کپی شناسنامه و کارت ملی مالک سایت
    دارا بودن اسناد تملیکی و استیجاری مرتبط با محل فعالیت
    امکان ارائه مجوزهای رسمی از مراجع ذیصلاح جهت کسب و کار اینترنتی
    دارا بودن آدرس اینترنتی (دامنه) با پسوندهای مجاز نظیر
    .com , .org , .net , .biz , .ir (All .ir SubDomain like .co.ir or .ac.ir and …)
  • مشتریان حقوقی :
    کپی شناسنامه و کارت ملی صاحبان امضا
    نداشتن مطالبات معوق و چک برگشتی در سیستم بانکی کشور
    کپی آگهی تاسیس و آخرین تغییرات شرکت-روزنامه رسمی
    کپی اساسنامه شرکت
    دارا بودن آدرس اینترنتی (دامنه) با پسوندهای مجاز نظیر
  • com , .org , .net , .biz , .ir (All .ir SubDomain like .co.ir or .ac.ir and …)

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

نکته : شما باید یک حساب در بانک ملت داشته باشید که بیشتر از ۴۸ ساعت از افتتاح حساب گذشته باشه

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

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

نکته ۲ : برای دریافت درگاه بانک ملت حتما سایت شما باید نماد اعتماد الکترونیک (اینماد) داشته باشد که هزینه سالیانه آن فقط ۳۵ هزار تومان است.(رایگان شد!) لینک ثبت نام Enamad

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

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

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

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

برنامه نویسی درگاه با توجه به نیاز به استفاده از توابع Soap در PHP کاری بسیار چالش برانگیز بوده، زیرا این تابع در نسخه های مختلف PHP رفتار متفاوتی را از خود نشان می دهد.

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

در آخر پروژه فایل nusoap برای اتصال به بانک را برای دانلود قرار دادیم

 

index.php – ارسال تراکنش به درگاه بانک ملت :

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

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

Error پیغام
۰ تراکنش با موفقیت انجام شد
۱۱ شماره کارت نامعتبر است
۱۲ موجودی کافی نیست
۱۳ رمز نادرست است
۱۴ تعداد دفعات وارد کردن رمز بیش از حد مجاز است
۱۵ کارت نامعتبر است
۱۶ دفعات برداشت وجه بیش از حد مجاز است
۱۷ کاربر از انجام تراکنش منصرف شده است
۱۸ تاریخ انقضای کارت گذشته است
۱۹ مبلغ برداشت وجه بیش از حد مجاز است
۲۱ پذیرنده نامعتبر است
۲۳ خطای امنیتی رخ داده است
۲۴ اطلاعات کاربری پذیرنده نامعتبر است
۲۵ مبلغ نامعتبر است
۳۱ پاسخ نامعتبر است
۳۲ فرمت اطلاعات وارد شده صحیح نمی باشد
۳۳ حساب نامعتبر است
۳۴ خطای سیستمی
۳۵ تاریخ نامعتبر است
۴۱ شماره درخواست تکراری است
۴۲ یافت نشد Sale تراکنش
۴۳ قبلا درخواست Verify داده شده است
۴۴ درخواست Verfiy یافت نشد
Error پیغام
۴۵ تراکنش Settle (تسویه) شده است
۴۶ تراکنش Settle (تسویه)نشده است
۴۷ تراکنش Settle یافت نشد
۴۸ تراکنش Reverse شده است
۴۹ تراکنش Refund یافت نشد
۵۱ تراکنش تکراری است
۵۴ تراکنش مرجع موجود نیست
۵۵ تراکنش نامعتبر است
۶۱ خطا در واریز
۱۱۱ صادر کننده کارت نامعتبر است
۱۱۲ خطای سوییچ صادر کننده کارت
۱۱۳ پاسخی از صادر کننده کارت دریافت نشد
۱۱۴ دارنده کارت مجاز به انجام این تراکنش نیست
۴۱۲ شناسه قبض نادرست است
۴۱۳ شناسه پرداخت نادرست است
۴۱۴ سازمان صادر کننده قبض نامعتبر است
۴۱۵ زمان جلسه کاری به پایان رسیده است
۴۱۶ خطا در ثبت اطلاعات
۴۱۷ شناسه پرداخت کننده نامعتبر است
۴۱۸ اشکال در تعریف اطلاعات مشتری
۴۱۹ تعداد دفعات ورود اطلاعات از حد مجاز گذشته است
۴۲۱ IP نامعتبر است

محتوای فایل ZIP :

  • دو نسخه هماهنگ با PHP ورژن های ۵٫۶ به پایین و ۷ به بالا در فولدر /purePHP  وجود دارد.
  • کلاس آماده درگاه بانک ملت نیز در فولدر /phpClass  قرار دارد که می تواند آن را در همه جای پروژه فقط با ساختن شی استفاده کنید (نحوه استفاده از این کلاس و یک فایل نمونه از آن همراه سورس کد قرار داده شده است).
  • نسخه مخصوص اتصال به درگاه بانک ملت برای فریموک لاراول نیز در فولدر /Laravel قرار دارد.

برای دانلود سورس کد آموزش اتصال به درگاه بانک ملت php + کد های نمونه + مستندات PDF + کتابخانه nusoap از قسمت زیر اقدام کنید

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

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

  1. امیرحسین آقاجانی ۵ شهریور ۱۳۹۷

    سلام، خیلی ممنونم ازین آموزش!
    فقط یه سوال!
    به پرداخت به من فقط نام کاربری پرتال و پسورد رو داده!
    بقیه اطلاعات رو از کجا باید بیارم؟ مثلا ترمینال ؟!

    با تشکر

    پاسخ
    1. حسن شفیعی ۱۰ شهریور ۱۳۹۷

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

      پاسخ
  2. هادی ۴ شهریور ۱۳۹۷

    مرسی از مطلبی که به اشتراک گذاشتی

    پاسخ
    1. حسن شفیعی ۱۰ شهریور ۱۳۹۷

      سلام . خوشحالم مفید واقع شده . موفق باشید.

      پاسخ
  3. مجید ۱۸ مرداد ۱۳۹۷

    سلام
    چطوری میتونم این درگاه پرداخت رو تست کنم…چون درگاه پرداخت واقعی ندارم…؟

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

      سلام. به هیچ طریق! .تا زمانی که بهش نیاز ندارید از تست کردن کدهای مربوط به درگاه های پرداخت مستقیم خودداری کنید.
      هر زمان پروژه ای از کارفرما داشتید که نیاز به درگاه مستقیمی مثل ملت رو داشت بهتون اطلاعات و سرور رو میدن تا این رو تست و راه اندازی کنید.
      یا اینکه اگر سایتی راه اندازی و درگاه مستقیم گرفتید میتونید این کد ها رو تست کنید.

      موفق باشید.

      پاسخ
  4. محمد بالاگر ۱۸ مرداد ۱۳۹۷

    سلام
    خیلی ممنون .بنده از کدهای فوق استفاده کردم ، تراکنش انجام میشه و در انتها هیچ پیغامی نشون نمیده که متوجه بشم تراکنش با موفقیت بوده یا خیر ؟؟؟ مبلغ نیز کسر می گردد.

    پاسخ
    1. محمد بالاگر ۱۸ مرداد ۱۳۹۷

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

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

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

        موفق باشید.

        پاسخ
      2. محمد بالاگر ۱۸ مرداد ۱۳۹۷

        همین کار را هم کرده ام ولی متن زیر رو نشون میده
        Error :

        پاسخ
      3. حسن شفیعی ۱۸ مرداد ۱۳۹۷

        احتمالا مقدار دهی های شما اشتباه بوده یکبار از $result خودتون بعد از خط ۲۴ وریفای var_dump گرفته و چک کنید.

        موفق باشید.

        پاسخ
      4. محمد بالاگر ۱۸ مرداد ۱۳۹۷

        پیغام های خطا را شماره گذاری کردم .آخرین error اجرا میشه یعنی ResCode مقداری نمیگیره که چاپ نمیشه!!!
        مشکل از کجاست؟؟

        پاسخ
      5. حسن شفیعی ۱۸ مرداد ۱۳۹۷

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

        پاسخ
      6. محمد بالاگر ۱۹ مرداد ۱۳۹۷

        تنظیمات خاصی رو باید در دامنه و هاست انجام داد؟؟
        در صفحه index مقدار payerId$ باید ۰ باشه؟
        درکل باید کدوم قسمتهای کد رو تغییر بدم تا چک کنم که اشتباه نکرده باشم؟

        پاسخ
      7. حسن شفیعی ۱۹ مرداد ۱۳۹۷

        خیر تنظیمات خاصی نیاز نیست .
        فقط باید اطلاعاتی که از بانک ملت گرفتید بعلاوه آدرس بازگشی callback را تغییر بدید همین.
        اگر با php مقدماتی به بالا آشنا نیستید بهتره به فرد دیگری بدید تا اینکار رو برای شما انجام بدند.
        موفق باشید.

        پاسخ
      8. محمد بالاگر ۱۹ مرداد ۱۳۹۷

        منم دقیقا همین کارها را انجام داده ام ولی….

        پاسخ
      9. محمد بالاگر ۲۲ مرداد ۱۳۹۷

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

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

        سلام . بله احتمالا مشکل از هاست میتونه باشه . موفق باشید.

        پاسخ
  5. علی ۱۷ مرداد ۱۳۹۷

    سلام من برای مقدار دهی از SESSION استفاده می کنم و خطای there was problem bankرو میده علتش چی هست و وقتی همون صفحه رو می بندم و از طریق مسیر دهی وارد میشم سریع میره به درگاه بانک ؟؟ با سپاس

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

      سلام . احتمالا مقادیر سیشن رو نتونستید صحیح بخونید . ابتدا بصورت عادی مقادیر رو دستی ست و تست کنید اگر اوکی بود مراحل بعد رو دنبال کنید.

      برای استفاده از سیشن بهتره قبل از هرچیزی در خط اول بعد از و قبل از هر کد دیگری session_start() رو فراخوانی کنید و بعد دوباره تست کنید و همچنین مقادیر $_SESSION رو var_dumpکنید تا متوجه مشکل بشید.

      موفق باشید.

      پاسخ
  6. علی ۱۷ مرداد ۱۳۹۷

    با سلام در صفحه verify قسمت if($result == ) چون مقدار دهی نشده کار نمی کنه چه مقداری رو باید قرار بدم با سپاس

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

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

      موفق باشید

      پاسخ
      1. علی ۱۷ مرداد ۱۳۹۷

        سپاسگزارم کار کرد

        پاسخ
  7. علی ۱۷ مرداد ۱۳۹۷

    با سلام و خسته نباشید من کدها رو گذاشتم ولی صفحه verify مثل اینکه تو کد نویسی مشکل داره من فقط و یوزر و پسورد و شماره پایانه رو گذاشتم چیز دیگه ای هم باید تغییر بدم؟
    وقتی صفحه verify رو باز می کنم ارور ۵۰۰ میده انگار یه چیزی توی برنامه ایراد داره و run نمیشه

    پاسخ
  8. محمدرضا ۲ مرداد ۱۳۹۷

    واقعا اموزش هاتون عالی هستش یکی از بهترین سایت های ایرانی هستید ارزوی موفقیت برای شما و تمام اعضای وبسایت دارم

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

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

      پاسخ
  9. هادی ۲۳ تیر ۱۳۹۷

    سلام؛ ببخشید این کتابخونه nusoap رو چطور میشه با کامپوزر اضافه کرد؟! من اضافه کردم خطا داد
    برای PHP 7 به بالا میخوام.
    دستور: composer require econea/nusoap: ~0.9.5.1
    لینک: https://github.com/econea/nusoap

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

      سلام . از این پکیج استفاده کنید.
      composer require codecasts/nusoap-php7

      برای دریافت پکیج های کامپوزر همیشه سعی کنید ابتدا در سایت رسمی پکیج های اون ینی https://packagist.org جستجو کنید.

      موفق باشید.

      پاسخ
      1. هادی ۲۴ تیر ۱۳۹۷

        ممنون حسن آقا
        پکیج قبلی رو هم ورژنشو از دستورش برداشتم وارد کرد و ارور نداد! ولی با هردو پکیج که تست می‌کنم مقدار ResCode برابر ۴۲۱ میشه!
        منظورش چیه؟! البته اینم بگم که توی پارامترها terminalId، userName و userPassword رو به اطلاعات خودم تغییر دادم و اطلاعاتم توی EDD وردپرس به درستی کار می‌کنه!

        پاسخ
      2. حسن شفیعی ۲۴ تیر ۱۳۹۷

        خواهش می کنم. خطای ۴۲۱ مربوط به نامعتبر بودن IP هستش . لیست کامل خطاها با توضیحات صفحه آخر داکیومنت راهنما وجود داره.
        موفق باشید.

        پاسخ
      3. هادی ۲۴ تیر ۱۳۹۷

        درگاه فقط روی دامنه‌ای که باهاش ثبت نام شده کار می‌کنه؟! یا اگه این‌طور نیست در این مورد که میگه نامعتبره چه کاری باید انجام داد؟!
        چون من نگرفتم درگاه و یکی از دوستام گرفته اطلاعی ندارم.

        پاسخ
      4. حسن شفیعی ۲۴ تیر ۱۳۹۷

        پس باید دقیقا ازش اطلاع پیدا کنید و اگر ip با چیزی که در “به پرداخت” ثبت شده یکسان نیست میتونید باهاشون در این مورد تماس بگیرید تا تغییرات رو لحاظ کنند.

        پاسخ
  10. امید ۲۳ تیر ۱۳۹۷

    سلام خسته نباشید
    در صفحه ی callback از $result که var_dump میگیرم نتیجه را بصورت زیر نمایش میده و نمیدونم چرا ۰ به ما برنمیگردونه تا کد متد settle اجرا بشه و تراکنش کامل اجرا بشه
    بیش ازین سپاس فراوان بابت راهنماییتون
    array(2) { [“faultcode”]=> string(11) “soap:Client” [“faultstring”]=> string(42) “Unmarshalling Error: For input string: “” ” }

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

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

      پاسخ
      1. امید ۲۳ تیر ۱۳۹۷

        حسن آقا یه دنیا ممنون
        حل شد
        مرسی
        انشالله به هرچی میخوای تو زندگیت برسی
        سپاس فراوان

        پاسخ
      2. حسن شفیعی ۲۳ تیر ۱۳۹۷

        خواهش میکنم . لطف دارید همچنین . موفق و پیروز باشید

        پاسخ
  11. امید رضا ۲۳ تیر ۱۳۹۷

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

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

      سلام . خوشحالم مفد واقع شده . خب این متد در فایل verify بررسی و اجرا میشه و اگر اجرا بشه یک سری کد برگشت میده که بر اساس اون ما پیام ها رو نمایش می دیم که شما باید هم نمایش بدید و هم یک سری تاییدیه ها و اعتبارسنجی ها در دیتابیس لحاظ کنید . بعد از bpverify شما باید settle رو هم انجام بدید تا واریز وجه انجام بشه . در غیر اینصورت برگشت می خوره که تمام اینها داخل کدها اعمال شده و عملا اگر طبق اونها پیش برید مشکلی پیش نماید و اگر موردی بود مطمینا یا تغییر نادرستی انجام دادید یا از سمت بانک هستش.

      موفق باشید.

      پاسخ
  12. هادی ۲۲ تیر ۱۳۹۷

    سلام؛ قسمت اول که یه فرم HTML باز کردین و سابمیتش کردین تا انتقال پیدا کنه
    ولی من چون دارم یه وب سرویس REST با خروجی جیسوسن مینویسم اینجاشو نمیدونم چیکار باید کنم؟!
    کاربرو تو سمت کلاینت به چه آدرسی داخل مرورگر انتقال بدم؟!

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

      سلام . آدرس اصلی این هستش https://bpm.shaparak.ir/pgwchannel/startpay.mellat که باید بصورت متد post مقدار RefId رو همراه باهاش ارسال کنید.
      موفق باشید.

      پاسخ
      1. هادی ۲۲ تیر ۱۳۹۷

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

        پاسخ
  13. عباس ۱۱ تیر ۱۳۹۷

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

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

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

      موفق باشید.

      پاسخ
  14. hajali ۲۹ خرداد ۱۳۹۷

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

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

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

      پاسخ
  15. سعید ۲۴ خرداد ۱۳۹۷

    تشکر

    پاسخ
  16. saeed sheikh ۲۴ خرداد ۱۳۹۷

    سلام، نمونه کد های قرار داده شده برای php7 هنگام اجرا از متد getError خطا میگیره و این ارور رو میده

    Uncaught SoapFault exception: [Client] Function (“getError”) is not a valid method … SoapClient->__call(‘getError’, Array) #1 {main} thrown in /home/banori/domains/banoris.com/public_html/pay/default.php on line 327

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

      سلام . در خط ۳۰۶ فایل default.php به جای soapclient مقدار nusoap_client را جایگزین کنید.

      موفق باشید.

      پاسخ
  17. حمید ۲۰ خرداد ۱۳۹۷

    با سلام و تشکر از زحمات شما از این اسکریپت تو اپن کارت چطوری میتونم استفاده کنم ؟

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

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

      دانلود ماژول بانک ملت اپن کارت

      موفق باشید.

      پاسخ
      1. حمید ۲۱ خرداد ۱۳۹۷

        با تشکر از پاسختان اپن کارت من ورژن ش ۲.۰.۳.۱ هست که با این ورژن درگاه سازگار نیست راه حلش چیه ؟
        ممنون از وقتی که گذاشتین

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

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

        پاسخ
      3. حمید ۲۱ خرداد ۱۳۹۷

        خیلی خیلی ممنون حل شد

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

        خواهش می کنم.موفق باشید.

        پاسخ
  18. فرهاد ۱۷ خرداد ۱۳۹۷

    سلام
    ارتباط با درگاه بانک ملت پیاده سازی کردم و تو گوشی های اندرویدی و وب‌سایت درست کار میکنه اما تو بعضی از ای او اس ها (ایفون ۶ و ۷ ) از سمت بانک callback صدا زده نمیشه
    پشتیبانی بانک هم میگه مشکل از خودتونه و راهنمایی دیگه ای نمیکنه
    ممنون میشم اگر کسی‌تجربش داره راهنمایی کنه

    پاسخ
  19. مجتبی ۱۵ خرداد ۱۳۹۷

    سلام وقت بخیر من میخوام هنگامی که میخواد به قسمت پرداخت بره یه new tab باز بشه باید چیکار کنم؟

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

      سلام . ممنون . از جاوااسکریپت استفاده کنید .

      window.onload = function(){
      window.open(url, "_blank"); // will open new tab on window.onload
      }

      موفق باشید.

      پاسخ
  20. امید احمدیانی ۳۰ اردیبهشت ۱۳۹۷

    سلام
    میشه کد ها رو روی لوکال تست کرد و جواب گرفت یا حتما باید روی سروری که ای پیش به به پرداخت داده شده اجرا بشه؟

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

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

      موفق باشید.

      پاسخ
  21. امیر ۲۸ اردیبهشت ۱۳۹۷

    با سلام
    من از نمونه کد شما استفاده کردم
    در صفحه درخواست اطلاعات با موفقیت برای درگاه ارسال میشه ولی بعد از پرداخت در صفحه کاملا سفید Error : رو تایپ میکنه
    ضمن اینکه من از php 5.6 استفاده می کنم
    ممنون میشم پاسخ من رو بدید

    ممنون

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

      سلام . نسخه nusoapی که قرار دادیم معمولا با تمام نسخه های php هماهنگه . به هر حال برای تست مجدد نسخه مناسب php شما رو قرار دادم (از لینک بالا مجدد دانلود کنید) . بعد تست, نتیجه رو اعلام کنید .

      موفق باشید

      پاسخ
  22. امیر ۲۸ اردیبهشت ۱۳۹۷

    سلام
    مدت ها بود با ی سایت که مدیرش حرفه ای باشه برخورد نکرده بودم
    دمت گرم
    موفق باشی

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

      سلام . خواهش می کنم. همچنین موفق باشید

      پاسخ
  23. اتصال کوتاه ۱۹ اردیبهشت ۱۳۹۷

    ممنون
    با این ورژن جدید کتابخانه nusoap.php این مشکل حل شد.
    یک مسئله
    با کد نمونه ای که همراه کتابخانه است( default.php ) امتحان کردم ارور داده

    Uncaught SoapFault exception: [Client] Function (“getError”) is not a valid method for this service

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

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

      مشکلی نداره همانند کدی است که قرار دادیم با این تفاوت که از کتابخانه داخلی خود php استفاده کرده که کافیه شما اینکلود رو انجام ندید و ابجکت SoapClient رو فراخوانی کنید (در واقع در کدها نیاز است فقط replace کنید.)

      موفق باشید.

      پاسخ
      1. اتصال کوتاه ۲۳ اردیبهشت ۱۳۹۷

        نه.مشکل دارد.
        مثلا در جایی امده است از متغییر resultStr$ استفاده کرده ، در صورتی که این متغییر مقدار هی و تعریف نشده است
        متاسفانه در کل اینترنت هر سایتی این پست و مطلب را کپی کرده باشد، به همراه این اشکال و خطا بوده و نتوانسته این مشکل را رفع نماید
        ممنون میشوم اگر مقدور است این خطا ها را رفع نموده و یک کد یکپارچه دیگر برای عموم ارائه دهید.

        پاسخ
      2. حسن شفیعی ۲۳ اردیبهشت ۱۳۹۷

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

        به جای $resultStr از $result استفاده کنید که یک خط بالاتر تعریف شده

        موفق باشید.

        پاسخ
  24. اتصال کوتاه ۱۹ اردیبهشت ۱۳۹۷

    سلام
    کد شما با ورژن ۷ php مشکل دارد، به خصوص با nusoap
    می توانید علت مشکل و راه حل ان را بگویید.

    ضمنا یک کد دیگر هم در اینترنت پیدا کرده ام با soap که ناقص است.لطف می کنید و به ان را کامل نمایید.

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

      سلام . دقیقا چه مشکلی داره و چه خطایی دریافت می کنید . در صورت بروز خطا اطلاع بدید روی هاست شما با نسخه ۷ تست بشه.

      موفق باشید.

      پاسخ
      1. اتصال کوتاه ۱۹ اردیبهشت ۱۳۹۷

        من مدیر فنی چتد سایت هستم
        در یکی از سایت ها از کد شما استفاده کردم و تقریبا همیشه درست عمل میکند.
        الان دقیقا می خواستم هماین کد را در سایت دیگری استفاده کنم . که مشکل زیر را میدهد، با وجود اینکه در سایت اول این مشکل وجود ندارد
        syntax error, unexpected ‘new’ (T_NEW) in /home/jahromtag/public_html/jtag_config/include/nusoap/nusoap.php on line 7381
        پس از برسی و پیشنهاد دیگر دوستانم ، ورژن php هر دو سایت را برسی کرده و مشاهده کردم که اسکریپت شما و nusoap همراه ان فقط در نسخه ۵٫۶ php کار می کند.

        پاسخ
      2. حسن شفیعی ۱۹ اردیبهشت ۱۳۹۷

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

        پاسخ
  25. soheil ۱۷ اردیبهشت ۱۳۹۷

    ممنون مهندس

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

      خواهش میکنم . موفق باشید.

      پاسخ
  26. امیر ۴ اردیبهشت ۱۳۹۷

    سلام. اولا تشکر به خاطر مطلب مفیدتون.
    داشتم روی کد کار میکردم که یکدفعه الان ساعت ۲:۳۰ بامداد نمیتونه به درگاه وصل بشه و کد ارورThere was a problem connecting to Bank رو نشون میده.
    این ارور صرفا مشکل قطعی موقت درگاه رو نشون میده یا مثلا ممکنه یکی از فیلد های ارسالی به درگاه یا مثلا بحث IP به مشکل خورده باشه؟

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

      سلام . خواهش میکنم.

      حتما مقدار کامل $result رو var_dump کنید تا دقیقا متوجه خطا و شماره اون بشید که بنابر داکیومنت به راحتی میتونید توضیحات دقیق خطا رو ببینید.

      موفق باشید.

      پاسخ
  27. حسین کلهری ۲۱ فروردین ۱۳۹۷

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

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

      سلام . ممنون.
      اگر از این افزونه https://fa.wordpress.org/plugins/mellat-woocommerce استفاده می کنید , هیچ مشکلی نداره و به خوبی کار میکنه و بهتره برای تست نهایی خودتون یکبار تراکنش رو انجام بدید و بررسی کنید .
      همچنین ببینید آیا این مشکل قبل بوده یا تازه پیش اومده .
      و اگر این مشکل تسویه حساب و واریز نهایی (settle) از اولین استفاده از درگاه بانک ملت خودتون پیش اومده پس باید با بانک در ارتباط باشید.

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

      موفق باشید.

      پاسخ
      1. حسین کلهری ۲۱ فروردین ۱۳۹۷

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

        پاسخ
  28. reza eslami ۲۱ فروردین ۱۳۹۷

    سلام آقای شفیعی ممنونم بابت آموزش های خوب و کاربردی
    راضیم ازت 😀

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

      سلام . مرسی خوشحالم مفید واقع شده .
      موفق باشید

      پاسخ
  29. محسن ۲۹ دی ۱۳۹۶

    سلام خسته نباشید
    من همین دو فایل رو گذاشتم تو سرور و اجرا کردم
    کاربر به درستی به بانک ارسال میشه و پرداخت میکنه و بر میگرده
    بعد از اینکه برگشت اطلاعات پرداخت هم به درستی به من پست میشه
    اما در خط ۲۸ (یعنی در زمان درخواست واریز وجه) با ارور ۲۱ مواجه میشم
    ممنون میشم راهنمایی کنید

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

      سلام .
      کد ارور ۲۱ با توجه به داکیومنت بانک ملت , “پذیرنده نامعتبر است” می باشد .

      پاسخ
      1. محمد ۹ اردیبهشت ۱۳۹۷

        سلام . من هم همین مشکل رو دارم . اطلاعات پذیرنده رو هم درست نوشتم . چطوره که در متد bpPayRequest ، پذیرنده رو قبول می کنه ولی در سایر متد ها نامعتبر می دونه ؟
        ممنون می شم جواب بدید .

        پاسخ
      2. حسن شفیعی ۹ اردیبهشت ۱۳۹۷

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

        پاسخ
      3. محمد ۱۰ اردیبهشت ۱۳۹۷

        آقا اشکال از کد شما نبود . با پشتیبانی « به پرداخت » تماس گرفتم ، نمی دونم چی کار کردند ولی درست شد . خیلی ممنون

        پاسخ
      4. حسن شفیعی ۱۰ اردیبهشت ۱۳۹۷

        موفق باشید.

        پاسخ
  30. ناشناس ۵ مهر ۱۳۹۶

    توی نمونه سورس یه چی دیگه گذاشتی ، توی توضیحات یه چی دیگه گذاشتی

    پاسخ
    1. حسن شفیعی ۵ مهر ۱۳۹۶

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

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