I am working on a platform where users can register and can have wallets with multiple addresses (one address for each coin/network). I found something in Binance APIs where you're able to create sub-accounts and for each subaccount, you can set the coin and so for each one, you can get a unique address. I don't know if this is the best practice to generate new addresses for the users
It is not. It will be safer, easier, and reliable, to use a library designed for address creation.
What is a Sub-Account? Sub-account allows you to trade through multiple accounts. You can use it to clearly divide responsibilities and manage transactions ...
It is not the intended design of Binance for your use case.