On iPhone, Apple's design limits this to two legitimate options, and it is worth understanding why before you spend money.
Option 1 — Apple's own controls (free, no message content). Family Sharing + Screen Time gives you Communication Limits: you choose who your child can text and call during downtime and screen time, you approve new contacts, and you see usage. You do not see the words. If the concern is a stranger or a bully, Communication Limits is more effective than reading everything, because it stops the conversation rather than documenting it afterwards.
Option 2 — Messages in iCloud (message content, requires the Apple Account). If Messages is enabled in iCloud and the phone backs up, the messages are in that account. With the account credentials — the account you created for your child, which you administer — you can restore the backup to a spare iPhone and read the threads there. This is the only way to see actual iMessage content on iOS, and it is what every "iPhone text monitoring" product is quietly doing behind its interface.
What is not real: live reading of iMessages on a non-jailbroken iPhone. Apple exposes no API for message content, so an app claiming to show iMessage text in a dashboard without the iCloud account is either showing you SMS only, or it is a scam. Jailbreaking the child's phone to get around this breaks its security and stops working at the next iOS update.
The pragmatic household setup: keep the iPhone on Apple's controls, and put the Android/Windows/Mac devices under one dashboard — Ultimate Phone Spy covers SMS, call logs, location, web history and app usage on those platforms (sms tracker, system requirements). Mixed-device families get complete coverage that way without fighting iOS.
And say it out loud to your child. Supervision that is disclosed is parenting; supervision that is discovered is a breach of trust, and the second one is what kids remember.