Order Online, Pick Up in Store, for a Portuguese Retailer
Designed and built a clickable head office console for a Lisbon retailer of books, stationery and toys with 22 stores: an SLA dashboard that shows whether every store keeps its pickup promises, every order with its lines, payments and pickup history, an exceptions queue shared with the stores, and refunds for missing items with approval limits.
Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.
SLA dashboard, all orders, order detail with 5 tabs, exceptions and refunds. Every one of the 30 demo orders opens its own detail page, and the store filter works on every screen.
Orders, queue, late orders, order-to-ready minutes for slots and ready-in-2-hours, fill rate, uncollected, curbside wait and capacity used per store, with late or below-target cells highlighted.
Refunds for not-found lines up to €50 go out automatically. Anything above that, and every goodwill refund, waits for approval by a different user from the one who created it.
30 orders across counter, locker and curbside pickup, 24 products, 20 shoppers, 16 refunds and 12 exceptions, set on a back-to-school Wednesday.
Tinteiro e Pião's website showed one national stock figure, so shoppers ordered books their local store did not have. Orders reached stores as emails that staff printed, a missing item meant a phone call the shopper often missed, nobody knew which orders were ready, and refunds for missing lines were worked out by hand at head office days later. About one order in six was short or late.
Postigo covers click and collect from the shopper's order to the counter handover. In the head office console, operations staff see whether each store is keeping its pickup promises today, open any order with its lines, substitutions, payments and pickup history, clear exceptions with the stores and approve refunds within fixed limits.
Click and collect joins the shopper's checkout, a store's shelves and staff, and head office's money and policy. In Portugal it also has to respect consumer, payment, invoicing and data protection rules on every order.
Each order promises a pickup slot or "ready in 2 hours". Without a view across stores, head office could not tell which stores were running late, short of stock or at full capacity until shoppers complained.
A missing book can be substituted, refunded or left for the shopper to decide. Each choice changes what the shopper pays, and the shopper must never pay more than they ordered for the line.
Shoppers pay by card with 3-D Secure, MB WAY, Multibanco reference or at the store. A Multibanco refund needs the shopper's IBAN, a pay at store order has no online payment to refund, and credit notes must come from AT-certified billing software.
A shopper can send someone else to collect, and some items need an ID check at handover. The GDPR and Portugal's Law 58/2019 mean storing only what fulfilment needs: a name and phone, never an ID document number.
Mapped 8 roles, 40 screens across the shopper flow, the store picking app and the head office console, and the data model for stores, slots, orders, lines, substitutions, payments, refunds, handovers, lockers and exceptions. Wrote down the rules the design follows: the GDPR and Law 58/2019, the 14-day withdrawal right under Decree-Law 24/2014, pre-contract information, AT-certified invoicing with ATCUD, the Livro de Reclamações, PSD2 strong customer authentication and the European Accessibility Act.
Built the head office console's 5 key screens on a production dashboard kit: the SLA dashboard with KPI cards, the stores table, orders by hour against slot capacity and a reduce capacity modal, all orders with filters and a quick view panel, order detail with lines, payment, pickup, notifications and timeline, the exceptions queue with a comment thread, and refunds with approve, reject and retry. All actions run on local state.
The 12 shopper screens and 11 picking app screens for Zebra handhelds, and the console's store settings, calendar, reports and settings pages. Integration with card payments (Adyen or Stripe), MB WAY and Multibanco through SIBS, per-store stock sync, the AT-certified till, Cleveron or Quadient lockers, SMS, email and push. Staff sign-in by role and an append-only audit log.
On time ready means ready by the promised time, and each KPI is compared with the same weekday last week. Late or below-target cells are highlighted in the stores table, and a store at full capacity can have today's capacity reduced in one step.
Approve is blocked for the refund's creator, a Multibanco refund sends the shopper a secure form for their IBAN, and credit notes come from the certified billing system rather than from Postigo.
Each line carries the shopper's preference: ask me, allow a similar item, or don't substitute. A substitute is never priced above the ordered item, and the order shows the price difference refunded and the time the shopper must answer by.
Phone numbers are masked in the console, a pickup person is stored as a name and phone only, and an ID check records that it passed, not the document. Changing the pickup person issues a new code version and revokes the old one.

Designed and built a clickable till and back office for a chain of 9 hardware and home stores in Gran Asunción: a tablet till that keeps selling when the internet drops, sells cable by the metre and nails by the kilo, records every approval, and issues electronic invoices through Paraguay's SIFEN system.

Designed and built a clickable inventory sync hub for a Kuala Lumpur sporting goods retailer with 14 stores, a 3PL warehouse, a web shop and two marketplaces: one stock ledger for every variant at every location, an explained available-to-promise number per channel, oversell and conflict alerts, and stock adjustments with four-eyes approval.
Enterprise Software Engineering - Human + AI
Contact Us
© 2026 - Copyright. All Rights reserved Oceanlab
Location
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
Enterprise Software Engineering - Human + AI
Contact Us
Locations
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
© 2026 - Copyright. All Rights reserved Oceanlab