Overview
Introduction
For a rapidly growing eBay dropshipping operation, I built an internal tool that
tracked inventory across listings and automated packing slip generation. The system
pulled data directly from the eBay API and centralised it in a PHP/MySQL application
designed for daily use by the fulfilment team.
The goal was simple: make sure that as order volume grew, the business wouldn’t drown
in manual inventory checks and label creation. Automation turned repetitive work into
a few clicks per batch.
Background
Context
Dropshipping on eBay has thin margins and high operational risk. Common pain points
for sellers include:
- Accidentally selling items that are out of stock at the supplier.
- Spending hours copying order details into packing slip templates.
- Losing track of which orders have been printed, packed, or shipped.
The client was scaling up from side-project to full-time business, with revenue
approaching tens of thousands of dollars per month. The old “spreadsheet + copy-paste”
approach wasn’t going to scale.
Challenge
Problem
The business needed a way to:
- Keep eBay listings aligned with actual supplier inventory levels.
- Generate accurate packing slips quickly for each order batch.
- Reduce human error in addresses, SKUs, and quantities.
- Handle increasing daily order volume without adding more staff.
The challenge was to create a lightweight automation layer that sat between eBay and
the fulfilment desk — robust enough for daily use, simple enough for non-developers.
Execution
Implementation Highlights
1) eBay inventory tracking
-
Integrated with the eBay API to periodically pull listing and order data into a
MySQL database.
-
Modelled inventory at a SKU level, mapping eBay listings to underlying supplier
products.
-
Implemented logic to flag low-stock or out-of-stock items, helping the client
adjust listings before oversells happened.
2) Packing slip automation
-
Built a PHP interface where the user could select a date range or order batch and
generate packing slips in bulk.
-
Designed a print-friendly packing slip layout with key fields: buyer address, order
details, SKUs, and any special notes.
-
Tracked which orders had packing slips printed to avoid duplicates and confusion in
the packing area.
3) Operations-friendly UI
-
Created simple list and filter screens for orders and inventory, optimised for quick
scanning rather than “analytics dashboards”.
-
Added indicators for “ready to print”, “printed”, and “shipped” statuses to give a
clear view of the daily queue.
-
Kept interactions keyboard-friendly to minimise friction during high-volume days.
4) Stability & maintainability
-
Used cron jobs to schedule eBay sync operations, spreading calls to respect API
limits.
-
Logged API failures and data discrepancies so issues could be spotted early.
-
Documented configuration and workflows so the client could operate the system
without daily developer involvement.
The tool quietly handled the “boring but critical” work: tracking stock and producing
paperwork, so the client could focus on listings, pricing, and customer messages.