wallet module spend function now has onCallback