Depending on your colour I'd e careful what you buy as I got what was supposedly a touch up pen for my fusion white Kia off eBay and it was nothing like the colour on the car. My dealer told me that fusion white was a three stage paint, whatever that means. By all means get one of eBay as my Kia dealer charged £15 two years ago, no doubt more expensive now, but make sure you buy one which appears to be a good quality paint even if a little more expensive. The other option is a local body shop, go with the paint code and many will make you up a small pot of paint far cheaper than Kia charge.
I have bought genuine manufacturer paint touch ups from ebay (usually sold by official dealers) and they still do not match the paint LOL (for the reasons already mentioned) but I suppose they stop the stone chips etc from rusting too much.