Update payment status only on valid transition