Answer the question
In order to leave comments, you need to log in
Why don't I receive a notification when accepting a payment via Yandex.Money?
Hey! I really need help!
You need to receive notifications about payments and their information by mail. Actually I set everything up:
1. Form code
<iframe frameborder="0" allowtransparency="true" scrolling="no" src="https://money.yandex.ru/embed/shop.xml?account=41001778973611&quickpay=shop&payment-type-choice=on&mobile-payment-type-choice=on&writer=seller&targets=%D1%82%D0%B5%D1%81%D1%82&default-sum=1&button-text=01&comment=on&hint=&fio=on&mail=on&phone=on&address=on&successURL=http%3A%2F%2Fya.ru" width="450" height="253"></iframe>
$secret_key = '******************'; // секретное слово, которое мы получили в предыдущем шаге.
// возможно некоторые из нижеперечисленных параметров вам пригодятся
// $_POST['operation_id'] - номер операция
// $_POST['amount'] - количество денег, которые поступят на счет получателя
// $_POST['withdraw_amount'] - количество денег, которые будут списаны со счета покупателя
// $_POST['datetime'] - тут понятно, дата и время оплаты
// $_POST['sender'] - если оплата производится через Яндекс Деньги, то этот параметр содержит номер кошелька покупателя
// $_POST['label'] - лейбл, который мы указывали в форме оплаты
// $_POST['email'] - email покупателя (доступен только при использовании https://)
$sha1 = sha1( $_POST['notification_type'] . '&'. $_POST['operation_id']. '&' . $_POST['amount'] . '&643&' . $_POST['datetime'] . '&'. $_POST['sender'] . '&' . $_POST['codepro'] . '&' . $secret_key. '&' . $_POST['label'] );
if ($sha1 != $_POST['sha1_hash'] ) {
// тут содержится код на случай, если верификация не пройдена
exit();
}
// тут код на случай, если проверка прошла успешно
$f=fopen('notify.txt','w+');
foreach($_POST as $k=>$row)$dump .="$k => $row\n";
fwrite($f,$dump);
fclose($f);
exit();
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question