Ok so I am a business trying to accept crypto as a form of payment, but can't seem to figure out how I can generate 1000s of addresses (for each customer) to pay crypto to me? Or would there be some premade tool for this?
I would suggest that you use a tool for this. You could use a payment processor which you pay for or have a look at BTCPayServer.
It handles payment requests and can integrate with web stores etc. It will generate the required addresses and keep track of whether a client has paid their invoices. So does what you want and more.
It can also receive lightning payments as well as traditional on-chain transactions.
Download Bitcoin Core or Bitcoin Knots
Complete the initial sync and use prune settings if disk space is an issue
Create multiple wallets. One for each customer.
Generate 1000 address in each wallet and use them for receiving payments
Essentially all you need to do is write a simple loop that generates a new key pair each iteration. If you output the loop to a table you can easily paste the generated addresses into a spreadsheet and import to your database.
Example using buidljs
The above example is from my NoNodePay project that is intended for people that want to accept bitcoin without running a node. The user generates a large amount of key pairs (default is 1,000), stores the private keys offline, imports the addresses to a database and uses a fresh one for each order. Eventually you will need to generate more and update your database.