A lot of the integrations I inherit look like this: every five minutes, forever, a script wakes up and asks the third-party system "what's the status of everything right now?" It compares that snapshot to the last snapshot, guesses at what must have changed, and updates your system accordingly.
It works, mostly. It's also the slow, expensive way to do this, and it gets the story wrong more often than people realize.
If you poll and see an order went from "processing" to "shipped," you know the current state. You don't know when it shipped, whether it shipped twice and got corrected, or whether it briefly went to "cancelled" and back before your next poll caught up. You've got the medal, not the race.
Most of the "why doesn't this number match" tickets I get called in to debug come down to exactly this: two systems each holding their own snapshot of "current state," polled on different schedules, quietly drifting apart. Nobody lied. Nobody has the full history either.
An event is a fact: OrderWasShipped, InvoiceWasPaid, CustomerAddressWasUpdated. It's timestamped, it's in the past tense, and once it happened, it happened — there's nothing to reconcile against a later poll.
When a vendor supports webhooks (most of the platforms I connect to — Restaurant 365, Dynamics 365, plenty of others — do, to varying degrees), the integration stops asking "what's true right now?" and starts recording "what just happened." That has real, practical consequences:
Not every vendor gives you a choice. Plenty of platforms — especially older ERPs and anything still exporting nightly CSVs to an SFTP drop — don't have an event to listen for. In those cases polling isn't a design mistake, it's the only door available, and the discipline is in narrowing what you poll for and how you turn "I saw a difference" into an event of your own before it reaches the rest of your systems.
The point isn't that polling is always wrong. It's that when a vendor gives you the choice, an event you can listen for beats a snapshot you have to interrogate, almost every time.