Processing custom payments after payment session has ended

I’m trying to integrate a custom payment with Portugal’s Multibanco and MBway service. This often might mean clients may not pay right away at the checkout screen (i.e. they could take a while to send a brank transfer), and I might need to implement some frequency logic in the server to check for all unpaid/unprocessed pending payments from and check from the provider if they’ve been paid, then process snipcart’s order from the server.

But if paymentSessionId is required on the “Create payment” API call (POST to /private/custom-payment-gateway/payment), and I can only get that when retrieving a valid payment session, is it only possible to do this during the limited time a session is valid? Is it possible to get the time of duration of the sessions at least?