API: shop method