Postpone payment to a later stage How would it be possible to postpone payment processing (move out of checkout) to a later stage/order status change?

I always thought the payment processing is a rule to be invoked on checkout completion, that I could easily modify, but as it comes out, no such rule can be found.

I'm using Stripe payment gateway with card on file. How I'd like the process to work is that the user puts in the card information in checkout as usual (because of card on file, the information is tokenized and a token stored to my server) But instead of the payment happening right away, I'd like to invoke the payment for the order only after the order has been fully processed and sent on it's way.

Therefore I'd like to ask, what would be the recommended process for achieving such functionality?

My ideal solution would be to somehow skip the payment processing in checkout, and process the payment with a rule on another order status change with the card data stored, but am currently unable to find solutions for this.

Best,

Alari
the payments usually are done in the same session then the checkout and has to be done by the user.

some gateways allow batch processing of payments, maybe try another payment gateway ?

or change your business logic. refunding is easier in most gateways ;)
so the user pays, but gets refunded, if the order is not processed after X days.