Special Orders and Mixed Fulfillment
Hyvä POS is in closed beta
Hyvä POS is currently in a closed beta (pilot phase) with a small group of merchants. It is not yet generally available: the App Store release follows the pilot, and features and configuration may still change - possibly in backwards-incompatible ways - before the general release. Want to take part? Sign up at hyva.io/pos.
Not everything in a cart leaves the store today. PRO lets one sale mix what the customer takes now, what ships to their home, and what they will pick up later - and gives the store a single queue that tracks everything still owed to a customer.
Per Line, Not per Order
Each cart line carries its own fulfillment: take now, ship to an address, or pickup later. The customer pays once; the order records the split, and Magento handles each part the way it should - shipped lines create a shipment, pickup-later lines join the location's pickup queue. At-checkout shipping is currently experimental: enable it per device under Settings → Advanced, then configure carriers in the shipping settings.
Admin staff see the split too: every mixed order gets a plain-text summary comment in its history (take now / ship to / pickup later, with locations and carriers), so nobody has to decode shipping assignments to understand what was agreed at the counter.
Special Orders: Sell What Is Not on the Shelf
The size they need is out of stock, but the warehouse or the supplier has it. Sell it anyway: the register warns about the stock, takes payment, and the line becomes a pickup-later item. The cashier can record an expected-availability date in the same step - it is stored on the Magento order, so anyone answering the phone can see when the goods should arrive.
When a sale leaves items to collect, the register can auto-print a slim pickup slip with a Code-128 barcode of the order number. The customer brings the slip; staff scan it in the Orders search and land on that pickup. The slip is off by default: enable it on the device under Settings → Receipts → Auto-Print Pickup Slip. It prints on the configured thermal receipt printer alongside the receipt, only for sales that contain pickup-later lines - online pickup orders are placed on the storefront, so no slip exists for those.
One Queue, Three Answers
The pickup queue on the Orders tab shows everything awaiting collection at the location - online buy-online-pick-up-in-store orders and POS special orders alike, each row marked with its origin. Every entry is classified by one question: can this customer be served right now?
- Ready: every outstanding item is coverable from stock on hand at the location's source. Hand it over.
- Awaiting stock: at least one line is short. Nothing to do yet.
- Stale: awaiting stock for 14 days or more. These are the ones worth a phone call - to the supplier or to the customer.
The classification is computed live against the location's MSI source, so a delivery booked into stock moves orders from awaiting to ready without anyone touching them. Filter pills switch between the slices, and a ready-count badge tells cashiers at a glance whether anyone can be served.
Completing a Pickup
Handover is one action on the register: it creates the shipment against the pickup location's source (so MSI deducts stock from the right place), flips the order to your configured post-pickup status, and stamps a comment recording who completed it and where. Completions are visible in the Magento admin on the order grid.
Works with Adobe's in-store pickup out of the box: if back-office staff already clicked Notify Order is Ready for Pickup in the admin (which creates the shipment early), the register detects that, completes the handover without creating a duplicate shipment, and suppresses the redundant "ready for pickup" email - the customer is already at the counter.
What Gets Processed
The feature works entirely on Magento orders: fulfillment assignments and delivery addresses per line, the expected-availability date, the pickup-location reference, shipments, and a completion record per handed-over pickup. There is no separate order pool to reconcile - a special order is a Magento order from the moment it is placed.
Configuration
All under Stores → Configuration → Hyvä POS → Terminal Defaults → Pickup Defaults, overridable per location:
- Auto Ready: Backorder Pickup: a scheduled job flips backorder pickups to ready as soon as stock arrives at the source.
- Auto Ready: Online In-Store Pickup: online pickup orders count as ready on creation (for stores that pick from the shop floor).
- Post-Pickup Order Status: the order status applied after handover; empty keeps whatever Magento set.
- Default Pickup Queue Filter: the slice the queue opens with. Like every pushed default it is a suggestion until you lock it - Lock Settings → Lock Pickup Queue Filter makes it a rule the register cannot override.
The pickup-slip auto-print switch lives with the other receipt settings on the register.
On the device, under Settings → Checkout:
- Show "Create pickup" button turns the checkout entry point on. With it off, the register never offers to stamp a sale as pickup-later.
- Only when out-of-stock items are in the cart keeps the button off routine sales and surfaces it when a line is short.
Creating pickup-later lines also needs a Shipment Source on the device (Settings → Store Configuration → POS Inventory). Without one there is no source to hold the goods against, so the register hides the option rather than placing an order it could never complete; a PRO terminal missing only this says so and points at the setting. Activating a terminal against a location fills the source in for you.
Offline
Placing a mixed or special order offline works like any offline sale - the fulfillment split rides along in the queued order. The pickup queue itself is a live view of Magento stock and orders, so browsing and completing pickups needs a connection.