Your site needs to sit on a hosting server.
Namecheap or a similar domain name management service will direct all traffic that's coming to your domain name to the site on your hosting server.
I've never built a website using Canva but I've built a lot of websites and I'm assuming that once you've built your site, Canva spits out a folder full of images, HTML, CSS, etc files that you can then use.
You need to get some hosting somewhere like Siteground or Bluehost. They offer server space to which you upload your website files. Usually they offer a great cheap deal for the first 3 years, then after that it's £100+ per year.
You'll set up an account there and upload your website files to it.
They also have a control panel where you can make sure your settings are correct, add an email account, etc.
You buy your chosen domain name somewhere like Namecheap or Google Domains, and set up an account there to manage the domain name settings.
You then go to your site hosting account and find out the correct name server settings for the site (eg for Bluehost it'll be something like ns1.bluehost.com and ns2.bluehost.com), and plug those settings into your account in Namecheap or Google Domains where it says Manage DNS.
After a few hours, typing in your domain name into a browser should open up your website.
If you want an email address that uses your domain name eg [email protected] then I'd highly recommend you open an account with Google Workspace which gives you email, and lots of other useful tools. I'm in the US and it costs $6 per month and is worth every penny.
My favourite web hosting site is cloudways.com - it'll be a bit more expensive than the others initially, but it's very easy to use, automatically sets up secure certificates, does a daily backup, etc.