NGO is an acronym for "non-governmental organization", and, by common usage, excludes "for-profit" businesses. It is somewhat broader than the term "non-profit corporation" in the United States usage. Political parties are only one form of NGO. Most NGOs are not political parties. The list of considered but discarded reasons given in the question seems, to me, snarky, not a serious or accurate attempt to distinguish an NGO from a political party. It doesn't deserve point-by-point engagement.