UPDATE 2025
In general, Paddle, In production & sandbox environment allows only public access domain name, aka by typing : localhost -> WONT WORK.
How did I solve it? in short I used Ngrok.
HOW-TO:
step one install ngrok ( I am using Mac):
brew install ngrok
run ngrok the <> (3000) should be the localhost:<> u are using
ngrok http 3000
Next, now ngrok will bring you a public domain for you app:
<<somthing>>.ngrok-free.app
go in sandbox dashboard to website approval (under checkout) and add this domain.
last step but dont forget it! (I was 1 hour searching for it), go to checkout (same as the one before and choose , checkout settings and add the domain name under : Default payment link
that's it!
this is how you can run "locally" sandbox and check full flow of transactions.