1) En supposant que la session est basée sur des cookies, elle devrait toujours être là lorsqu'ils reviennent sur votre site (tant qu'ils n'ont pas fermé la fenêtre du navigateur entre-temps, ce qui est peu probable).
Si vous ne voulez vraiment pas être sûr, stockez la session dans la base de données dans une table temporaire associée au order_id que vous générez. Je crois qu'il est possible que ce (order_id) soit renvoyé une fois la transaction terminée. Lire la documentation sur PDT .
2) Je crois que ce n'est pas le cas. Consultez la documentation à partir de la page 250.