Инструменты пользователя

Инструменты сайта


setup

Это старая версия документа.


Настройка

1. Первые шаги

Привет!
Вы немного знаете PHP и хотите сами подключить свой сайт к приему платежей?
Для начала прочтите пример здесь для сайта DEMO.ru

Вы скопировали себе код из примера, а автоматического зачисления не происходит?
Отключите в Личном Кабинете функцию API (снимите отметку с «Настройки магазина» - «Уведомлять по API«)
Попробуйте сделать платеж на 5 WMR или Яндексов, а еще лучше - воспользуйтесь функцией «Тестовый платеж» в Личном Кабинете.
Не проходит?

2. Платежные ссылки

Для начала проверьте платежную ссылку (документация), она точно ведет на Ваш сайт, а не demo сайт?
Она должна выглядеть так http://secure.onpay.ru/pay/mysait где mysait - это ваш логин в Сервисе Onpay.
Как? Вы еще не зарегистрировались? Тогда Вам сюда.
И не забудьте попросить модератора, чтобы он активировал Ваш аккаунт. Как узнать, нужно ли это?
Очень просто — если Ваш аккаунт еще не активирован, то при входе в Личном Кабинете Вас преследует сообщение «Ваш аккаунт не переведен в боевой режим».

3. Почтовые уведомления о платежах

Ура! Платеж пришел к Вам в Личный Кабинет!
Но на e-mail Вам ничего не пришло :( - проверьте, а какой email Вы указали в поле «Личные настройки» - «Email для уведомлений». На этот адрес, Вам будут приходить уведомления, о каждом платеже, полученном Вами.
В уведомлениях указывается сколько и за что Вам заплатили.

4. Автоматизация приема платежей - API

Теперь можно попробовать провести платеж в автоматическом режиме.
Для включения API, зайдите в меню «Настройки магазина». Поставьте отметку в поле «Уведомлять по API».
Введите в «URL API« - адрес Вашего скрипта отвечающего за обработку полученных платежей. Например, http://demo.ru/api.php
Укажите «Пароль для API IN» - это секретный пароль, учавствующий в формировании подписи в каждом платеже (чтобы Вы были уверенны, что платеж пришел через Onpay).

5. Простые уведомления о приеме

Платеж не проходит — пишет «Получатель платежа не разрешил проведение платежа»!
Не пугайтесь, получатель - это Вы.
Данное сообщение будет появляться, если у Вас включено использование API и неверное настроен скрипт, который отвечает на запросы сервера Onpay.

6. Протокол взаимодействия между серверами - API

В случае возникновения проблем с доставкой платежа на Ваш сервер, можно посмотреть подробный протокол взаимодействия, который пишется для каждого платежа.
Посмотреть логи общения между нашим и Вашим сервером, можно в меню «Настройки магазина» - «Логи». Что мы там должны увидеть?
Сервис Onpay делает два запроса к Вашему скрипту - check (проверяем, разрешаете ли Вы прием платежа с указанными параметрами, например проверяется цена и номер заказа) и pay (когда платеж уже зачислен на Ваш счет).

Первый запрос «check» - вот такой:
To merchant:

String for MD5 to Merchant: "check;99;70.0;RUR;MERCHANT_KEY_HERE" 
POST http://demo.ru:80/api.php?pay_for=99 &order_currency=RUR &order_amount=70.0 &type=check &amount=70.0 &md5=A7AA6672VBDE2AB748F96001873383A2 
HTTP_code:200 

From merchant:

<?xml version="1.0" encoding="UTF-8"?> 
<result> 
<code>0</code> 
<pay_for>99</pay_for> 
<comment>OK</comment> 
<md5>6B1B4A02E321E40A2F6562E9EF0E4FF4</md5> 
</result> 

String for MD5 from Merchant: «check;99;70.0;RUR;0;MERCHANT_KEY_HERE»
Expected MD5 from Merchant: 6B1B4A02E321E40A2F6562E9EF0E4FF4

Второй запрос «pay»:
To merchant:

String for MD5 to Merchant: "pay;716000201;66336;480.0;RUR;MERCHANT_KEY_HERE" 
GET http://demo.ru:80/api.php?pay_for=99 &user_email= &paymentDateTime=2009-10-15T18%3a20%3a12Z &order_currency=RUR &order_amount=70.0 &balance_currency=OSP &type=pay &balance_amount=70.0 &amount=70.0 &onpay_id=66335 &note= &md5=AZ93894E03B2B3EC8C6A35409ABBB3DC &exchange_rate=1.0 
HTTP_code:200 

From merchant:

<?xml version="1.0" encoding="UTF-8"?> 
<result> 
<code>0</code> 
<comment>OK</comment> 
<onpay_id>66335</onpay_id> 
<pay_for>99</pay_for> 
<order_id>1402</order_id> 
<md5>3342D8Z69E2E6E8927579A01C4933EDA</md5> 
</result> 

String for MD5 from Merchant: «pay;99;66335;1402;70.0;RUR;0;MERCHANT_KEY_HERE»
Expected MD5 from Merchant: 3342D8Z69E2E6E8927579A01C4933EDA

Все вроде правильно, но не проходит?
Проверьте форматы данных - обратите внимание на разделитель в суммах платежей - это всегда точка, например «70.5».

7. Если платеж не доходит до скрипта

Но в Личном Кабинете система пишет «Критическая ошибка» или «Временная ошибка»! Что делать?!
Это означит что второй запрос - «pay» не проходит, то есть Ваш сайт не подтвердил, что его уведомили о платеже, или вообще ничего не ответил. Чаще всего, это бывает связано с проблемами хостинга (даже на хороших хостингах, иногда бывают проблемы).
Чтобы точно понять, что происходит - снова смотрим логи в меню «Настройки магазина» - «Логи».

Да нет у меня времени с этим ковыряться!
Тогда Вам сюда - http://onpaysolutions.ru/developers/

setup.1411722002.txt.gz · Последние изменения: 2014/09/26 09:00 — admin