Решено Данные для проверки платежа

Статус
В этой теме нельзя размещать новые ответы.
Версия XenForo
2.1.7

Derian

Проверенные
Сообщения
15
Реакции
1
Баллы
700
Привет!
Как получить request key в setup call back?
Пытаюсь получить используя фильтр из своих параметров:
$request->filter('custom', 'str');
Но ничего не выходит
Можете подсказать?
 
А сам запрос то может скинете?
Да, забыл
Не много наговнокодил)
Пытался вытащить глобально, но тоже не помогло
Код:
        $state = new CallbackState();
        $state->transactionId = $params['formData']['order-id'];
        $state->subscriberId = $request->filter('subscr_id', 'str');
        $state->requestKey = $request->filter('custom', 'str');

        $state->signature = $_POST['sign'];
        $state->cost = $_POST['amount'];
        $state->ip = $request->getIp();

        $state->_POST = $_POST;

        return $state;

Код:
  protected function getPaymentParams(PurchaseRequest $purchaseRequest, Purchase $purchase)
    {
        $paymentProfile = $purchase->paymentProfile;
        $options = $paymentProfile->options;
        $purchaser = $purchase->purchaser;

        $params = [
            'paymentProfile'    =>    $paymentProfile,
            'purchase'            =>    $purchase,
            'formData'            =>    [
                'order-id' => $purchaseRequest->purchase_request_id,
                'MrchLogin'            =>    $options['merchant_id'],
                'OutSum'            =>    $purchase->cost,
                'InvDesc'            =>    $purchase->purchasableTitle . ', ' . $boardHost['host'],
                'Encoding'            =>    'utf-8',
                'custom' => $purchaseRequest->request_key,
                'Email'                =>    $purchaser->email ?? '',
                'shp_rk'            =>    $purchaseRequest->request_key
            ]
        ];

        $params['formData']['SignatureValue'] = md5(''.$options ['merchant_id'].':'.$purchase->cost.':'.$options['secretkey'].':'.$purchaseRequest->purchase_request_id.'');

        return $params;
    }

Уже раз 50 переписывал код, но ничего не помогло
Даже смотрел в чужой код и что-то раз помогло, но не полностью
Мне просто нужно получить данные и всё
А оно просто их не видит (Не верно видимо указываю что получать)
В журнал платежей приходит об оплате но без данных
Без имени пользователя,номера транзакции и subscriber'a, ключа покупки
 
Последнее редактирование:
Да не функция, и не код. Сам "http" запрос
Только не говорите мне что это из-за запроса...
Код:
        $viewParams = $this->getPaymentParams($purchaseRequest, $purchase);       
        $paymentProfile = $purchase->paymentProfile;

        $o = $purchaseRequest->purchase_request_id;

        $payment = [
            'm'  => $paymentProfile->options['merchant_id'],
            'oa' => $purchase->cost,
            's'  => md5($paymentProfile->options['merchant_id'].':'.$purchase->cost.':'.$paymentProfile->options['secretkey'].':'.$o),
            'o'  => $o
        ];

        $endpointUrl = $this->getApiEndpoint();
        $endpointUrl .= '?' . http_build_query($payment);

        return $controller->redirect($endpointUrl, '');

Вообщем, я дурак, забыл про отправку кастомных полей...
Спасибо Matew про упоминание http запросов
 
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу