OK, I’ve made some progress, so I can I answer my question. It is indeed possible to use shared module with NotificationServiceExtension, probably as well with any other service defined as additional iOS target. Additionally to all multithreading issues, you have to keep in mind, that an extension is running in its own process. Luckily for me, I didn’t have to deal with sharing of data or state with the main app, what even can’t be possible, because app may not even run.