The issue is that when you add a product to a cart, you need to add it somewhere temporarily. In the Food Spot app from Adalo, it creates an order when you select the pickup time as a starting point. The issue is when the user does not really check out and wants to start from the beginning or changed his mind.
What I do is: when the user starts order, I set into a status “In Process”, then if user checkouts, it goes to “Completed”, if not stays “In Process”, you can then use a filter to ignore those from the Business list, or you can use a timer to delete those orders after some time.
You can also create an order collection and Cart collection, that everything goes to the cart collection and then in the checkout, you can take that info and create an order, but for me, this is a bit less optimal in terms of DB handling.
I am also building an Order App and wrapping my head around this and this how I got so far.