V5 Migration questions

Hello all,

We are currently evaluating v5 for a migration and a few questions popped up, that I couldn’t find answers to so far.

  • We are using Stripe for CC recurring invoice autobilling, will this continue to work with the cards already captured by stripe? Or will clients have to enter the CC info again?

  • Are the exisitng invoice pdfs copied over to v5 or are the pdfs regenerated by v5? As v4 and v5 use different templating methods it is quite hard to recreate an exact match of the custom template we used in v4, so they will look slightly different. It may also be a legal issue if they are regenerated as invoices cannot be modified in any way after being issued.

  • Is there a way to use a rewrite rule in nginx for existing v4 invoice urls instead of keeping v4 vm on just for redirect to old invoices? And if so can someone give a rough example of config. (Old subdomain will of course be pointed to the new server)

  • Can DELETE_PDF_DAYS variable in .env be disabled without negative impact on the system? I’m guessing if it is enabled it will delete old v4 and v5 generated pdf invoice files from storage after X number of days. If the invoice is then viewed again by the client or user it will be regenerated using the currently active template, which could be an issue as stated earlier due to slight differences in templates in v4 plus potential file date mismatch if there is an indepth audit, as well as potential mismatch with invoices already in possession of the client if the template is changed/tweaked in the future.

  • I know v5.3.9 release notes mention DELETE_BACKUP_DAYS but it is not clear what Backup.html it is referring to, could someone please clarify exactly what it does. If the supervisor enabled do we need to set INTERNAL_QUEUE_ENABLED=false, how/where do we have “full control over the queue” in this scenario?

  • Looking at the installation docs, the cron and schedueller section in particular can someone clarify what the cronjob that is created does, and what the supervisor service does if setup, and what the queue does.

Sorry for the wall of text, just trying to be thorough before pulling the trigger.

  1. yes when you migrate, we migrate across the user tokens, you can also use the import customers function in the stripe setting to pull in clients and their payment methods.

  2. v5 PDF system is completely different to v4, so your pdfs will regenerate on demand in v5.

  3. Unsure on this one, you would just need to rewrite to /client/invoice/key

  4. Yes, if space is not an issue, you can disable it completely.

  5. backups are html version of each invoice as they are updated. we store a snapshot of the invoice every time it changes. If you don’t need this level of detail, you can purge these.

  6. supervisor keeps the queue’s alive, and the scheduler performs scheduled tasks we run scheduled tasks throughout the day, and without the cron job it will not start the scheduler so these two systems should be treated separately.

1 Like

Thanks, quick follow up on

v5 PDF system is completely different to v4, so your pdfs will regenerate on demand in v5

Can we manually copy over the v4 pdfs after migration overwriting the newly generated ones? Or will directories/filenames not match? Or are they stored in DB all together?

If it is possible, what are the pdfs storage paths for both apps?

I don’t think that would work because the directory and naming structures are completely different. It would probably be best to just keep a v4 instance as a reference for old data if needed.