I just signed a credit card payment at a restaurant using a Toast device and it asked if they wanted to run in offline mode. So this is already solved at scale to some degree.