He sent it from Jaxx to Exodus, pending on Jaxx but already confirmed on Exodus. Maybe Exodus works like Electrum in a way that unconfirmed transactions appear on balance even if the transaction if not yet confirmed.
To expand on what OmegaStarScream said, this is how it works on Ledger:
- When you send/receive bitcoin, the status you see in the client is pending and unconfirmed.
- When the transaction gets it's first confirmation, Ledger doesn't change the status and still keeps it unconfirmed but mentioning it has 1 confirmation.
- After the 2nd confirmation the status changes to confirmed.
This is the default setting, but it can be changed. You can bring it down to 1 confirmation. In that case, as soon as your transaction gets into the first block, Ledger Live will mark the transaction as confirmed. Or you can adjust it upwards to consider everything below 6 number of confirmations, for example, as unconfirmed.
From what I have seen on Trezor and Trezor Suite, the 1st confirmation immediately changes the transaction's status to confirmed.
So it depends on the software you use. Maybe Ledgers' 2 confirmation default is because of the possibility of your transaction landing in a stale block. So, if you see 1 confirmation, you might get the wrong impression that it's already confirmed while it might in fact change to unconfirmed soon after.