# شبیهساز بانک ملت
استفاده از درگاه آنلاین بانک ملت نیازمند دریافت نماد اعتماد الکترونیک است و همچنین API برای تست ندارد، این پروژه برای شبیهسازی پرداخت آنلاین بانک ملت است.
متدهای موجود شامل :
1- bpPayRequest
2- bpVerifyRequest
3- bpSettleRequest
4- bpInquiryRequest
5- bpReversalRequest
وابستگی ها
توجه! لازم است که SOAP نصب باشد.
[#راهنمای نصب SOAP](#نصب-soap-برای-php)
- [x] PHP ^7.3
- [x] PHP soap
## نصب
نصب با استفاده از کامپوزر. برای این شبیه ساز از فریمورک [Lumen](https://lumen.laravel.com/docs/8.x) استفاده شده.
```bash
git clone https://github.com/miladshakerdn/banktest.git
cd banktest
#Install Lumen
composer install
```
فایل `.env` را باز کرده و اطلاعات دیتابیس را وارد کنید.
سپس با دستور زیر دیتابیس و دادههای اولیه را ایجاد کنید:
```bash
#open .env and set your db information
#migrate database
php artisan migrate
php artisan db:seed
```
## نحوه استفاده
مطابق مستندات ارائه شده توسط بانک ملت عمل کرده و مانند درگاه بانک ملت عمل ميکند.
اطلاعات اولیه پذیرنده شامل:
| Name | Value |
| -------------- | ------------------------------------------------ |
| Terminal ID | 123625346124 |
| Username | admin |
| Password | admin |
| WSDL URL | http://your-server:PORT/mellat/serve?wsdl |
| Gateway URL | http://your-server:PORT/mellat/gateway |
| --- | --- |
| Or WSDL URL | http://your-localhost/bankTest/mellat/serve?wsdl |
| Or Gateway URL | http://your-localhost/bankTest/gateway |
برای متوجه شدن لینک دقیق میتوانید صفحه اصلی پروژه را در مرورگر باز کرده تا از آن مطلع شوید.
```bash
# If use => php -S your-server:PORT -t public
your-server:PORT
# OR
your-localhost/bankTest/
```
![Help WSDL URL](public/assets/img/1.png)
و حالا میتوانید استفاده کنید در پروژه خودتون.
## نصب SOAP برای PHP
[php.net SOAP](https://www.php.net/manual/en/soap.installation.php)
#### برای Linux (Ubuntu)
Apache
```
sudo apt-get install php-soap
# For example, a specific version of php (7.4)
sudo apt-get install php7.4-soap
# Then
sudo systemctl restart apache2
```
#### برای ویندوز
1. Find `extension=php_soap.dll` or `extension=soap` in `php.ini` and remove the commenting semicolon at the beginning of the line. Eventually check for `soap.ini` under the `conf.d` directory.
2. Restart your server.
[در stackoverflow](https://stackoverflow.com/a/22397686)