опечатка в примере с сигналом
Payment.is_success() был всегда False