An iMessage app is really an app extension that lives inside iMessage. It's kind of a weird type of extension because it behaves like a hybrid between an extension and an application. Extensions typically contain a single view controller and, more importantly, they can't be distributed through the iOS ecosystem without containing an application.
This rule does not apply to iMessage apps. An iMessage app can be distributed directly through the iMessage app store without a containing application. This means that you can build an iMessage app, such as a sticker pack, and distribute it without associating any other app to it. Also, you can add in-app purchases to an iMessage app. In-app purchases are normally unavailable to extensions, which makes iMessage apps behave more like an app than an extension.
Apart from distribution and in-app purchases...