Try to follow the tips suggested above, you can also "refresh" new addresses from your xpub/descriptor in Bitcoin Core with the keypoolrefill command in Bitcoin Core.
To understand how output descriptors work and an example of how to use them, you can access this topic: https://bitcointalksearch.org/topic/m.63603357
Optionally, to better suit your case, you can define a "range" variable in the descriptor to generate, for example, 5000 addresses, e.g.: ..."range:"[0,5000]... this must be added in the descriptor to be imported, for example:
Importing a BIP32 Extended Private Key:
{
"desc": "wpkh([c90d8a1f/84h/0h/0h]xpub6Cyu9toACShWh9YdQTcwquoyGByEnUZCGWiywsvzzvKfQipjdbyLJzCWxBjspyiu18DhZ6hp2hxTmxDuZvR1GuXEVd28CuTUKcA9nYQwKuw/0/*)#tyyve29j",
"timestamp": 1729633211,
"active": true,
"internal": false,
"range": [
0,
5000
],
"next": 0,
"next_index": 0
},
{
"desc": "wpkh([c90d8a1f/84h/0h/0h]xpub6Cyu9toACShWh9YdQTcwquoyGByEnUZCGWiywsvzzvKfQipjdbyLJzCWxBjspyiu18DhZ6hp2hxTmxDuZvR1GuXEVd28CuTUKcA9nYQwKuw/1/*)#6spdyl42",
"timestamp": 1729633211,
"active": true,
"internal": true,
"range": [
0,
5000
],
"next": 0,
"next_index": 0
}
]
}