Unlike other distributed databases you don't have one store selling an item of food from another store (especially if your online system is down) and need to do a split brain recomp.
[1] https://www.youtube.com/watch?v=a7wutgAlNHk
A few years ago, during a power outage, a stores clerk actually used one of these for/on me. I was pretty shocked ;)
They did the same thing in the 70's if your card was worn down. This is a solved problem.
There are a couple of approaches that could involve multiple payment providers over redundant networks so switch to something else.
For inventory, since it’s likely only temporary transactions can be stored locally and then synced when back online.
Theoretically the design could be distributed all the time and just keep working the same while disconnected with some potential reorders and restocks slowed down or delayed.
Or, you know, blockchain inventory or something.
2. Have clerks write down what is needed on the shelfs.
They'd have to make that very clear at the entrance to the store. This is just a guess, but I think most Swedes don't carry enough cash to even pay for groceries when they go shopping. I haven't had any paper money in years, just a few coins.
But Swish (mobile payments) could work.
I think you're underestimating how little we use cash. There aren't even ATMs in some parts of town and there are plenty of villages without one for tens of miles. Nobody uses cash anymore. It's all either debit cards or direct transfers (either via and app or the bank.)
offline-first PWA
Manual fallback option when the most predictable failure scenario happens (only backend server fails)