Home Forums Support Recurring Invoices – when do they trigger invoice creation and email sending?

This topic contains 13 replies, has 2 voices, and was last updated by  brackenhill_mob 3 weeks, 1 day ago.

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #19756

    brackenhill_mob
    Participant

    Self-hosting on 4.5.11 but tested on all versions back to 4.5.7

    This morning I was expecting our recurring invoices to be sent out to clients. The cron job runs a simple script at 06:30UTC that pipes the output of artisan to a file so we can check for errors etc.

    This morning the script ran, counted the number of recurring invoices correctly but didn’t create or send them. At 08:00 I manually ran the cron script and the log file was exactly the same. I then went to a meeting and came back at 09:10 to continue debugging this. When I ran the cron script then, the invoices were created and the email system triggered.

    I had a problem with triggers when I first setup IN. The cron job originally ran at 00:15UTC but as above, nothing was created.

    So what causes the system to create/send recurring invoices?

    I ask because I edited one of the invoices yesterday afternoon and wondered if the time of the edit has a bearing on the trigger mechanism.

    Is there a way to control this trigger so that I could run the cron job at a time of my choosing safe in the knowledge that invoices would be created and emailed?

    I rely on the recurring invoice feature so I’m very keen to get this working reliably as I’m often travelling on the first day of the month when they are due to be created so can’t do it manually (like today) if there is a problem.

    Many thanks as always for your help.

    #19759

    Hillel Coren
    Keymaster

    Maybe it’s related to the timezone, which timezone are you in?

    #19761

    brackenhill_mob
    Participant

    I’m in the UK so UTC – we ignore summer time on our servers

    #19764

    Hillel Coren
    Keymaster

    Sorry, in that case I’m not sure what the problem is.

    You want to try running the cron later in the day.

    #19792

    brackenhill_mob
    Participant

    I was afraid of that 😉

    Thanks

    #20615

    brackenhill_mob
    Participant

    Apologies or revisiting an old post, but the problem re-occurred this morning with a twist.

    The cron job ran at 05:30UTC (we’re in the UK) as usual. Last month all recurring invoices were sent out so I thought this problem had righted itself. Today 50% of the recurring invoices were sent and 50% not. WTF???

    Where do I start looking to get the bottom of this? As I travel extensively I must have recurring invoices working reliably as I’m often unable to “baby sit” this for several days and late invoicing means late revenue for me ;}

    Thanks

    #20617

    Hillel Coren
    Keymaster

    Is there a pattern between the ones that were/weren’t sent?

    If you keep the log output of the cron it’s worth reviewing, otherwise you can try running the cron from the command line to review the output.

    #20627

    brackenhill_mob
    Participant

    OK this is now getting weird. Because I was travelling, I couldn’t make any changes in the app and yesterday the remaining recurring invoice was sent out 24 hours after it should have been. I’ve always felt that there was some sort of time/date “trigger” to this problem and this delayed send would suggest that.

    I always capture the output of the cron job so I can check for any issues (like this one!) and I took a copy of the one on 1st May which is below – it’s not very helpful as far as I can see. Is there any way of increasing the debugging information/output from artisan?

    Invoice Run
    Wed, 01 May 2019 05:30:10 +0000 Running SendRecurringInvoices…
    Wed, 01 May 2019 05:30:16 +0000 2 recurring invoice(s) found
    Wed, 01 May 2019 05:30:18 +0000 Processing Invoice: 48
    Wed, 01 May 2019 05:30:28 +0000 Not billed – Sending Invoice
    Wed, 01 May 2019 05:31:04 +0000 0 recurring expenses(s) found
    Wed, 01 May 2019 05:31:04 +0000 Done

    Reminder Run
    Wed, 01 May 2019 05:31:07 +0000 Running SendReminders…
    Wed, 01 May 2019 05:31:08 +0000 2 due recurring invoice instance(s) found
    Wed, 01 May 2019 05:31:08 +0000 0 accounts found with fees enabled
    Wed, 01 May 2019 05:31:08 +0000 1 accounts found with reminders enabled
    Wed, 01 May 2019 05:31:08 +0000 Enhancing Clarity Ltd: 0 invoices found
    Wed, 01 May 2019 05:31:08 +0000 Enhancing Clarity Ltd: 0 endless invoices found
    Wed, 01 May 2019 05:31:09 +0000 0 scheduled reports
    Wed, 01 May 2019 05:31:17 +0000 Done

    #20628

    Hillel Coren
    Keymaster

    We don’t support changing the log level.

    Do the recurring invoices have the same date settings?

    #20629

    brackenhill_mob
    Participant

    Re log level, is there any other log I can review to try and resolve this? PHP or MySQL?

    With respect to “same date settings” I’m not sure what you are asking for. Each recurring invoice is set up when we take on a new client. All recurring invoices are set to fire on the 1st day of the month as my company is paid a monthly retainer. So if we land a new client this month, the initial date for their recurring invoice will be 1st June 2019.

    Is that what you were asking?

    #20630

    Hillel Coren
    Keymaster

    So you’re saying the start date was changed by a day?

    Anything’s possible but this is the first time I’m hearing of this issue, if this bug existed I would expect to hear about it from more users. The start date can get changed but it would happen if it’s the 31st and the month only has 30 days.

    #20631

    brackenhill_mob
    Participant

    Correct. The invoices should have fired on 1st May – one did (which was the first invoice for a new client), one fired yesterday (2nd May) for a long standing client – 1st January was when we switched over to IN for our invoicing needs – and then changed the future firing date for this client’s invoices to 2nd of the month going forwards (I’ve filed a report on GitHub)

    #20632

    Hillel Coren
    Keymaster

    Can you clarify, did you manually “change the future firing date for this client’s invoices to 2nd” or did this happen on it’s own?

    #20633

    brackenhill_mob
    Participant

    It happened on it’s own (ie IN changed the date to 2nd of the month because the invoice fired on 2nd May). As I mentioned above, I was travelling on the 1st without access to the system – the logs are rotated by my cron script for that reason.

    I have today edited the invoice and reset to start date to 1st June 2019 so that it fires correctly next month.

Viewing 14 posts - 1 through 14 (of 14 total)

You must be logged in to reply to this topic.

Posted in: