Probably not for BitcoinJ, however a basic strategy.
You generate new deal with for each consumer you register. Retailer it in your DB with the userID for future reference.
Create a getAPI taking a String enter. use your API endpoint and open the Bitcoin.conf file.
walletnotify=curl <your API>
If you wish to have affirmation logic as nicely, you might want yet another getAPI, and get the endpoint. then replace your bitcoin.conf file once more with following:
blocknotify=curl <your Block API>
Now when consumer makes the deposit to the deal with you generated, Bitcoin node will notify your app by calling the pockets notify API. You get the transaction hash. Use that txHash and make a Submit name to your daemon with RPc command:
getTransaction <txHash>
Now you may have complete transaction object to seek out which consumer has made the deposit.
Free tip: Bitcoin node calls walletnotify two occasions:
- When a transaction is added to the chain.
- When that transaction receives first affirmation.
If you don’t need a couple of affirmation, then blockNotify will not be wanted.
If you’d like a sensible instance, you possibly can test my Github repo, the place I’ve finished it. It isn’t based mostly on BitcoinJ however the logic stays the identical:
https://github.com/kunalbarchha/generic-wrapper-for-bitcoinforks