You can use cryptapi.io service:
eg:
https://api.cryptapi.io/COIN/create/?callback=CALLBACK&address=WALLET_ADDRESS&pending=1
then save "address_in" from json response to user, when user maked deposit, The payment info can sent to your callback address.