Would love a "Delay" block inside of workflows

My use case is that I have some stripe events, like checkout.initiated I want to delay the workflow, say by 30 minutes, 1 day, 2 days, etc such that I do a follow up email asking the user why they didn't complete checkout (depending on a branch condition, whether they subscribed or not)

I also want to use this sort of feature to create a kind of email drip campaign inside of retool via Sendgrid, and may need to delay emails by a couple days, or even weeks

Can you split your workflow so the first part completes and sends a record to a database with a "time to complete" and other pertinent information, and then the "delayed" part of the workflow queries the database on some schedule for "delay event" records. The data from that initial query could then be used to complete they "delay" workflow (or gracefully exit if none are found).

Not sure on the frequency you require and if the number of workflow executions would then get extreme...but maybe reasonable if you just need to check back on events every few days.