You have a system broken into components. Some custom built, some off-the-shelf. Any of them might need to send a message to a customer. How do you manage:<p>* Tracking (and auditing) who is receiving what messages.<p>* Let customers manage their preferred contact method.<p>* Manage templates and UI centrally (e.g. email templates).<p>* Track GDPR and consent.<p>* Block if consent has been revoked.<p>For example: a basic web app with a keycloak server to handle auth (registration/password reset etc.). Keycloak has a simple smtp integration and hooks to customise templates. But, naturally enough, the web app needs to send emails too.<p>Is there a more scaleable way to manage consistency and tracking than 'just do it manually'?