Why a transaction shows in the app before your bank's site, or after
by Lee Schmidt
Published September 20, 2026
A transaction reaches the app on the first sync after the bank reports it, and that timing is why the app and the bank's site rarely agree to the hour. The app can be ahead of you, when a sync has run since you last opened the bank's site, and it can be behind the bank, when the bank has recorded something the sync has not yet fetched or something the bank does not share until it posts. A purchase at a bank that shares pending items shows in the app, marked pending, within a day; at a bank that shares only posted transactions it shows one to three business days later, when it posts. The order is set by two clocks, the bank's reporting and the app's syncing, and once you know which clock is which, the sequence stops being surprising.
The two clocks
The bank's clock is when it records a transaction and when it makes that record available to a connection. Most banks record a card purchase as pending within minutes and post it one to three business days later. Some make the pending record available to connections; some make only the posted one available. That policy is the bank's, and it is the larger of the two delays.
The app's clock is the sync, typically once a day at a fixed time, plus any manual refresh. Whatever the bank has made available at that moment arrives; whatever it records afterward waits for the next sync. See How often a budgeting app syncs with your bank for the schedule.
When the app is behind the bank
This is the common case, and it has two causes with different sizes.
- The sync has not run yet. The bank recorded a purchase at noon; the app syncs at 6 a.m. tomorrow. The app is behind by up to a day, and a manual refresh closes the gap if the bank shares the record.
- The bank does not share pending items. The bank's own site shows the purchase as pending, but the connection receives it only when it posts. The app is behind by one to three business days, and no refresh changes that.
The second cause is the one that makes people think the app is broken. It is not: the bank's site and the bank's connection are showing different things on purpose, and the app sees only the connection.
When the app is ahead of you
The app can show a transaction you have not seen on the bank's site, because the sync ran and you have not looked. A paycheck posted overnight, an autopay that ran at 3 a.m., a refund that landed yesterday: the 6 a.m. sync fetched them, and the app has them before breakfast. The bank's site had them too, earlier, but the app is where you looked first. It can also seem ahead when the bank's site hides pending items behind a filter or on a separate tab, so that a purchase the app shows as pending is not visible on the bank's default view.
A worked day, three transactions
The app syncs at 6 a.m. The bank shares pending items.
At a bank that does not share pending items, the lunch and the order would first appear on Thursday's sync, as posted, and the Monday refresh would have shown nothing. Same app, same day, and the difference is the bank.
What to do about it
- Read the sync time before comparing the app with the bank. A figure from this morning is not expected to include this afternoon.
- Refresh when you need the bank's current answer now.
- Wait for the post when the bank does not share pending items; it is one to three business days and nothing else shortens it.
- Check the connection's status when the gap is more than a couple of days, since an expired connection stops the syncs and the app silently falls behind; see Why bank connections break, and how reconnecting works.
- Contact the app's support only when a transaction is still missing days after it posted at the bank, with the account and the date.
Common mistakes
- Comparing the app to the bank's site to the hour. They run on different clocks by design.
- Reading a missing pending purchase as an error. The bank may not share pending items with connections.
- Refreshing for a purchase that has not posted at a bank that shares only posted ones.
- Not noticing an expired connection. The app then falls behind by days, and the cause is not the clocks.
- Trusting the bank's default view over the app. The bank's site can hide pending items behind a filter; the app shows them marked.
Common questions
Why does a transaction show in the app before it shows at my bank? It was at the bank first, recorded overnight or earlier in the day, and the app's sync fetched it before you opened the bank's site. Or the bank's default view hides pending items that the app shows marked as pending.
Why does the app show a transaction a day or two after my bank? Because the sync runs once a day and fetches what the bank had at that moment, or because the bank shares only posted transactions with connections and the purchase has not posted yet. The first is up to a day; the second is one to three business days.
Is a transaction lost if the app doesn't show it? No. At a bank that shares only posted transactions, it appears when it posts. If it is still missing days after posting at the bank, the connection may have expired, which the app's connection settings show.
Why did a pending transaction disappear and come back? The bank withdrew the pending record and posted the final one, often under a slightly different name or amount. The app swaps one for the other at the next sync; see Why transactions show as pending, and why amounts change.
Does refreshing help? When the bank has something new that the daily sync has not fetched, yes. When the bank has not posted a transaction it does not share as pending, no.
How Zypper handles this
Zypper syncs connected accounts automatically every day and shows the sync's timing: the connections settings list each institution with when it last updated, and a refresh action pulls fresh balances and transactions now. A new purchase starts as pending at your bank and typically takes one to three business days to post; some banks share pending transactions right away, and those show in Zypper marked as pending, while others report a transaction only once it posts, so a transaction made today often appears a day or two later, which is bank-side timing rather than data loss. An expired connection stops new transactions entirely until you reconnect, and Zypper flags and emails about it; if transactions are still missing days after posting at the bank, support can look with the account and the date. See Missing or delayed transactions and Checking connection status and refreshing for the details, or get started with Zypper to see both clocks on one page.