When using poloniex, they issue a monero address to each user without the payment id's. How are they scanning so many user's monero private keys at once? I can't imagine them loading 1000s of wallet files one after another to scan the monero blockchain for an updated balance for each user. This is something I wanted to figure out but I never did in my own application that has many xmr private keys.
Last I was aware, Poloniex issues users with a Monero integrated address, which embeds a payment ID in the address. You can easily verify this by the address length - integrated addresses are 106 hex digits long.
As the Monero community has already signalled that payment IDs are being deprecated, subaddresses should be used instead moving forwards.