Merge branch 'master' into release
# Conflicts: # README.md # modules/gateways/callback/payanyway.php # modules/gateways/payanyway.php
This commit is contained in:
commit
52ccbe739c
56
README.md
56
README.md
@ -1,6 +1,5 @@
|
||||
# 🌟 Платёжный модуль PayAnyWay для WHMCS
|
||||
|
||||
|
||||

|
||||

|
||||

|
||||
@ -12,32 +11,33 @@ WHMCS предоставляет мощный функционал, которы
|
||||
> Данный модуль работает **только с валютой RUB (Российский рубль)**.
|
||||
> Перед активацией модуля убедитесь, что в WHMCS в качестве базовой валюты установлен RUB, либо у пользователя выбран счёт в RUB. Использование других валют не поддерживается.
|
||||
|
||||
> **📦 Версия модуля: 1.1.0**
|
||||
> **📦 Версия модуля: 1.0.0**
|
||||
|
||||
## 🏗️ Структура модуля
|
||||
|
||||
```
|
||||
└── modules
|
||||
└── gateways
|
||||
├── callback
|
||||
│ └── payanyway.php
|
||||
└── payanyway.php
|
||||
├── modules
|
||||
│ └── gateways
|
||||
│ ├── callback
|
||||
│ │ └── payanyway.php
|
||||
│ └── payanyway.php
|
||||
└── README.md
|
||||
```
|
||||
|
||||
## 🚀 Установка и настройка модуля
|
||||
|
||||
1. 📥 [Скачайте архив модуля](https://www.payanyway.ru/info/public/cms/whmcs.zip) и распакуйте его.
|
||||
1. 📥 [Скачайте архив модуля](https://git.pub.moneta.ru/CMS/WHMCS/releases) и распакуйте его.
|
||||
2. 📂 Скопируйте содержимое архива в корень сайта.
|
||||
3. ⚙️ В списке модулей оплаты WHMCS найдите **PayAnyWay** и активируйте его.
|
||||
4. ✏️ Заполните соответствующие поля в настройках способа оплаты:
|
||||
|
||||
| Поле | Значение |
|
||||
|------|----------|
|
||||
| **Show on Order Form** | ✅ Поставить галочку |
|
||||
| **Display Name** | `PayAnyWay` |
|
||||
| **Account Number** | Номер расширенного счета в PayAnyWay (Moneta) |
|
||||
| Поле | Значение |
|
||||
|-----------------------------------------|----------------------------------------------------------------|
|
||||
| **Show on Order Form** | ✅ Поставить галочку |
|
||||
| **Display Name** | `PayAnyWay` |
|
||||
| **Account Number** | Номер расширенного счета в PayAnyWay (Moneta) |
|
||||
| **Code of data integrity verification** | Код проверки целостности данных из настроек расширенного счета |
|
||||
| **Test Mode** | ❌ Галочку **не** ставить |
|
||||
| **Test Mode** | ❌ Галочку **не** ставить |
|
||||
|
||||
---
|
||||
|
||||
@ -47,20 +47,20 @@ WHMCS предоставляет мощный функционал, которы
|
||||
|
||||
2. ⚙️ Заполните настройки расширенного счета (раздел **«Мой счет» → «Управление счетами» → «Редактировать счет»**):
|
||||
|
||||
| Параметр | Значение |
|
||||
|----------|----------|
|
||||
| **Тестовый режим** | `Нет` |
|
||||
| **Check URL** | `https://your_site_name/modules/gateways/callback/payanyway.php` |
|
||||
| **Pay URL** | `https://your_site_name/modules/gateways/callback/payanyway.php` |
|
||||
| **HTTP method** | `GET` / `POST` |
|
||||
| **Проверить Check/Pay URL** | `Нет` |
|
||||
| **Можно переопределять настройки в URL** | `Да` |
|
||||
| **Подпись формы оплаты обязательна** | `Да` |
|
||||
| **Код проверки целостности данных** | `ваш_код` (произвольный набор символов) |
|
||||
| **Success URL** | Оставить пустым |
|
||||
| **Fail URL** | Оставить пустым |
|
||||
| **InProgress URL** | Оставить пустым |
|
||||
| **Return URL** | Оставить пустым |
|
||||
| Параметр | Значение |
|
||||
|------------------------------------------|------------------------------------------------------------------|
|
||||
| **Тестовый режим** | `Нет` |
|
||||
| **Check URL** | `https://your_site_name/modules/gateways/callback/payanyway.php` |
|
||||
| **Pay URL** | `https://your_site_name/modules/gateways/callback/payanyway.php` |
|
||||
| **HTTP method** | `GET` / `POST` |
|
||||
| **Проверить Check/Pay URL** | `Нет` |
|
||||
| **Можно переопределять настройки в URL** | `Да` |
|
||||
| **Подпись формы оплаты обязательна** | `Да` |
|
||||
| **Код проверки целостности данных** | `ваш_код` (произвольный набор символов) |
|
||||
| **Success URL** | Оставить пустым |
|
||||
| **Fail URL** | Оставить пустым |
|
||||
| **InProgress URL** | Оставить пустым |
|
||||
| **Return URL** | Оставить пустым |
|
||||
|
||||
> ⚠️ **Важно!** Для кириллического домена PayURL и CheckURL должны быть указаны в кодировке [Punycode](https://2ip.ru/punycode/).
|
||||
|
||||
|
||||
@ -16,26 +16,20 @@ require_once __DIR__ . '/../../../includes/invoicefunctions.php';
|
||||
require_once __DIR__ . '/../payanyway.php';
|
||||
|
||||
$requestData = ($_SERVER['REQUEST_METHOD'] === 'POST') ? $_POST : $_GET;
|
||||
$gatewayModuleName = 'payanyway';
|
||||
|
||||
try {
|
||||
$gatewayModuleName = 'payanyway';
|
||||
$gatewayParams = getGatewayVariables($gatewayModuleName);
|
||||
if (!$gatewayParams['type']) {
|
||||
payanyway_sendResponse('FAIL', 500); // Module Not Activated
|
||||
if (!$gatewayParams || !isset($gatewayParams['type'])) {
|
||||
payanyway_sendResponse('FAIL');
|
||||
}
|
||||
|
||||
$gatewayName = payanyway_getWhmcsVariableOrFail($gatewayParams, 'name');
|
||||
$integrityCode = payanyway_getPayAnyWayIntegrityCodeOrFail($gatewayParams);
|
||||
|
||||
$callbackData = payanyway_getCallbackData($requestData);
|
||||
|
||||
('CHECK' === $callbackData['MNT_COMMAND'])
|
||||
? payanyway_handleCheckCallback($callbackData, $gatewayName, $integrityCode)
|
||||
: payanyway_handlePayCallback($callbackData, $gatewayName, $integrityCode, $gatewayModuleName);
|
||||
} catch (\PayAnyWayException $e) {
|
||||
logTransaction($gatewayModuleName, $requestData, 'Error: ' . $e->getMessage());
|
||||
payanyway_sendResponse('FAIL', 500);
|
||||
(isset($callbackData['MNT_COMMAND'])) && ('CHECK' === $callbackData['MNT_COMMAND'])
|
||||
? payanyway_handleCheckCallback($callbackData, $gatewayParams)
|
||||
: payanyway_handlePayCallback($callbackData, $gatewayParams, $gatewayModuleName);
|
||||
} catch (\Exception $e) {
|
||||
logTransaction($gatewayModuleName, $requestData, 'Error: ' . $e->getMessage());
|
||||
payanyway_sendResponse('FAIL', 500);
|
||||
payanyway_sendResponse('FAIL');
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user