The email is well sent will this template configured on Supabase interface following the doc:
<h2>Réinitialisation de votre mot de passe</h2><p>Suivez ce lien pour réinitialiser votre mot de passe:</p><p><a href="{{ .SiteURL }}/auth/confirm?token_hash={{ .TokenHash }}&type=recovery&next=/reset-password" >Reset Password</a ></p>
<h2>Réinitialisation de votre mot de passe</h2><p>Suivez ce lien pour réinitialiser votre mot de passe:</p><p><a href="{{ .SiteURL }}/auth/confirm?token_hash={{ .TokenHash }}&type=recovery&next=/reset-password" >Reset Password</a ></p>
Then i receive the email and click on the link that redirect on a very simple nextjs app, with a new password field and a confirm button calling updateUser(newPassword).
I've test various things: intermédiate route to get the code and initiate the session then redirect to the new password form page or navigating directly to this page but none works: I get session error or code empty...
What should i use: exchangeCodeForSession, verifyOtp with recovery type and which code/otp is the good one from the email link url? ["code"], ["tokenHash"]...
Supabase gives you the tools, documentation, and community that makes managing databases, authentication, and backend infrastructure a lot less overwhelming.