One of the parties can be offline: If payer is offline, they can pay ecash from their wallet. Receiver needs to reissue. If receiver is offline, payer can lock ecash to receiver pubkey and pay the receiver. Receiver can remain offline.
Locking to the payee pubkey is a big deal but it kind of relies on users agreeing on some key format. If only nostr was the global standard already 😅 (Actually, wallets could support a set of public key types but that gets messy.) But if the payer is offline, he can only send as granular as he has tokens in his possession, right? Or can the payee lock change in an atomic way?
It's fixed in the spec, we already agreed on it: secp256k1 Schnorr signatures, like nostr