Invoice reminders not sent

I’m having a lot of difficulty getting reminder emails to work. I can see others have posted similar problems in the past but no solutions. I’ve followed the setup guidance and test emails work OK but when the time comes to send a scheduled message of any sort, nothing (apparently) happens.

So, here’s what I’ve done.

  1. In Settings > Email Settings I’ve set up an email provider, with a BCC to myself. Clicking SEND TEST EMAIL results in a successfull test, and the headers in the received message show successful DKIM, SPF, DMARC etc. and a low spam score. Generally speaking, when I manually click “Send Email” anywhere in InvoiceNinja it works.

  2. In Settings > Templates & Reminders I have set up templates for Invoice, Statement, First Reminder, Second Reminder, Third Reminder and Endless Reminders. Each of those has the Send Email option selected, with timings set for 30 days, 60 days, 90 days and so on.

  3. I also have a schedule set up in Settings > Schedules.

    This shows some unexpected things, such as a “Next Run” in the past.

  4. I have two cron jobs set up. They both seem to run without errors.

cd  /home/beechesit/domains/ && /usr/bin/php -d register_argc_argv=On artisan queue:work --stop-when-empty

cd /home/beechesit/domains/ && /usr/bin/php -d register_argc_argv=On artisan schedule:run  >> /dev/null 2>&1

There’s obviously something wrong, especially when the “next run” is a past date. But how can I narrow this down? I’m losing money here because people are forgetting to pay their invoices.

1 Like


If you’re using the queue I suggest disabling it until this works by setting it to sync.

What do you see when running this from the command line?

cd /home/beechesit/domains/ && /usr/bin/php -d register_argc_argv=On artisan schedule:run

I see:

INFO No scheduled commands are ready to run.

It may help to update to the latest version of the app if you aren’t already using it.

For the reminders I suggest checking that the next send date for a sample invoice is correct.

For the schedule it may help to manually correct the next send date.

Sorry, should have said, I’m on version v5.8.57 -W160

Not sure how to “disable the queue” or “check the next send date” but I will find out and revert.

Here’s my supervisor invoiceninja-worker.conf in case that helps as well:

command=php /home/beechesit/domains/ queue:work --sleep=3 --tries=3 --max-time=3600

You can disable the queue by setting QUEUE_CONNECTION to sync in the .env file.

You can add the next send date column to the invoices table to check the value.

OK, if anyone else reads this one way to view the dates is to go to the Invoices page, click Columns at the bottom right (why is it at the bottom not the top?) then select Last Sent Date, Next Send Date and Reminder Last Sent. I couldn’t find this anywhere in the documentation.

The results are interesting. This looks wrong to me, no dates at all:

Also this - I think I sent this one manually, not automatically and now the next date is in the past

I have now disabled the queue, I think. Thanks for the tip.

If the next send date is blank I suggest trying to re-save the invoice to see if it sets it

Reminder Last Sent is always blank. Some of the “Next Send Dates” are in the future.

Re-saving (and refreshing the page) does not seem to have made any difference.

Does the invoice fit into the reminder schedule?

Well, I hope so but this might be the crux of the problem. Here’s my settings for “Endless Reminders”

And here’s my settings for “Schedules”.

To be honest, I’m not sure what the difference is or why we need both but neither seem to work.

@david do you have any suggestions?

The reminders will send the invoice, schedules can be used to send a client statement

Ah, that makes sense, especially for the situation where a customer has multiple overdue invoices. I think I’ll turn off the endless reminders in that case. Is there any way to view a statement before actually sending it to a customer? I’d like to check the formatting and content.

There’s an optional to view the statement from the client screen

That’s very useful, thanks.

I’ve paid to get rid of the angry logo. :slight_smile:

1 Like

I’m still seeing missed reminders, with “Next Send Date” now in the past and “Reminder Last Sent” always empty. Where do I go from here?

Which version of the app are you using?