product plugin based