haggler comes from haggle ('to bargain, dispute over terms') + the agent suffix -er; haggle is a frequentative of the obsolete hag ('to chop, hack'), from Old Norse hǫggva ('to hew'). Morphologically, the ending is part of the etymology: the suffix is attached to the older base named in the history, producing a later English derivative. In present English, the noun sense is "a person who bargains persistently over price", so the historical development ends in a clearly identifiable modern dictionary use. The same base also appears in related forms such as haggle and haggling. Its semantic neighborhood includes bargainer, negotiator, higgler, and chafferer, which helps locate the modern sense without adding a separate etymological claim. The named historical forms include Old Norse hǫggva.