Долго думал, почему не работает обработчик платежа. Думал, что PM обратно вообще ничего не отправляет.
Решил проверить. Поймал все $_POST и забил в БД. Всё приходит.
Сравнил $_POST["V2_HASH"] и посчитанный на сервере - они разные. В чём может быть проблема?
define('ALTERNATE_PHRASE_HASH', '%фраза%');
$string=
$_POST['PAYMENT_ID'].':'.$_POST['PAYEE_ACCOUNT'].':'.
$_POST['PAYMENT_AMOUNT'].':'.$_POST['PAYMENT_UNITS'].':'.
$_POST['PAYMENT_BATCH_NUM'].':'.
$_POST['PAYER_ACCOUNT'].':'.ALTERNATE_PHRASE_HASH.':'.
$_POST['TIMESTAMPGMT'];
$hash=strtoupper(md5($string));
Оплачиваю со своего кошелька на свой, но по сути, это не должно влиять.