Inventory Planner & Merchandiser (Ecommerce)

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Part Time

SALARY

$540

HOURS PER WEEK

20

DATE UPDATED

Mar 31, 2026

JOB OVERVIEW

Overview

We are a fast-growing ecommerce business managing multiple brands across Amazon and other online channels. We are looking for a highly analytical Inventory Planner & Merchandiser to manage stock levels, forecast demand and ensure we maximise sales while avoiding overstock and stockouts.

This role is critical to ensuring the right products are in stock, at the right time, across all key markets and seasonal periods.

Key Responsibilities

Sales & Forecast Analysis

• Analyse weekly sales performance vs forecast across all products
• Identify trends in fast-moving and slow-moving SKUs
• Highlight risks such as under-forecasting, overstocking or declining sales

Market-Level Stock Planning (UK & EU)

• Analyse sales split between UK and EU marketplaces
• Determine where stock is required based on market demand and sales trends
• Ensure correct allocation of inventory between UK and EU warehouses
• Identify opportunities to rebalance stock between regions to maximise sales and availability

Stock Planning & Management

• Monitor stock levels and weeks of cover across all SKUs
• Identify products at risk of selling out or overstocking
• Ensure stock is aligned with sales velocity, geography and seasonality


Supply Chain & Delivery Tracking

• Track inbound shipments and highlight delays or risks to availability
• Ensure stock arrives at the right time for seasonality and demand peaks
• Work closely with suppliers and internal teams to resolve issues


Merchandising & Commercial Planning

• Work with the sales team to build a long-term view of stock requirements
• Ensure stock supports planned promotions, deal events and peak periods
• Help prevent:
• Overstock (cash tied up)
• Stockouts during key selling periods
• Late arrivals missing seasonal demand

Reporting & Insights

• Provide clear weekly reports on:
• Stock health
• Forecast vs actual performance
• UK vs EU stock allocation
• Key risks and opportunities
• Recommend actions to improve availability and efficiency


Requirements

• Experience in inventory planning, merchandising or supply chain (ecommerce preferred)
• Strong analytical skills (Excel / Google Sheets essential)
• Experience working with sales forecasts and stock allocation across regions
• Ability to interpret data and make commercial recommendations
• High attention to detail and organisation



Highly Desirable

• Experience with Amazon EU (UK + DE + EU5 markets)
• Understanding of cross-border inventory and fulfilment (FBA / EFN / PAN-EU)
• Experience with AI and tools like Linnworks or inventory systems
• Background in consumer goods or fast-moving products


What Success Looks Like

• Minimal stockouts across UK and EU markets
• Efficient stock allocation between regions
• Reduced overstock and excess inventory
• Stock aligned with seasonality, demand and promotions
• Clear visibility of risks before they happen

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0150
Total Execution Time  0.0163
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,502,976 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Inventory-Planner-Merchandiser-Ecommerce-1611906
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0094 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1611906
 LIMIT 1 
0.0009   SELECT *
FROM `employers`
WHERE `employer_id` = 918744
 LIMIT 1 
0.0009   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1611906
AND `misc`.`idIS NULL 
0.0010   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-15',ej.date_added) duration_daysDATEDIFF('2026-04-15',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-04-15',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1611906' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1611906 
0.0008   UPDATE employer_jobs SET hit_counts '***Mar-27-2026=3***Mar-28-2026=2***Mar-29-2026=388***Mar-30-2026=91***Mar-31-2026=573***Apr-01-2026=103***Apr-02-2026=17***Apr-03-2026=6***Apr-04-2026=2***Apr-05-2026=2***Apr-06-2026=1***Apr-08-2026=2***Apr-09-2026=3***Apr-10-2026=4***Apr-11-2026=1***Apr-15-2026=2' WHERE job_id'1611906'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Mar-2026=1057***Apr-2026=143' WHERE job_id'1611906'  
0.0012   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1611906' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1611906 
0.0016   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '918744'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)