Compute amount based on remaining amount so that multiple promotion actions don't cause negative balance.