Built to keep running · Custom-built
Scan-to-ship packing for a food importer's warehouse
A food importer ships chilled and frozen orders every day through several couriers. Packers now scan each item, and the right shipping label prints the moment an order is complete. Behind it, courier PDFs are taken apart and matched to orders automatically, and the whole system is backed up daily and failed over every week.
The problem
The company imports food and ships orders across Japan, many of them chilled or frozen, through more than one courier. Every order had to be packed with the right items and sent with the right shipping label.
The couriers do not hand over labels one order at a time. They provide PDFs: sometimes a single file with every label for the day, sometimes a pile of individual ones, depending on the courier. Someone had to work out which label belonged to which order.
The packing line is also the part of the business that cannot stop. If the server failed on a busy morning, orders would not go out.
What we did
We built a packing system that runs on a server in the warehouse. Packers scan each item as it goes into the box, and when the order is complete the system prints its shipping label. The rest of the work happens where the packers do not see it.
- PDF manipulation. Office staff upload the day’s order data and the couriers’ label PDFs. The system splits the PDFs into single labels, reads the order number out of each one, matches it against the order data and attaches it to the right order. Labels for in-store pickup are generated by the system itself. Anything that does not match is reported before packing starts, not discovered at the door.
- Printing pushed to the station. When an order is complete, the server sends the label to a small application on the packing station, which prints it on that station’s printer. Nobody opens a file or chooses a printer.
- Automatic backups. At the end of the day the database and every label file are packed into a single archive on a backup drive, checked, and old archives pruned. Each backup reports to an external monitoring service, so a missed or failed backup raises an alert instead of going unnoticed.
- Weekly failover. A second, identical server stands by. Every week the standby is restored from the latest backup and takes over, so a failover is something the warehouse does routinely, not something tried for the first time during an outage.
- Remote care without opening the network. The servers are reachable for updates and support over a private virtual network, with no ports opened on the warehouse’s router.
What changed
Matching labels to orders is no longer anyone’s job, and the label that prints is the one for the box on the bench. And because the backup is restored onto the other server every week, the company knows its recovery works, because it has already done it.