[mspQiwi] Новая версия оплаты заказов MS2 через Qiwi

Вчера настраивал оплату для modstore.pro и modhost.pro через Qiwi и выяснилось, что компонент для этого дела у нас в магазине немного устарел.

В частности, он не был в курсе, что Qiwi теперь позволяет работать с несколькими магазинами из одной учётной записи, для чего использует отдельные логины и ключи для API.

Для старых магазинов эти ключи совпадают с учётными записями, поэтому ничего не ломается, а вот при подключении новых — беда. Дополнение, фактически, стало нерабочим.

Автору дополнения дорабатывать его некогда, так что он передал мне его на дальнейшую поддержку и развитие. Соотвественно, я его переписал и уже выложил новую версию с магазин.

На данный момент компонент поддерживает только протокол SOAP, который хоть и помечен устаревшим, но работает без нареканий.
Если честно, внутри есть и поддержка REST, которую я написал с нуля, но по этому протоколу на сервер не приходят уведомления. То есть, они должны отправляться и настройки у Qiwi для этого есть, но не приходят и всё тут. Сначала думал, что это у меня руки кривые, но нет, проблема есть и у других.

Поэтому, хоть поддержка REST в наличии, работаем через SOAP. Все настройки делаются из соответствующего раздела в личном кабинете.

Первым делом вам нужно этот протокол активировать, а затем заполнить 3 системных параметра в MODX:
  1. ms2_mspqiwi_shopId — ID магазина в системе Qiwi. От этого номера покупателю будет выставляться счёт на сайте
  2. ms2_mspqiwi_apiId — ID доступа к системе через API.
  3. ms2_mspqiwi_apiKey — Ключ доступа к системе через API.

Первый параметр вам дают при регистрации, вторые два нужно сгенерировать в личном кабинете. Причем, ключ API после генерации посмотреть нельзя, его можно только удалить и сгенерировать заново.

Затем нужно включить уведомления, указав для них адрес:
http://вашсайт.ру/assets/components/minishop2/payment/qiwi.php?action=result


После этого обязательно нужно сменить пароль оповещения и во всплывающем окне выбрать API ID (обычно он там один).
Сохранить и проверить, чтобы было как на картинке.

Такой сброс пароля нужно делать после каждой генерации нового ключа.

И всё, вы уже можете принимать платежи через Qiwi! Обратите внимание, что в отличии от предыдущей версии, покупатель сам указывает свой логин в Qiwi при оплате счёта. На мой взгляд, так гораздо гибче и удобнее.

Настройка в miniShop2 обычная — нужно просто включить метод оплаты и добавить его методам доставки.

Если при оплате будут какие-то проблемы, то они залогируются в системный журнал. Если нужны подробности ошибок, то переключите системную настройку log_level на уровень 4 — INFO.

У Qiwi нет тестового сервера, но вы можете посылать себе запросы из личного кабинета, с указанием id заказа, и читать что про них думает компонент в журнале MODX.

Компонент уже можно купить или обновить у нас в магазине. Если будут вопросы — обращайтесь там же в поддержку, разберёмся.
Василий Наумкин
15 ноября 2015, 11:58
modx.pro
2 344
+5

Комментарии: 2

Дмитрий Аюпов
Дмитрий Аюпов
16 ноября 2015, 07:15
0
Там еще проблема была, после оплаты не менялся статус товара на «оплачен», оставался «новый».
    Василий Наумкин
    16 ноября 2015, 07:23
    0
    Это я и называю «Дополнение, фактически, стало нерабочим»

    Из-за путаницы с логинами-паролями, уведомление об оплате не проходило.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2