add transactional action