I tried to get a notification for an incoming transaction?? What is the best way?

As I see, I have three options now. (Updated 02/20/2018)

  1. Make a script to check rpc log file. Then get wallet information.

  2. (Not working) Run incoming_transaction on RPC regularly. Then get new inputs.

  3. Modify source and build it.

Any other options there??

Thank you,

  • In my test, #2 doesn't work. So my option is #1. Guys.. any other options? or suggestion/advice?? Thank you,
    – lambdax
    Commented Feb 19, 2018 at 9:53
  • how do you solve the situation if your server goes off for a few hours and you miss the incoming_transactions during those hours? Commented Feb 19, 2018 at 20:58
  • I already mentioned that #2 didn't work. My approach is #1 (1. Make a script to check rpc log file. Then get wallet information)
    – lambdax
    Commented Feb 20, 2018 at 1:10

2 Answers 2


Using the --tx-notify parameter to monero-wallet-cli/monero-wallet-rpc, you can run an arbitrary program when the wallet receives a transaction. The option takes a command line as parameter. The binary in that command line should have a path if necessary. Before being called, any instance of the "%s" string will be replaced by the transaction hash.

For instance:

monero-wallet-cli --wallet-file example-wallet --tx-notify "/usr/local/bin/on-new-tx %s"

This on-new-tx binary will be called when the tx appears in the pool, and again when it is mined. In both cases, the txid will be passed as first and only parameter.


I would suggest the wallet RPC get_transfers as this will be more efficient than checking the log file and give you more useful information. When calling this method, you will want to store the height each time you call it so you can pick up transfers since last call (using the parameters for height filtering such as filter_by_height).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.