Я подробно освещаю эту тему в своем недавнем сообщении в блоге: Как автоматизировать Moneybookers (Skrill) с помощью status_url (IPN) . Вот пример кода для PHP и C # и рисунки, иллюстрирующие пункты:
- Регистрация на тестовом счете Moneybookers
- Создать «секретное слово»
- Создайте свою собственную форму оплаты (с вашим логотипом на странице оформления заказа Moneybookers)
- Проверка заказа Moneybookers
Я не буду здесь описывать каждый шаг, потому что если бы я это сделал, мой ответ занял бы несколько страниц. Однако я расскажу о четвертой теме (проверка порядка Moneybookers), потому что ответ, находящийся в настоящее время на этой странице, полон проблем (инъекции SQL и т. Д.). Если вам нужны подробные инструкции для каждого шага, тогда прочитайте мою статью .
Простая форма оплаты на вашем сайте
Я более подробно остановлюсь на этом в статье , но вот простая форма оплаты. Замените жирным шрифтом правильные цены, название приложения и адрес электронной почты Moneybookers:
<form action="https://www.moneybookers.com/app/payment.pl" method="post">
<input type="hidden" name="pay_to_email" value="<strong>merchant-email@example.com</strong>"/>
<input type="hidden" name="status_url" value="<strong>http://example.com/verify.php</strong>"/>
<input type="hidden" name="language" value="EN"/>
<input type="hidden" name="amount" value="<strong>Total amount (e.g. 39.60)</strong>"/>
<input type="hidden" name="currency" value="<strong>Currency code (e.g. USD)</strong>"/>
<input type="hidden" name="detail1_description" value="<strong>YourApp</strong>"/>
<input type="hidden" name="detail1_text" value="<strong>License</strong>"/>
<input type="submit" value="Pay!"/>
</form>
Проверка заказа Moneybookers
После того, как пользователь заплатил за ваше программное обеспечение, электронную книгу или другой цифровой контент, вы захотите автоматически проверить заказ и отправить то, что он заказал, на свой адрес электронной почты. В этом примере я упоминаю , создающий ключ продукта с использованием LimeLM , но вы действительно можете сделать что угодно.
В приведенном выше примере формы вы указываете местоположение скрипта, который будет проверять заказы Moneybookers:
<input type="hidden" name="status_url" value="<strong>http://example.com/verify.php</strong>"/>
Соответствующая часть сценария такова:
// Validate the Moneybookers signature
$concatFields = $_POST['merchant_id']
.$_POST['transaction_id']
.strtoupper(md5('<strong>Paste your secret word here</strong>'))
.$_POST['mb_amount']
.$_POST['mb_currency']
.$_POST['status'];
$MBEmail = '<strong>merchant-email@example.com</strong>';
// Ensure the signature is valid, the status code == 2,
// and that the money is going to you
if (strtoupper(md5($concatFields)) == $_POST['md5sig']
&& $_POST['status'] == 2
&& $_POST['pay_to_email'] == $MBEmail)
{
// Valid transaction.
//TODO: <strong><a href="http://wyday.com/limelm/help/api/limelm.pkey.generate/" rel="noreferrer">generate the product keys</a></strong> and
// send them to your customer.
}
else
{
// Invalid transaction. Bail out
exit;
}
Если вы не знаете, как установить свое секретное слово в Moneybookers, я объясню, как это сделать, в " Как автоматизировать Moneybookers (Skrill) с помощью status_url (IPN) "статья.
Пример полной оплаты
Если вы не заинтересованы в написании этого кода самостоятельно, у нас есть полностью построенная форма оплаты для наших LimeLM клиентов. Он написан для PHP, C # и VB.NET и бесплатен для всех наших клиентов (даже для наших бесплатных пользователей). Таким образом, вы можете скачать его, интегрировать на свой сайт и использовать, не платя нам ни цента.
Вот как выглядит страница выбора платежа :
![enter image description here](https://i.stack.imgur.com/tt8tk.png)