Skip to content

FAQ

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.

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.

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.

Yes. The full stack runs locally with Docker:

Terminal window
git clone https://github.com/timDeHof/scanpick.git
cd scanpick
cp .env.example .env
docker compose up --build

Open http://localhost and log in with worker-001 / 1234.

ComponentMinimum
Server2 CPU cores, 4 GB RAM
Disk10 GB for the database
OSLinux (preferred), macOS, Windows
DatabasePostgreSQL 16

For evaluation, the Docker Compose stack runs on any modern laptop.

No. ScanPick uses PostgreSQL 16 with EF Core + Npgsql features that are specific to PostgreSQL.

Recommended for production. Use nginx, Caddy, or Traefik for:

  • TLS/SSL termination
  • Rate limiting
  • Request logging

Standard PostgreSQL backup:

Terminal window
pg_dump -U scanpick scanpick > scanpick-backup-$(date +%Y%m%d).sql

Set up periodic backups via cron or your infrastructure’s backup service.

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.

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.

See the Licensing page for current pricing.

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.

Contact [email protected] for refund inquiries.

ComponentVersion
.NET10 LTS
ASP.NET Core10
EF Core10
PostgreSQL16
React19
Expo / React NativeSDK 55 / RN 0.83
SignalR10
Tailwind CSS4

In development mode, a Scalar API explorer is available at the /scalar/v1 endpoint. The API uses OpenAPI for schema documentation.

Open an issue on the GitHub repository.

Same as bug reports — open a GitHub issue with the “feature request” label.