FAQ
General
Section titled “General”What is ScanPick?
Section titled “What is ScanPick?”ScanPick is a warehouse wave-picking system that digitizes paper-based picking operations. It consists of a .NET 10 API, a React 19 web dashboard for supervisors, and an Expo/React Native mobile app for floor pickers.
Who is ScanPick for?
Section titled “Who is ScanPick for?”Small-to-medium warehouses with 5–100 workers who want to improve picking efficiency without a multi-year ERP migration. ScanPick is designed to be deployed in a day, not a month.
Does ScanPick require internet access?
Section titled “Does ScanPick require internet access?”No. ScanPick is self-hosted on your own infrastructure. The API and database run on your network. Mobile devices connect via your local WiFi. The only external contact is license validation against the Keygen API.
Can I try it before buying?
Section titled “Can I try it before buying?”Yes. The full stack runs locally with Docker:
git clone https://github.com/timDeHof/scanpick.gitcd scanpickcp .env.example .envdocker compose up --buildOpen http://localhost and log in with worker-001 / 1234.
Deployment
Section titled “Deployment”What are the system requirements?
Section titled “What are the system requirements?”| Component | Minimum |
|---|---|
| Server | 2 CPU cores, 4 GB RAM |
| Disk | 10 GB for the database |
| OS | Linux (preferred), macOS, Windows |
| Database | PostgreSQL 16 |
For evaluation, the Docker Compose stack runs on any modern laptop.
Can I use a different database?
Section titled “Can I use a different database?”No. ScanPick uses PostgreSQL 16 with EF Core + Npgsql features that are specific to PostgreSQL.
Do I need a reverse proxy?
Section titled “Do I need a reverse proxy?”Recommended for production. Use nginx, Caddy, or Traefik for:
- TLS/SSL termination
- Rate limiting
- Request logging
How do I back up my data?
Section titled “How do I back up my data?”Standard PostgreSQL backup:
pg_dump -U scanpick scanpick > scanpick-backup-$(date +%Y%m%d).sqlSet up periodic backups via cron or your infrastructure’s backup service.
Operations
Section titled “Operations”How do workers authenticate?
Section titled “How do workers authenticate?”Each worker has a unique Worker ID and PIN. The PIN is stored as a BCrypt hash in the database. Workers log in on the mobile app or web dashboard with their Worker ID and PIN.
What happens if a worker scans the wrong barcode?
Section titled “What happens if a worker scans the wrong barcode?”The mobile app validates the scanned barcode against the expected product before queuing the scan. On mismatch, the app shows a red “Expected X” message and requires the correct scan.
Does ScanPick work offline?
Section titled “Does ScanPick work offline?”Yes. The mobile app queues scans in local storage when the API is unreachable. The queue drains automatically when connectivity returns. Server-side deduplication prevents duplicate scans.
Can I customize the pick path optimization?
Section titled “Can I customize the pick path optimization?”The current version (v1) sorts pick tasks alphanumerically by aisle → rack → shelf. Future versions will support coordinate-based path optimization.
Licensing
Section titled “Licensing”How much does ScanPick cost?
Section titled “How much does ScanPick cost?”See the Licensing page for current pricing.
What happens if I don’t renew?
Section titled “What happens if I don’t renew?”You have a 14-day grace period after license expiry. After that, the API stops serving requests. Your data remains in your database and is unaffected.
Can I get a refund?
Section titled “Can I get a refund?”Contact ttdehof@gmail.com for refund inquiries.
Technical
Section titled “Technical”What versions does ScanPick use?
Section titled “What versions does ScanPick use?”| Component | Version |
|---|---|
| .NET | 10 LTS |
| ASP.NET Core | 10 |
| EF Core | 10 |
| PostgreSQL | 16 |
| React | 19 |
| Expo / React Native | SDK 55 / RN 0.83 |
| SignalR | 10 |
| Tailwind CSS | 4 |
How is the API documented?
Section titled “How is the API documented?”In development mode, a Scalar API explorer is available at the /scalar/v1 endpoint.
The API uses OpenAPI for schema documentation.
How do I report a bug?
Section titled “How do I report a bug?”Open an issue on the GitHub repository.
How do I request a feature?
Section titled “How do I request a feature?”Same as bug reports — open a GitHub issue with the “feature request” label.