Why is Paddle showing me an error?

Have you added Paddle checkout on your website and keep getting this error when you try to test do a test purchase?

Screenshot of Paddle Checkout showing an error
Paddle Checkout showing an error: 'Something went wrong' and 'Please try again later. If the issue persists, you can contact our support team using the button below.' and 'Contact support'

Most likely you are testing your website on a domain that is not verified by Paddle yet. Or if you are using the new Paddle Billing then you have not set your "Default Payment Link" (under Checkout > Checkout settings).

For example if you are using a CMS they might be offering you a testing or staging site that runs on a different domain. Paddle will block access from domains that are not verified.

If that's not the case you can try to open developer tools in your browers (try hitting F11, or right clicking into the page to select "Inspect Element"). Then click on a tab called "Console" and you should see a more detailed error message.

Screenshot of Paddle Checkout showing an error
A Paddle Checkout error with Developer Tools open in Chrome Browser. The Console displays 'The source page must be a valid URL.' indicating that you cannot host a Paddle checkout inside a file loaded from your hard disk.

During development

If you're developing your website locally and using "localhost" then Paddle Checkout will work, although it's recommended to create a sandbox account for development purposes.

Loading Paddle Checkout directly from a HTML file

You cannot add the HTML and Paddle JS snippets to a file on your hard disk and load the directly into the browser (URL starts with file://). It will produce an error 'The source page must be a valid URL.' The file must be hosted through a web-server (URL starts with http:// or https://)

How do you fix a domain verification error?

If the domain is a testing domain then just publish to the real domain and everything should work as expected.

You can add the testing subdomain (or the domain that is not working) to your Paddle account on the "Request Domain Approval" page.

This will require going through domain approval, read more about that here.

And remember to add at least one page from your website that loads PaddleJS as the "Default Payment Link". Paddle will use this to redirect users for certain functions like showing invoices or updating the payment method.