Recurring invoices are being generated every hour / Invoices are not getting sent

I had the weirdest thing happenning…
I was using v5 latest update and it was working perfectly, sending emails etc., till I created a recurring invoice. Thereafter the following issues occured:

  1. Recurring invoices are not sent at all and show ‘pending’ or ‘draft’ even past the date it was supposed to be sent (I started the recurring)
  2. In the ‘ledger’ by customer, I see that every hour of the day (when I created the recurring invoice) another “regular” invoice (i.e. not recurring) is being auto generated for that customer and marked sent (the invoice is identical to the ‘recurring’ one I created except for the invoice number whih uses the regular invoice number scheme).
  3. The customers bal show the sum of ‘all’ these hourly auto invoices, and it is marked sent.
  4. Since then regular invoices are not being sent at all.
  5. Here are logs:
    [2021-04-16 01:00:02] production.ERROR: Trying to get property ‘id’ of non-object {“exception”:"[object] (ErrorException(code: 0): Trying to get property ‘id’ of non-object at /usr/share/nginx/invoiceninja/app/Models/Invoice.php:400)
    [stacktrace]
    #0 /usr/share/nginx/invoiceninja/app/Models/Invoice.php(400): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError()
    #1 /usr/share/nginx/invoiceninja/app/Mail/Engine/InvoiceEmailEngine.php(102): App\Models\Invoice->pdf_file_path()
    #2 /usr/share/nginx/invoiceninja/app/Jobs/Entity/EmailEntity.php(159): App\Mail\Engine\InvoiceEmailEngine->build()
    #3 /usr/share/nginx/invoiceninja/app/Jobs/Entity/EmailEntity.php(90): App\Jobs\Entity\EmailEntity->resolveEmailBuilder()
    #4 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Bus/Dispatchable.php(17): App\Jobs\Entity\EmailEntity->__construct()
    #5 /usr/share/nginx/invoiceninja/app/Jobs/RecurringInvoice/SendRecurring.php(75): App\Jobs\Entity\EmailEntity::dispatch()
    #6 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(234): App\Jobs\RecurringInvoice\SendRecurring->App\Jobs\RecurringInvoice\{closure}()
    #7 /usr/share/nginx/invoiceninja/app/Jobs/RecurringInvoice/SendRecurring.php(78): Illuminate\Support\Collection->each()
    #8 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Jobs\RecurringInvoice\SendRecurring->handle()
    #9 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Util.php(40): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
    #10 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
    #11 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
    #12 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Container.php(610): Illuminate\Container\BoundMethod::call()
    #13 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(128): Illuminate\Container\Container->call()
    #14 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Bus\Dispatcher->Illuminate\Bus\{closure}()
    #15 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #16 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(132): Illuminate\Pipeline\Pipeline->then()
    #17 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Bus/Dispatchable.php(67): Illuminate\Bus\Dispatcher->dispatchNow()
    #18 /usr/share/nginx/invoiceninja/app/Jobs/Cron/RecurringInvoicesCron.php(57): App\Jobs\RecurringInvoice\SendRecurring::dispatchNow()
    #19 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(234): App\Jobs\Cron\RecurringInvoicesCron->App\Jobs\Cron\{closure}()
    #20 /usr/share/nginx/invoiceninja/app/Jobs/Cron/RecurringInvoicesCron.php(59): Illuminate\Support\LazyCollection->each()
    #21 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Jobs\Cron\RecurringInvoicesCron->handle()
    #22 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Util.php(40): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
    #23 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
    #24 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
    #25 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Container.php(610): Illuminate\Container\BoundMethod::call()
    #26 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(128): Illuminate\Container\Container->call()
    #27 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Bus\Dispatcher->Illuminate\Bus\{closure}()
    #28 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #29 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(132): Illuminate\Pipeline\Pipeline->then()
    #30 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Scheduling/Schedule.php(180): Illuminate\Bus\Dispatcher->dispatchNow()
    #31 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Scheduling/Schedule.php(142): Illuminate\Console\Scheduling\Schedule->dispatchNow()
    #32 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\Console\Scheduling\Schedule->Illuminate\Console\Scheduling\{closure}()
    #33 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Closure->__invoke()
    #34 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Util.php(40): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
    #35 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
    #36 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
    #37 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Container.php(610): Illuminate\Container\BoundMethod::call()
    #38 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Scheduling/CallbackEvent.php(79): Illuminate\Container\Container->call()
    #39 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Scheduling/ScheduleRunCommand.php(143): Illuminate\Console\Scheduling\CallbackEvent->run()
    #40 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Scheduling/ScheduleRunCommand.php(102): Illuminate\Console\Scheduling\ScheduleRunCommand->runEvent()
    #41 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\Console\Scheduling\ScheduleRunCommand->handle()
    #42 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Util.php(40): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
    #43 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
    #44 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(37): Illuminate\Container\BoundMethod::callBoundMethod()
    #45 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Container/Container.php(610): Illuminate\Container\BoundMethod::call()
    #46 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Command.php(136): Illuminate\Container\Container->call()
    #47 /usr/share/nginx/invoiceninja/vendor/symfony/console/Command/Command.php(256): Illuminate\Console\Command->execute()
    #48 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Command.php(121): Symfony\Component\Console\Command\Command->run()
    #49 /usr/share/nginx/invoiceninja/vendor/symfony/console/Application.php(971): Illuminate\Console\Command->run()
    #50 /usr/share/nginx/invoiceninja/vendor/symfony/console/Application.php(290): Symfony\Component\Console\Application->doRunCommand()
    #51 /usr/share/nginx/invoiceninja/vendor/symfony/console/Application.php(166): Symfony\Component\Console\Application->doRun()
    #52 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Console/Application.php(93): Symfony\Component\Console\Application->run()
    #53 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(129): Illuminate\Console\Application->run()
    #54 /usr/share/nginx/invoiceninja/artisan(37): Illuminate\Foundation\Console\Kernel->handle()
    #55 {main}
    “}
    [2021-04-16 01:41:09] production.ERROR: Undefined index: id {“exception”:”[object] (ErrorException(code: 0): Undefined index: id at /usr/share/nginx/invoiceninja/app/Http/Requests/Payments/PaymentWebhookRequest.php:90)
    [stacktrace]
    #0 /usr/share/nginx/invoiceninja/app/Http/Requests/Payments/PaymentWebhookRequest.php(90): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError()
    #1 /usr/share/nginx/invoiceninja/app/Http/Controllers/PaymentWebhookController.php(21): App\Http\Requests\Payments\PaymentWebhookRequest->getPayment()
    #2 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\Http\Controllers\PaymentWebhookController->__invoke()
    #3 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction()
    #4 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Route.php(254): Illuminate\Routing\ControllerDispatcher->dispatch()
    #5 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Route.php(197): Illuminate\Routing\Route->runController()
    #6 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(693): Illuminate\Routing\Route->run()
    #7 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
    #8 /usr/share/nginx/invoiceninja/app/Http/Middleware/SetDb.php(40): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #9 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\SetDb->handle()
    #10 /usr/share/nginx/invoiceninja/app/Http/Middleware/RedirectIfAuthenticated.php(48): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #11 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\RedirectIfAuthenticated->handle()
    #12 /usr/share/nginx/invoiceninja/app/Http/Middleware/Cors.php(34): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #13 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\Cors->handle()
    #14 /usr/share/nginx/invoiceninja/app/Http/Middleware/QueryLogging.php(38): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #15 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\QueryLogging->handle()
    #16 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #17 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\SubstituteBindings->handle()
    #18 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(127): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #19 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(63): Illuminate\Routing\Middleware\ThrottleRequests->handleRequest()
    #20 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\ThrottleRequests->handle()
    #21 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #22 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(695): Illuminate\Pipeline\Pipeline->then()
    #23 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(670): Illuminate\Routing\Router->runRouteWithinStack()
    #24 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(636): Illuminate\Routing\Router->runRoute()
    #25 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(625): Illuminate\Routing\Router->dispatchToRoute()
    #26 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(166): Illuminate\Routing\Router->dispatch()
    #27 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
    #28 /usr/share/nginx/invoiceninja/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(60): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #29 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Barryvdh\Debugbar\Middleware\InjectDebugbar->handle()
    #30 /usr/share/nginx/invoiceninja/app/Http/Middleware/Cors.php(34): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #31 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\Cors->handle()
    #32 /usr/share/nginx/invoiceninja/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #33 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fideloper\Proxy\TrustProxies->handle()
    #34 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #35 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
    #36 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #37 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
    #38 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #39 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
    #40 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #41 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()
    #42 /usr/share/nginx/invoiceninja/vendor/sentry/sentry-laravel/src/Sentry/Laravel/Tracing/Middleware.php(46): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #43 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Sentry\Laravel\Tracing\Middleware->handle()
    #44 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #45 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(141): Illuminate\Pipeline\Pipeline->then()
    #46 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
    #47 /usr/share/nginx/invoiceninja/public/index.php(57): Illuminate\Foundation\Http\Kernel->handle()
    #48 {main}
    “}
    [2021-04-16 05:45:28] production.ERROR: Undefined index: id {“exception”:”[object] (ErrorException(code: 0): Undefined index: id at /usr/share/nginx/invoiceninja/app/Http/Requests/Payments/PaymentWebhookRequest.php:90)
    [stacktrace]
    #0 /usr/share/nginx/invoiceninja/app/Http/Requests/Payments/PaymentWebhookRequest.php(90): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError()
    #1 /usr/share/nginx/invoiceninja/app/Http/Controllers/PaymentWebhookController.php(21): App\Http\Requests\Payments\PaymentWebhookRequest->getPayment()
    #2 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\Http\Controllers\PaymentWebhookController->__invoke()
    #3 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction()
    #4 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Route.php(254): Illuminate\Routing\ControllerDispatcher->dispatch()
    #5 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Route.php(197): Illuminate\Routing\Route->runController()
    #6 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(693): Illuminate\Routing\Route->run()
    #7 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
    #8 /usr/share/nginx/invoiceninja/app/Http/Middleware/SetDb.php(40): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #9 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\SetDb->handle()
    #10 /usr/share/nginx/invoiceninja/app/Http/Middleware/RedirectIfAuthenticated.php(48): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #11 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\RedirectIfAuthenticated->handle()
    #12 /usr/share/nginx/invoiceninja/app/Http/Middleware/Cors.php(34): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #13 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\Cors->handle()
    #14 /usr/share/nginx/invoiceninja/app/Http/Middleware/QueryLogging.php(38): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #15 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\QueryLogging->handle()
    #16 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #17 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\SubstituteBindings->handle()
    #18 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(127): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #19 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(63): Illuminate\Routing\Middleware\ThrottleRequests->handleRequest()
    #20 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\ThrottleRequests->handle()
    #21 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #22 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(695): Illuminate\Pipeline\Pipeline->then()
    #23 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(670): Illuminate\Routing\Router->runRouteWithinStack()
    #24 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(636): Illuminate\Routing\Router->runRoute()
    #25 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(625): Illuminate\Routing\Router->dispatchToRoute()
    #26 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(166): Illuminate\Routing\Router->dispatch()
    #27 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
    #28 /usr/share/nginx/invoiceninja/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(60): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #29 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Barryvdh\Debugbar\Middleware\InjectDebugbar->handle()
    #30 /usr/share/nginx/invoiceninja/app/Http/Middleware/Cors.php(34): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #31 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\Cors->handle()
    #32 /usr/share/nginx/invoiceninja/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #33 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fideloper\Proxy\TrustProxies->handle()
    #34 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #35 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
    #36 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #37 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
    #38 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #39 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
    #40 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #41 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()
    #42 /usr/share/nginx/invoiceninja/vendor/sentry/sentry-laravel/src/Sentry/Laravel/Tracing/Middleware.php(46): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #43 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Sentry\Laravel\Tracing\Middleware->handle()
    #44 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #45 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(141): Illuminate\Pipeline\Pipeline->then()
    #46 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
    #47 /usr/share/nginx/invoiceninja/public/index.php(57): Illuminate\Foundation\Http\Kernel->handle()
    #48 {main}
    “}
    [2021-04-16 19:51:50] production.ERROR: Undefined index: id {“exception”:”[object] (ErrorException(code: 0): Undefined index: id at /usr/share/nginx/invoiceninja/app/Http/Requests/Payments/PaymentWebhookRequest.php:90)
    [stacktrace]
    #0 /usr/share/nginx/invoiceninja/app/Http/Requests/Payments/PaymentWebhookRequest.php(90): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError()
    #1 /usr/share/nginx/invoiceninja/app/Http/Controllers/PaymentWebhookController.php(21): App\Http\Requests\Payments\PaymentWebhookRequest->getPayment()
    #2 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\Http\Controllers\PaymentWebhookController->__invoke()
    #3 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction()
    #4 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Route.php(254): Illuminate\Routing\ControllerDispatcher->dispatch()
    #5 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Route.php(197): Illuminate\Routing\Route->runController()
    #6 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(693): Illuminate\Routing\Route->run()
    #7 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
    #8 /usr/share/nginx/invoiceninja/app/Http/Middleware/SetDb.php(40): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #9 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\SetDb->handle()
    #10 /usr/share/nginx/invoiceninja/app/Http/Middleware/RedirectIfAuthenticated.php(48): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #11 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\RedirectIfAuthenticated->handle()
    #12 /usr/share/nginx/invoiceninja/app/Http/Middleware/Cors.php(34): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #13 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\Cors->handle()
    #14 /usr/share/nginx/invoiceninja/app/Http/Middleware/QueryLogging.php(38): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #15 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\Http\Middleware\QueryLogging->handle()
    #16 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #17 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\SubstituteBindings->handle()
    #18 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(127): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #19 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(63): Illuminate\Routing\Middleware\ThrottleRequests->handleRequest()
    #20 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Routing\Middleware\ThrottleRequests->handle()
    #21 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
    #22 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(695): Illuminate\Pipeline\Pipeline->then()
    #23 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(670): Illuminate\Routing\Router->runRouteWithinStack()
    #24 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(636): Illuminate\Routing\Router->runRoute()
    #25 /usr/share/nginx/invoiceninja/vendor/laravel/framework/src/Illuminate/Routing/Router.php(625):
    I reached the limit!

Hi,

Thanks for reporting this!

@david, any thoughts?

@rosens

Just to clarify how recurring invoices work.

You create a recurring invoice which acts as a ‘template’, when the recurring schedule fires, a regular invoice is generated so this functionality so far is normal.

The issue you are seeing is a bug, most likely due to your PDFs not generating and throwing an exception which causes the system to think that the recurring invoice isn’t generated at all, hence the repeating cycle you are seeing.

I can put a fix in for this part, but we’ll need to understand the exact issue… Can you advise whether you are able to view any of these invoice PDFs at all please?

Tnx, @david @hillel
I can view all generated PDF’s both the ‘regular’ ones, and also the ‘recurring’ one.
But also, the invoices generated use the numbering of the regular invoices. If the recurring invoice is set (in settings) to have a different prefix number than the regular ones , doesn’t the invoice it generates use that other number scheme to number it?