Назначение модуля
Модуль Yandex.Деньги предназначен для проведения платежей через систему Яндекс.Деньги / Яндекс.Касса. Для работы должен быть заведён аккаунт для магазина в системе Яндекс.Деньги.
Настройка модуля
Установите модуль на сервер, обновите клиент, создайте экземпляр модуля. Создайте в редакторе конфигурации модуля новую конфигурацию, сделайте её активной. Можно воспользоваться шаблоном конфигурации. Конфигурация в общем виде такая:
Настройте магазин (на акаунте Yandex.Денег).
1) successURL и failURL указать на страницу списка платежей, но без параметра action:
http://ваш_адрес/webexecuter?mid=<mid>&module=yamoney
дело в том, что платёжная система сама по себе добавляет GET-параметр action, который мы здесь обработаем стандартным образом и сделаем редирект на список платежей в личном кабинете пользователя.
2) checkURL и paymentAvisoURL указать для старой версии протокола (меньше 3) http://ваш_адрес/yaexecuter?mid=<mid> и для новой версии протокола (версия 3): http://ваш_адрес/yaexecuter3?mid=<mid> . Для новой версии протокола везде указывать UTF-8 в настройках магазина. Поддерживается метод секретное слово + md5. (NVP/MD5)
Yandex.Деньги настаивают на https-варианте настройки сервлета yaexecuter. Безотносительно выбранному способу авторизации, ИС рекомендуется осуществлять контроль IP-адресов, с которых она получает запросы ЦПП (список IP можно получить при подключении).
3) Также введите имя, пароль и прочие параметры, которые должны быть выданы для аккаунта.
В версии протокола 3 поддерживаются динамическое задание адресов возврата shopSuccessURL и shopFailURL (если в настройках магазина включены динамические адреса возврата, то обязательно) указание в конфигурации модуля:
yamoney.shopSuccessURL=http://ваш_адрес/webexecuter?... yamoney.shopFailURL=http://ваш_адрес/webexecuter?...
Переключение из тестового в рабочий режим проводится через менеджеров системы Yandex.Деньги после проверки корректности работы.
Для тестирования платежей вы можете использовать программу Интернет.Кошелек или Web-версию Яндекс.Кошелек. Подробно о том, как проводить тестирование в демо-режиме (с точки зрения разработчика), можно почитать здесь: http://money.yandex.ru/doc.xml?id=459801#2 .
Скачать Интернет.Кошелек: http://money.yandex.ru/doc.xml?id=522773
Открыть демо-версию Яндекс.Кошелька: http://demomoney.yandex.ru/
Обращаем ваше внимание, что счет демо кошелька должен начинаться на 41003.
Пополнить счет демо-валютой: http://demomoney.yandex.ru/shop.xml?scid=666
Ценовую политику и проценты решает для себя организация с учётом процентов Яндекса и т.п.. Дополнительная настройка модуля может быть такой:
# Параметр paymentSumAmount показывает какую именно сумму заносить на счёт юзеру # order - заносится "сумма заказа, общая сумма" (значение параметра orderSumAmount) # shop - заносится "сумма на счёт магазина", то есть сумма заказанная клиентом за вычетом процентов (значение параметра shopSumAmount) paymentSumAmount=order # Процент комиссии, будет нарисован в Web в случае, когда зачисление будет не полной # суммы, а за вычетом процента (paymentSumAmount=shop) paymentSumPercent=5
Также могут настраиваться дополнительные типы оплаты (подключается в яндексе отдельно):
# paymentType.N.paymentType=<paymentType> # paymentType.N.title=заголовок # Первый способ будет выбран по умолчанию. paymentType.1.paymentType=PC paymentType.1.title=Оплата со счета Яндекс.Денег paymentType.2.paymentType=AC paymentType.2.title=Оплата с банковской карты paymentType.3.paymentType=MC paymentType.3.title=Платеж со счета мобильного телефона paymentType.4.paymentType=GP paymentType.4.title=Оплата наличными через кассы и терминалы paymentType.5.paymentType=WM paymentType.5.title=Оплата с кошелька в системе WebMoney paymentType.6.paymentType=SB paymentType.6.title=Оплата через Сбербанк Онлайн
Замечание про параметр yamoney.certificateFile и сертификат в формате pem: старая java (по крайней мере шестая) не принимает текстовый (PEM) формат сертификата. Наиболее простое, правильное и без костылей решение - сконвертировать сертификат из PEM в DER (бинарный):
openssl x509 -inform PEM -in payment_center_2014.pem -outform DER -out payment_center_2014.cer
Оплата из Личного кабинета
Если у абонента подключён экземпляр модуля, то он может произвести оплату услуг через Web-интерфейс (пункт меню Оплата через Yandex.Деньги). Здесь же клиент может просмотреть все проведённые им платежи:
При вводе суммы внизу страницы и нажатии кнопки Пополнить счёт клиент попадает на страницу системы Yandex.Деньги, где может выбрать удобный для себя способ оплаты.
Монитор платежей
В параметрах договора можно посмотреть все платежи и их параметры.
В параметрах модуля есть глобальный монитор платежей.