Four requests shipped and verified on https://toolsnaka.store · 2026-09-21
PIN code now decides the locationMoglix name fully removedCatalog import entry addedToolNaka delivery, locked by the factory
1. Location — it now understands your PIN code
You were right: the app never used your PIN code. City/state were typed by hand and the dashboard fell back to a hardcoded '411001 — Pune' whenever they were blank, which is why you always saw Pune.
New endpoint GET /api/pincode?code=411001 resolves the area, city, district and state for any Indian PIN code.
It is cache-first: the first lookup is answered from the free India Post directory and stored in the PincodeCoverage table, so repeat lookups are instant and offline-safe.
On the signup form, typing 6 digits auto-fills City and State and shows e.g. "Detected: C D A (O), Pune, Maharashtra" — you can still edit it.
The hardcoded 411001 / Pune placeholder is gone; if the PIN is missing it now says "Set your PIN".
411001 -> Pune City, Maharashtra
400001 -> Mumbai, Maharashtra
110001 -> New Delhi, Delhi
302001 -> Jaipur, Rajasthan
2. "Moglix" name removed
Every trace of the third-party brand is gone — not just the visible label:
User-visible: the product form label "Category (Moglix)" is now "Category".
Evidence: a scan of the JavaScript your site actually serves returns 0 occurrences of "moglix" (was 12 in the source).
3. Catalog — import a file straight from the Catalog tab
The Product Catalog tab now has an Import button. It opens a panel to upload .xlsx / .xls / .csv with quantity, price, GST and the rest; existing products update and new rows are added.
A Download template link gives the expected columns, and the panel points to Inventory › Automatic stock sync from a link for hands-free daily updates.
This complements the two paths already built: the Inventory import card and the live spreadsheet sync.
4. Delivery — the factory decides, and the choice is locked
Exactly as you described: the factory chooses who delivers, and if it chooses ToolNaka's rider the seller cannot change or edit that.
Step
Behaviour
Factory checkout
A "Delivery by" choice: Seller delivers or ToolNaka delivers. The note reads "Locked once the order is placed — the seller cannot change it."
ToolNaka chosen
A delivery job is created immediately (TN-DL-000001, status requested) and locked to the order (lockedBy = factory).
Seller tries to edit it
Rejected (403): "This order is delivered by ToolNaka. The seller cannot change it."
Seller chosen
No job is created. The seller can create their own delivery, advance it (picked up / in transit / delivered), or hand it over to ToolNaka. After a handover they are locked out too.
ToolNaka ops
An admin Deliveries console: assign a rider (name + phone) and move the status through picked up → in transit → delivered, with a timeline of events.
Riders are recorded as data (name + phone) and assigned by ToolNaka operations — no rider login accounts, so the earlier role cleanup stays intact.
5. Verification
Delivery rules — local run against the live database (11/11)
PASS order placed with toolsnaka delivery mode=toolsnaka
PASS delivery job auto-created status=requested handledBy=toolsnaka lockedBy=factory
PASS vendor CANNOT edit a ToolNaka delivery 403
PASS ops can assign a rider 200 (rider=Ravi)
PASS ops can mark delivered 200
PASS order placed with vendor delivery mode=vendor
PASS no delivery auto-created for vendor mode
PASS vendor creates their own delivery 201 handledBy=vendor
PASS vendor can advance their own delivery 200
PASS vendor hands off to ToolNaka 200
PASS vendor locked AFTER handoff 403
=== 11/11 checks passed ===
Live on production (9/9)
PASS pincode 411001 -> Pune Pune City / Maharashtra
PASS pincode 302001 -> Jaipur Jaipur / Jaipur / Rajasthan
PASS no "Moglix" in the live bundle occurrences=0
PASS new UI strings in the bundle 7/7 (Deliveries, Import your product catalog, Seller delivers,
ToolNaka delivers, Locked once the order is placed, ...)
PASS live users can log in
PASS order with ToolNaka delivery mode=toolsnaka
PASS delivery job created status=requested handledBy=toolsnaka
PASS vendor blocked from editing 403
PASS ops can assign rider 200
=== 9/9 live checks passed ===
All test data was deleted after each run: the database holds your 4 accounts, 1 seller, 0 stray orders or deliveries.
6. How to use it
I want to…
Do this
See my real area
Type your 6-digit PIN on signup — City and State fill in automatically. (Existing accounts: update the PIN in your profile.)
Choose who delivers
Factory › cart › Delivery by › Seller delivers or ToolNaka delivers.
Deliver or hand over as a seller
Vendor dashboard › Deliveries › Create my delivery, or Hand to ToolNaka.
Run ToolNaka deliveries
Admin › Deliveries › enter rider name/phone › Assign, then Picked up / Delivered.
Add a catalog in bulk
Vendor › Product Catalog › Import, or Inventory for the sync link.
7. Remaining choices
Delivery fee / distance are recorded on the job but not yet charged to the order — say the word and I'll add a per-zone delivery fee to the checkout total.
Riders have no login of their own (ops assigns them). If you want riders to update status from their phones, that needs a small rider login — tell me and I'll add it.
PIN lookup depends on the free India Post service the first time; every code is cached in your own database afterwards, so the app does not depend on it in normal use.