> ## Documentation Index
> Fetch the complete documentation index at: https://docs.loyalty.xeniamoments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Glossary

> Terms used across OnlinePOS, Nexi and REKOM in this integration.

<Note>
  Code-style names in this glossary (`calculationId`, `lineDiscountCode`, `terminalId`, …)
  are directional: they identify the information, not an agreed field name. REKOM adopts
  OnlinePOS's default names.
</Note>

| Term | Meaning |
| - | - |
| **Backoffice** | OnlinePOS's web administration where venues, terminal setups, campaigns and integrations are configured. |
| **BAX / BAX ID** | The merchant/terminal agreement number at Nets/Nexi. One BAX corresponds to one OnlinePOS terminal setup and is used as the Nexi Engage `storeId`. |
| **BAXI** | Nets' integration library and protocol between a Windows ECR and a Viking payment terminal. Actions used here: 114 `registerstore`, 193 `getasset`. |
| **Calculation GUID / `calculationId`** | UUID generated by POS/mPOS for each basket calculation. Travels in the basket request, the sale event and as a meta attribute on the order in the REST API. The only correlation key between OnlinePOS and REKOM. |
| **Campaign ID** | Identifier of a discount campaign in the POS environment. Used by staff discounts; loyalty discounts do not reference one, they carry the discount code. |
| **`cardref`** | The card reference the terminal passes to Nexi Engage in `getasset`; the only card-related value involved in the lookup. |
| **Cash register ID** | OnlinePOS identifier of a terminal setup (till), `cash_register_id` in the REST API, `cashRegisterId` in the loyalty payloads. |
| **DAM** | Nexi's gateway between Viking terminals and Nexi Engage. Lookups through DAM require the store to be enrolled. |
| **Discount code (`lineDiscountCode`)** | Predefined, semantic string identifying the catch-all third-party-loyalty discount type in POS. Carried on every loyalty discount instead of a campaign ID. |
| **ECR** | Electronic cash register; the POS application driving the terminal. |
| **Error 212** | Nexi Engage response "Store already registered" to a repeated `registerstore`; harmless and ignored. |
| **`getasset`** | BAXI action 193: look up the loyalty ID for a card. |
| **Idempotency key** | Header that lets the receiver recognise a retry of the same call. Equals the calculation GUID in this integration. |
| **Loyalty ID / `loyaltyId`** | Opaque, PII-free identifier of a REKOM member as returned by Nexi Engage. Called `memberID` in Version 1. |
| **Member price** | REKOM's practice of expressing a member price as an amount discount with text such as "Member price", so the benefit is visible as loyalty discount data. A price update (`overrideUnitPrice`) remains permitted. |
| **Meta attribute** | Key–value data OnlinePOS stores on an order and exposes through the REST API. Carries the calculation GUID; proposed to also carry the loyalty ID and loyalty status. |
| **mPOS** | OnlinePOS's Android point of sale, paying through Softpay. |
| **Nexi Engage** | Nexi's card-linked member recognition service, formerly Storebox. |
| **Note line** | A receipt line printed under a product carrying the discount text and value; the existing OnlinePOS mechanism, no new layout. |
| **Order tag** | Free-form tag OnlinePOS stores on an order; used for the loyalty ID in Phase 1, like the Nightpay ID. |
| **POS** | OnlinePOS's Windows point of sale, paying through BAXI and a Viking terminal. |
| **Prepurchase** | The BAXI step that reads the card before the amount is authorised; the loyalty lookup and basket call happen inside this window, and the single approval follows on the final amount. |
| **PSAM** | The secure application module in a Nets terminal; mentioned only because terminal-side enrollment and lookups run against it. Not configured by either party here. |
| **Receipt footer text** | Free-text field at the bottom of the receipt used to describe order-level benefits; informational, not in reporting (`receiptFooterText`). |
| **`registerstore`** | BAXI action 114: enroll the store (BAX) with Nexi Engage. Run at every terminal startup under Option 1. |
| **REKOM backend** | The REKOM service that OnlinePOS integrates with, at `loyalty.xeniamoments.com` (TBC). One endpoint for basket calculation, one for the sale event. |
| **REST API (OnlinePOS)** | The existing OnlinePOS API REKOM already consumes for products, campaigns and transactions; used here for the sync and for campaign provisioning. |
| **Sale event** | The single post-sale call `POST /v1/onlinepos/sale` per calculation. |
| **Softpay** | Software payment on Android used by mPOS; talks to Nexi Engage directly, no store enrollment. |
| **`storeId`** | Nexi Engage's identifier for an enrolled store; free text bound one-to-one to a BAX. Set equal to the BAX ID. |
| **Supersession** | A new calculation that replaces an earlier one for the same basket (`supersedesCalculationId`), used when the basket changes after calculation. |
| **TID** | Terminal ID of a payment terminal. A terminal setup (BAX) can have several TIDs; all are enrolled at startup. Sent as `terminalId` in the loyalty payloads. |
| **Venue** | An OnlinePOS customer entity (a bar or site); `venue` in the REST API, `venueId` in the loyalty payloads. Also REKOM's physical location. |
| **Viking** | The Nets/Nexi terminal family used with BAXI on Windows POS. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.