Kark: Multi‑Location Inventory
App Introduction
Display inventory by location, search geographically for the nearest store to check availability, and create location filters This is a must-have app for merchants using Shopify Multi-Location or Local Pickup. Show available and incoming inventory by location on product pages, let customers search geographically for the nearest store, create smart collections and filters by location, enable store selection, and restrict orders via customer tags. Drive foot traffic, increase sales, and give shoppers full visibility into inventory across all your locations.
Core Functionality
- Display location inventory information on product pages.
- Create location metafields to build smart collections and filter by availability
- Access location inventory information in Liquid using location inventory JSON metafields
- Allow customers to select specific locations for shopping
- Restrict locations where customers can place orders using customer tags - for B2B
Merchant-Friendly
- Multi-warehouse E-commerce Merchants
- B2B Wholesale Merchants
- Cross-border E-commerce Merchants
- Omnichannel Retail Merchants
Basic Information
- Developer:Kark Ltd
- Address:7 Bell Yard, London, WC2A 2JR, GB
- Price: Free / Free plan
- Rating:5 / 5
- Comment Count:93 comment
- Release Date:2020-12-10
- Supported languages:English
- Compatible products:Shopify
Application Screenshot
Price Plan
Basic
- Product inventory information on the product page
- In-stock soon information on the product page
- Advanced style customization
- Bundle product support
Pro
- Geographic Location Search
- Filter by Location Using Metafields
- Automatically Add Location Name Tags to Products
Pro Plus
- Shop from Selected Locations
- Restrict Locations by Customer Tags
- Location Inventory Information JSON Metafield
- Scheduled Inventory Metafield Sync
User Location & Comments
User Location
Comments
Shopify API Used
- GET /admin/api/products/{product_id}/variants/{variant_id}/inventory.json
- GET /admin/api/inventory_levels.json?inventory_item_id={item_id}&location_id={loc_id}
- GET /admin/api/locations.json
Permission:read_inventory,read_products,read_locations
- POST /admin/api/locations/{location_id}/metafields.json
- PUT /admin/api/locations/{location_id}/metafields/{metafield_id}.json
- GET /admin/api/locations/{location_id}/metafields.json
Permission:write_metafields,read_metafields,manage_locations
- GET /admin/api/products/{product_id}/metafields.json?namespace=inventory&key=location_stock
- GET /admin/api/inventory_levels.json?inventory_item_id={item_id}
- GET /admin/api/locations.json
Permission:read_metafields,read_inventory,read_locations
- GET /admin/api/locations.json
- POST /admin/api/carts/{cart_id}/lines.json?location_id={loc_id}
- GET /admin/api/carts/{cart_id}.json
Permission:read_locations,write_carts,read_carts
- GET /admin/api/customers/{customer_id}/tags.json
- GET /admin/api/locations.json?metafield.namespace=tag_restrict&metafield.key=allowed_tags
- POST /admin/api/orders.json?location_id={loc_id}
Permission:read_customers,read_locations,write_orders