I ended up doing exactly this on a project last year. What worked for me: override the product template (product.tpl in your theme) and point the add to cart button's action at your external URL instead of the cart. If you'd rather not touch code, there are simple modules that replace the default button with a custom link, which does the same thing under the hood.
I use the same redirect setup on my own site, where the upgrade button sends people to an external payment page instead of a built-in checkout. Works fine as long as you open the external page in a new tab so users don't lose their place on the store.
I ended up doing exactly this on a project last year. What worked for me: override the product template (product.tpl in your theme) and point the add to cart button's action at your external URL instead of the cart. If you'd rather not touch code, there are simple modules that replace the default button with a custom link, which does the same thing under the hood.
I use the same redirect setup on [my own site][1], where the upgrade button sends people to an external payment page instead of a built-in checkout. Works fine as long as you open the external page in a new tab so users don't lose their place on the store.
[1]: https://mygoalai.com