How to generate random HDPrivateKey off server and use correspnding HDPublicKey?

I was going through the Lemonade stand service tutorial and everything works as it should.

In the tutorial it says:

We generate a random HDPrivateKey from which all of our invoice
addresses will be generated. Normally what you would do is generate this
on a separate computer and put the corresponding HDPublicKey on the
server. That way if your server is hacked, your bitcoin is still safe!

Is there someway to use HDPublicKey and generate addresses from that?

What I am trying to do is create a transaction on the bitcore server. The transaction would send the bitcoins to an address which has nothing to do with the bitcore server but would watch the blockchain for that transaction and would update the webpage as the payment was made.