If calling exim is the last thing the service does, systemd will kill off exim's background delivery process and the message will be in the queue waiting until the next queue run. This has bit me when migrating a script from a cronjob to a systemd timer.
If you run in exim debug mode, the last lines you see might be something like: finding IP address for example.com calling host_find_byname -- Ian Kelling | Senior Systems Administrator, Free Software Foundation GPG Key: B125 F60B 7B28 7FF6 A2B7 DF8F 170A F0E2 9542 95DF https://fsf.org | https://gnu.org -- ## List details at https://lists.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://wiki.exim.org/
