wallet notification not working for multisig address
First of all, the createmultisig will not add the generated address to your wallet, it will only generate the address and the redeemScript.

The addmultisigaddress was probably working for you because you generated both addresses on the same core-client and then added them with the addmultisigaddress command. However, the addmultisigaddress call will not add the multisig address to the wallet if not at least m of the public keys belong to this wallet (Where m is the minimum number of signatures required to spend from this address). This is because you can't add an address to the wallet if you can't spend from it. However, if you are only interested in adding the address for the purpose of watching it, you can do the following:


Generate n public keys for the m-of-n multisig address. Theses can be generated within or outside of the core client
Receive all the public keys on the core client and create the multisig address with createmultisig n '''[&lt;LISTS_OF_M_KEYS&gt;]'''
after you execute the step above you will recive the multisig address and the redeem script. You may store these to a DB if you would like
In order for walletNotify to work you need to import the address with importaddress command (you may want to set the rescan parameter to false since you just created the address anyway)
Optionally, you can add the address to a particular account with the setaccount command


Note: The account feature in bitcoind is planned to be deprecated and  replaced by a labels feature (see: [1] [2] [3]) and this should be taken into account if you want to plan ahead for forward compatability