Technically, redemptions can show up as chat messages, but only if the redemption includes a text entry field: they should show up as a normal PRIVMSG entry, but with a custom-reward-id tag.
Personally, I like to check both EventSub and PRIVMSG to get the event as fast as possible, with a cache of handled IDs to prevent duplicate detections. Do note, however, that the PRIVMSG details will not include the redeem’s name or description, only it’s generated GUID.