Table: cashiers
Operators who process transactions at the point of sale.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
Unique identifier of the cashier |
|
|
YES |
STRING |
Display name of the cashier |
Table: channels
Sales channels through which orders can be placed.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
Unique identifier of the channel |
|
|
YES |
STRING |
Display name of the channel |
|
|
YES |
STRING |
Type of channel (e.g., cash register, mobile ordering, kiosk) |
Table: merchants
Business entities. All data is isolated by merchant.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
Display name of the merchant/business |
Table: orders
Transaction records containing order totals and metadata.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
Unique identifier of the order |
|
|
YES |
STRING |
Human-readable short order ID for receipts/display |
|
|
YES |
STRING |
ID of the user who created the order |
|
|
YES |
STRING |
ID of the cashier who processed the order |
|
|
YES |
STRING |
ID of the sales channel where order was placed |
|
|
YES |
STRING |
ID of the POS terminal/configuration |
|
|
YES |
STRING |
ID of the physical device used |
|
|
YES |
STRING |
Transaction type (purchase or refund) |
|
|
YES |
STRING |
Reference to original order (for refunds) |
|
|
YES |
STRING |
ISO currency code (e.g., EUR, USD) |
|
|
YES |
NUMERIC |
Final order total including tip, deposit, and discounts |
|
|
YES |
NUMERIC |
Total gross amount subject to VAT |
|
|
YES |
NUMERIC |
Total VAT/tax amount |
|
|
YES |
NUMERIC |
Total net amount (gross minus tax) |
|
|
YES |
NUMERIC |
Order subtotal before tip and deposits |
|
|
YES |
NUMERIC |
Tip amount added to the order |
|
|
YES |
NUMERIC |
Total discount amount applied |
|
|
YES |
STRING |
Voucher/promo code applied to the order |
|
|
YES |
NUMERIC |
Container deposit charged (bottles, glasses) |
|
|
YES |
NUMERIC |
Value of deposits returned to customer |
|
|
NO |
ARRAY |
Additional order attributes/flags |
|
|
YES |
TIMESTAMP |
When the order was created |
|
|
YES |
TIMESTAMP |
When the record was loaded into the data warehouse |
Table: payments
Payment transactions linked to orders. An order can have multiple payments (split payments).
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
ID of the associated order |
|
|
YES |
STRING |
Unique identifier of the payment |
|
|
YES |
NUMERIC |
Amount of this payment |
|
|
YES |
STRING |
Payment method used (e.g., cash, card terminal, online payment) |
|
|
YES |
STRING |
ID of the payment terminal/device used |
|
|
YES |
STRING |
Payment processor handling the transaction |
|
|
YES |
STRING |
Status of the payment (e.g., success, failed, canceled) |
|
|
YES |
STRING |
Type classification of the payment |
|
|
YES |
STRING |
Card brand (e.g., Visa, Mastercard, Maestro) |
|
|
YES |
STRING |
Card funding type (debit or credit) |
|
|
YES |
STRING |
How the card was read (e.g., chip, contactless, swipe) |
|
|
YES |
STRING |
Country of card issuance |
|
|
YES |
STRING |
Company/customer name for invoice |
|
|
YES |
STRING |
Email address for invoice delivery |
|
|
YES |
STRING |
Additional invoice details/notes |
|
|
YES |
STRING |
Code of prepaid/loyalty card used for payment |
|
|
YES |
STRING |
ISO currency code |
|
|
YES |
STRING |
Voucher code associated with payment |
|
|
YES |
TIMESTAMP |
When the record was loaded into the data warehouse |
Table: pos
Point of Sale terminal configurations.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
Unique identifier of the POS configuration |
|
|
YES |
STRING |
Display name of the POS terminal |
Table: products
Order line items representing products sold in orders.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
ID of the associated order |
|
|
YES |
STRING |
Line item type indicator |
|
|
YES |
STRING |
Unique identifier of the product |
|
|
YES |
STRING |
Product type (e.g., food/beverage, ticket, voucher) |
|
|
YES |
STRING |
Display name of the product |
|
|
YES |
STRING |
Merchant-defined custom product identifier |
|
|
YES |
STRING |
EAN/barcode of the product |
|
|
YES |
STRING |
Cost centre for accounting |
|
|
YES |
STRING |
ID of the ledger entry |
|
|
YES |
STRING |
Ledger group code for accounting categorization |
|
|
YES |
STRING |
Display name of the ledger group |
|
|
YES |
STRING |
Category within the ledger group |
|
|
YES |
STRING |
Cost centre associated with the ledger group |
|
|
YES |
NUMERIC |
Unit price of the product |
|
|
YES |
NUMERIC |
Discount amount applied to this line |
|
|
YES |
NUMERIC |
Gross amount subject to VAT |
|
|
YES |
NUMERIC |
VAT/tax amount |
|
|
YES |
NUMERIC |
Net amount (gross minus tax) |
|
|
YES |
NUMERIC |
Cost/purchase price of the product (for margin calculation) |
|
|
YES |
NUMERIC |
Number of units sold |
|
|
YES |
STRING |
Ticket provider (for ticket products) |
|
|
YES |
STRING |
Type ID from the ticket provider |
|
|
YES |
STRING |
Order ID from the ticket provider |
|
|
YES |
NUMERIC |
VAT percentage rate |
|
|
NO |
ARRAY |
Product tags (name/value pairs) |
|
|
YES |
TIMESTAMP |
When the order was placed |
|
|
YES |
STRING |
Reduction card code (for voucher products) |
|
|
YES |
STRING |
Brand of external gift/voucher card |
|
|
YES |
STRING |
Provider of external card |
|
|
YES |
TIMESTAMP |
When the record was loaded into the data warehouse |
Table: tickets
Individual ticket barcodes for ticket-type products.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
ID of the associated order |
|
|
YES |
STRING |
ID of the ticket product |
|
|
YES |
STRING |
Ticket provider system |
|
|
YES |
STRING |
Type identifier from the ticket provider |
|
|
YES |
STRING |
Order reference from the ticket provider |
|
|
YES |
STRING |
Unique barcode/QR code for the ticket |
|
|
YES |
STRING |
Human-readable description of the ticket |
Table: users
Users with access to the system.
|
Column |
Required |
Type |
Description |
|---|---|---|---|
|
|
YES |
STRING |
Unique identifier of the merchant |
|
|
YES |
STRING |
Unique identifier of the user |
|
|
YES |
STRING |
Display name of the user |
Notes
-
All monetary fields use
NUMERICtype with 2 decimal precision -
merchant_idis the primary key for data isolation across all tables -
ordered_atrepresents when the business transaction occurred -
An order can have multiple payments (split payment support)
-
The
productstable contains order line items, not catalog definitions
Public ERD