After 15 minutes, a new block is generated within the 30% of the nodes thus including transaction B and excluding transaction A. The new block propagates around all the nodes, causing the Chile node to drop the received money transaction (this shows up in the client as something or does it just vanish?), while the Mongolia node carries on as if nothing had happened.
Is this how it works in the current implementation? For 15 minutes, or however long it takes for the next block to arrive, both eCommerce sites will think they've received the money?
Bitcoin currently doesn't detect this. The transaction that loses will sit at "0/unconfirmed" forever.
I was amazed when I saw that
Bitcoin2CC gives out credit cards with 0 confirmations. This is incredibly dangerous.