cimonlebedev
@cimonlebedev

Как настроить в woocommerce payanyway рекуррентный платеж?

https://www.payanyway.ru/info/w/ru/public/w/partne... - описание подключения однако ни слова и рекуррентном платеже.
Кто нибудь настраивал такое? Можете подсказать как настроить?
https://www.payanyway.ru/info/w/ru/public/merchant...

1. Создать счёт при помощи Merchant API (метод InvoiceRequest)на оплату способом “банковские карты” с атрибутомPAYMENTTOKEN в значении 'request' (строка).
2. Перенаправить покупателя на форму MONETA.Assistant спараметром operationId для оплаты счёта:https://www.payanyway.ru/assistant.htm?operationId... operationId получено на предыдущем шаге.На платежной форме для операций с установленнымPAYMENTTOKEN=request будет отображена дополнительнаягалочка "Запомнить карту", требующая явного согласияпользователя. Если пользователь согласия не даст, тооперация будет обработана как обычный платеж и параметрPAYMENTTOKEN будет записан как refused.

https://www.payanyway.ru/info/w/ru/public/merchant... - пункт 5 собственно то что надо сделать
и вроде правильно атрибут прописал ..
// wc-payanyway.php - file

if (count($inventory)) {
$kassa_inventory = json_encode($inventory);
    // сформировать xml ответ
    header("Content-type: application/xml");
    $resultCode = 200;
    $signature = md5($resultCode . $_REQUEST['MNT_ID'] . $_REQUEST['MNT_TRANSACTION_ID'] . $this->MNT_DATAINTEGRITY_CODE);
    $result = '<?xml version="1.0" encoding="UTF-8" ?>';
    $result .= '<MNT_RESPONSE>';
    $result .= '<MNT_ID>' . $_REQUEST['MNT_ID'] . '</MNT_ID>';
    $result .= '<MNT_TRANSACTION_ID>' . $_REQUEST['MNT_TRANSACTION_ID'] . '</MNT_TRANSACTION_ID>';
    $result .= '<MNT_RESULT_CODE>' . $resultCode . '</MNT_RESULT_CODE>';
    $result .= '<MNT_SIGNATURE>' . $signature . '</MNT_SIGNATURE>';

    if ($kassa_inventory || $kassa_customer || $kassa_delivery) {
        $result .= '<MNT_ATTRIBUTES>';
    }

    if ($kassa_inventory) {
        $result .= '<ATTRIBUTE>';
        $result .= '<KEY>INVENTORY</KEY>';
        $result .= '<VALUE>' . $kassa_inventory . '</VALUE>';
        $result .= '</ATTRIBUTE>';
    }

    /** */
    // $kassa_recurring = 'request'; // Значение для PAYMENTTOKEN
    // if ($kassa_recurring) {
    //     $result .= '<ATTRIBUTE>';
    //     $result .= '<KEY>PAYMENTTOKEN</KEY>';
    //     $result .= '<VALUE>' . $kassa_recurring . '</VALUE>';
    //     $result .= '</ATTRIBUTE>';
    // }
    /** */

    if ($kassa_customer) {
        $result .= '<ATTRIBUTE>';
        $result .= '<KEY>CUSTOMER</KEY>';
        $result .= '<VALUE>' . $kassa_customer . '</VALUE>';
        $result .= '</ATTRIBUTE>';
    }

    if ($kassa_delivery) {
        $result .= '<ATTRIBUTE>';
        $result .= '<KEY>DELIVERY</KEY>';
        $result .= '<VALUE>' . $kassa_delivery . '</VALUE>';
        $result .= '</ATTRIBUTE>';
    }

    if ($kassa_inventory || $kassa_customer || $kassa_delivery) {
        $result .= '</MNT_ATTRIBUTES>';
    }

    $result .= '</MNT_RESPONSE>';

    echo $result;
}
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dmoskvin77
По поводу настройки рекуррентов есть отдельная документация: https://www.payanyway.ru/info/p/ru/public/merchant...

Встроить в модуль можно, но под вашу ответственность, т.к. возникнет необходимость хранить в модуле логин и пароль для аккаунта merchant API, а зная уязвимости WP это не безопасно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы