Refactor: put destination check under the transaction (OMS-345)