Skip to content

Product Design: Offline Cashier Systems — Terminal Abstraction Layer

About 229 wordsLess than 1 minute

Payment Mid-PlatformSystem Design

2024-10-08

In offline cashier scenarios such as supermarkets and chain restaurants, merchants often need:

  • To distinguish different checkout devices — user-scanned payment QR codes, POS terminals, barcode scanners, WeChat palm-pay devices, and so on
  • To distinguish orders by counter — large stores often have multiple checkout lanes
  • To break down sales by cashier at the same counter for attendance or performance

Online e-commerce payment logic usually stops at store level: the user pays under a store. That granularity is not fine enough for offline merchants’ operational needs.

So offline cashier systems introduce the terminal concept.

A terminal is an abstraction — not a physical entity, but a hub that connects multiple entities.

A terminal can provide:

  1. Pluggable binding of different payment device types
  2. Pluggable shared devices such as receipt printers and cloud speakers
  3. Unlimited merchant-defined terminals for different reconciliation needs and finer operations

Figure 1: The terminal as a middle layer, giving pluggable association between cashier devices and merchant stores

Terminal concept design 2

Figure 2: Terminals linked to cashier devices and shared devices

Terminal concept design 1

System screenshots

System screenshot 1

System screenshot 2

Changelog

8/27/26, 2:41 PM
View All Changelog
  • 94b04-Quote YAML frontmatter descriptions containing colons.on
  • 68955-Translate all 14 blog posts to English for Plume i18n.on
  • b7b2c-启用文章变更历史并升级主题配置。on
  • 525f9-补充开源项目卡片,并取消全部博客置顶on
  • edd67-chore: 置顶 AI 写真和终端设计文章,隐藏阶梯降频轮询文章on
  • b19ea-重构: 将文章迁移至 blog 目录,更新配置on
  • 5cafa-upon
  • d1a1c-upon
  • 1963f-upon
  • a10e0-upon