For DIY charms, people use shrinky dink paper, some are printable, others you have to draw directly onto the plastic itself. Then you throw them in the oven and they'll shrink into charm size.
For more professional pieces, it's best to find a company that can produce them for you. Zap Creatives (based in the UK) offers a wide variety of plastics for example. The cheapest companies though are usually found through AliExpress/Alibaba I think.