Вы убедились, что правильный адрес отображается в деталях истории IPN?Иногда люди используют кнопку, которая использует notify_url, чтобы переопределить настройки учетной записи PayPal, и тогда IPN работают, но они идут в другое место, чем ожидалось.Поэтому сначала проверьте это.
Если IPN действительно соответствует ожидаемому URL-адресу и возвращает 200 OK, это означает, что он успешно принимает и завершает сценарий.Если вы не видите ожидаемого результата в вашей базе данных, то у вас должна быть какая-то логическая проблема с вашим кодом, которую необходимо устранить.Вам нужно встроить некоторые трекеры, чтобы регистрировать файлы или отправлять себе электронные письма, как это делает каждый шаг вашего скрипта, чтобы увидеть, действительно ли эта часть кода получает удар, как вы думаете.
Я собрал эту статьюза как проверить PayPal IPN некоторое время назад, что оказалось полезным для многих людей.Если вы выполните действия, описанные там, вы сможете отследить проблему.