Point of sale
FINNS runs Shiji as its POS across its bars, restaurants and retail points (the brief notes the POS choice might change). This page records the two jobs the POS has in the brief and the integration shape we expect.
Two jobs for the POS
Section titled “Two jobs for the POS”flowchart LR classDef ours fill:#13686C,stroke:#0B4A4D,color:#ffffff classDef ext fill:#F3ECDF,stroke:#B9A88B,color:#12191B classDef person fill:#E9724C,stroke:#C55A37,color:#ffffff g(["Guest"]):::person -- "shows payment QR<br/>or taps wristband" --> pos["Shiji<br/>workstation"]:::ext pos -- "1 · FINNS credit tender:<br/>authorise and capture" --> core["Core"]:::ours pos -- "2 · closed check:<br/>items and total" --> core core -- "earn points<br/>on spend" --> core pos -. "sales detail" .-> fin["NetSuite"]:::ext
- Spend FINNS credit: the guest pays with a QR from the app (or, later, an NFC wristband). The POS treats it as a FINNS Credit tender: it asks the platform to authorise the amount, then captures it when the check closes.
- Attribute spend: closed checks tied to a member let points be earned on in-venue spend, and give the CDP the purchase history it needs.
A likely shape for paying with credit
Section titled “A likely shape for paying with credit”For discussion. The QR would follow the check-in pattern: short-lived, single-use, opaque, and only meaningful to core.
sequenceDiagram
autonumber
actor G as Guest
box rgb(227,244,243) FINNS platform
participant APP as Guest app
participant CORE as Core
end
box rgb(243,236,223) Venue
participant POS as Shiji
end
G->>APP: Pay with FINNS credit
APP->>CORE: Issue payment QR
CORE-->>APP: One-time QR (short-lived)
G->>POS: Cashier scans QR, total IDR 450,000
POS->>CORE: Authorise (QR, check id, amount)
Note over CORE: nowrap:Consume QR, hold credit
CORE-->>POS: Approved (auth id)
POS->>CORE: Capture (auth id) when check closes
Note over CORE: nowrap:Debit credit ledger,<br/>earn points on spend
CORE-->>POS: Captured
APP->>CORE: Refresh balances
Things to settle
Section titled “Things to settle”| Topic | Note |
|---|---|
| Integration point | To be confirmed with Shiji: whether a transaction API or a workstation extension carries the tender |
| Offline outlets | What happens to tenders when the network or core is down: refuse, or allow a capped offline amount |
| Voids and refunds | Reversing a captured tender back to credit |
| Earning on spend | Earn rate by tier or category (brief §4.5), and whether earning applies to credit spend only or all attributed spend |
| Wristbands | The brief’s NFC pilot needs reader hardware at each workstation and a token-to-member link |
Internal and confidential. Share partner sections only as partner builds (pnpm build:partner).

