Personally I use an ordinary black Sharpie marker for minor dings that I don’t want shiny. If I had something really beat up I would use any quality spray paint to paint over the whole thing. Duplicolor auto engine paint is cheap, readily available, and in my use more abrasion resistant than the normal Krylon and Rustoleum spray paints. (They don’t make many gun type colors, but do make flat black and a matte gray “Cast coat iron”) If you want something both pretty and durable, I would look into Cerakote.
Birchwood casey black works very well if you use it the same day the ding occurs. degrease the ding , apply birchwood with a q-tip and the scratch will disappear, provided your weapon is black:)