It's not a requirement but I highly recommend to people to buy some "Lucky Eggs (2X XP for 30 minutes) and extra "Incense" (attract more Pokemon for 30 minutes) and use them together in the early game.
The reason why is that you get 2X the experience for discovering a new Pokemon which you will do a lot of early on. By doubling that further you save a ton of time in getting to a reasonably high level and collecting a lot of Pokemon quickly.
I'd also buy some "Egg Incubators". You get 1 for free and it has infinite uses. The ones you can buy get 3 uses before they "break". My advice is to use the infinite one on all eggs that will hatch after 2km of walking and use the breakable ones on 5km and 10km eggs. You get more use out of them this way. And eggs can hatch new Pokemon which benefit from the bonus described above.
For a few dollars you'll save many, many hours which to me at least makes the game more enjoyable.