Fix your current site before any migration
You don’t want to have to deal with broken internal links after the move. Do a quick SEO audit. I usually use Screaming Frog for fixing internal links.
Test if your certificate is valid
You can use https://www.ssllabs.com/ssltest/
Use your favorite rank tracking software to start monitoring https rankings
For mass rankings checker I like to use Looker Data Studio that gets results from Google Console.
Start the migration
Update canonical tags
With absolute HTTPS links, obviously
Sitemap and robots.txt
Make sure sitemap and robots.txt use HTTPS versions
Register both HTTP & HTTPS in Google Search Console
Do the same thing with subdomains for that domain. Bing will just bunch them up together, so you don’t need to go into Bing tools. Update any other settings that in Google Search Console, such as disallow file, removals, sitemaps…
Set up 301 rules
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}
[L,R=301]
Test redirects
Make sure there are as few redirects as possible, from non-www to www, or with slash and non-slash.
Check if breadcrumbs and URL structure is still the same
Make sure breadcrumbs point to HTTPS.
Start monitoring important pages
Prioritize them by looking into Google Search Console and Google Analytics reports.
Check plugins and CDN
Make sure CDN can handle the migration and all the plugins are still working properly.
Crawl the site one more time
Check all the broken links and canonicals and redirects. Once again I will probably use Screaming Frog for this.
Try to update external incoming links
If possible try to link to HTTPS from external sources, such as social media.
Monitor Google search console and analytics
To make sure they are tracking everything properly. It is very important to check GSC for errors at this stage.