You have a 10% after each battle of your pokemon picking up stuff. The higher the level, the more items your pokemon can pick up. At certain levels your pokemon will stop picking up common items like repels and start finding rarer items like rare candies. At Lv100 your pokemon can find awesome items like leftovers. At level 41 and up you can find the lucky egg, but there is a 1% chance of the item picked up being the egg. So it might take some time, but with patience you can make enough money to buy anything.