Skip to navigation

ViKING transaction types

Complete list of transaction types that a ViKING POS system (previously also known as 52RETAIL) can generate:

View as Markdown

You can view individual tags under each segment (for example the SalesTransaction segment) after the transaction types table.

Transaction codeDescriptionXML/JSON tag
01Article saleSalesTransaction - ItemSale
02Line VAT (only used when selling without VAT)
03Article transferred to next/other receipt (only used when splitting receipts)
04(not in use)
05Price guarantee information (only used when matching prices against competitors)
06Article discountDiscountTransaction - booked
07Non-returned article discountDiscountTransaction - Linked
08(not in use)
09End of receipt/Transaction
10Exchange stickers
13Additional article information
14Issued/redeemed vouchers
15-17(not in use)
18Data carrier for additional information about discount family/discount group number of a given discountDiscountTransaction – Info
19Data carrier for additional information about printed discount lineDiscountTransaction – Printed / Hidden
20ServiceSalesTransaction – GiftCertificate / Finance
21Receipt total – VAT information
22Receipt total – receipt statisticsReceiptTotal
23Payment that does not involve credit cards or foreign currenciesPaymentTransaction
24Payment with credit cardPaymentTransaction
25Payment with foreign currencyPaymentTransaction
26Payment with bonus points
27(not in use)
28Additional information on line levelTransactionMisc – AddInfo
31Header for reprintTransactionMisc – Reprint
32Additional information on order or receipt levelTransactionMisc – Customer / Requisition / Order
33Issued stampsTransactionMisc – Stamps
34Header for return lines on line levelTransactionMisc – Return
35Header for correction receiptTransactionMisc – Correction
36Header for receipt retrieved after parkingTransactionMisc – Retrieve
37Additional information for paymentsTransactionMisc – TenderAddon / FlexiAddon
38Manually registered text IDTransactionMisc – AddonText
39Drawer open (zero sale)TransactionMisc – DrawerOpen
40Transfer of cash statement (tender declaration) data to operatorTransactionMisc – TransferCashier
41Sign-on or sign-on attemptsTransactionMisc – SignOn
42Sign-offTransactionMisc – SignOff
43Adding or removal of moneyPaymentTransaction – TenderRemoval / TenderAdded
44Bag numberTransactionMisc – BagNumber
45Cash statement (tender declaration)PaymentTransaction – TenderDeclaration
46Balance inquiryTransactionMisc – BalanceInquiry
47Additional sales information about staff, special customer groups, club membership, bonus program,external customer ID, cardholder ID, bonus point balance from external system, or project numberTransactionMisc – Staff / Customer / Club / Bonus / ExternalCustId / CardHolderId
48Customer surveyTransactionMisc - CustomerAnalyze
49(not in use)
50(not in use)
51(not in use)
52(not in use)
53Stock adjustment/stocktakingStockTransaction – Taking / Discrepancy / Movement
54-60(not in use)
61Remarks (free text)TransactionText
62Credit card magnetic stripe track 2 information
63Voucher issue informationTransactionMisc – Voucher
64VAT transactionTransactionMisc – VAT
65Key (physical key for allowing action) activated/deactivated (see also 67)TransactionMisc – Key
66Voucher IDTransactionMisc – Goyada / Lotto / Blackhawk
67Key (card number scanned or entered for allowing action) activated/deactivated (see also 65)
68Agreed price (price list)
69-71(not in use)
72CMS (Cash Management System) dataTransactionMisc –
73-96(not in use)
97End of file for subordinate unit in arrangements where one controller controls another
98End of session (a session is a sales day in a store)
99End of file (always last record in file)
Transaction types without XML/JSON tags are currently not exported.

Tags under header segment

XML/JSON tagField typeExample valueDescription
SessionNum (4)2070The day’s session. A session is a sequential numbering of sales days. The session can be translated to an opening date.
StoreIdNum (4)5266ViKING store ID. All transactions generated in a store are tagged with the store’s ID.
ExternalStoreIdChar (10)Free textAlternative to ViKING store ID.
TillNoNum (3)1Till number in store.
ReceiptNoNum (4)1Individual till’s receipt number. Starts at 1 every day.
TimeStampNum (10)1414580210Linux timestamp in number of seconds since 1st January 1970 (also known as epoch).
TransactionTimeChar (25)2014-10-29T11:56:50+01:00XML/JSON-formatted timestamp of transaction start.
CashierNum (5)12345Operator that transaction is recorded on.
An operator (also known as a cashier) is responsible for the content of the till’s cash drawer. An operator can only be active on one till at a time, because there’s a one-to-one relation between the operator and the money in the cash drawer that the operator uses. Only operators can make cash statements on tills.
Multiple operators may use the same till during a day, but in that case they’ll remove their cash drawer and make a cash statement when they finish working at the till. When another operator begins working at the till, they’ll bring their own cash drawer.
SalesPersonNum (5)56789ID of salesperson that transaction is recorded on.
A salesperson doesn’t have personal responsibility for the content of the till’s cash drawer. Salespersons are typically used when multiple shop assistants share a till and log in to the till at the beginning of each sale.
Note that even though a till is used by multiple shop assistants who log in as salespersons, the till can still have a fixed operator, that is an operator (see Cashier in the previous) who’s permanently logged in to the till.
TrainingBooleanFlag that indicates if transaction was made in training mode and shouldn’t be recorded.
ReceiptCancelledBooleanFlag that indicates if transaction was canceled and shouldn’t be recorded.
ReceiptParkedBooleanFlag that indicates if transaction was parked and shouldn’t be recorded.
RefundReceiptBooleanFlag that indicates if transaction was a refund receipt. Only used where it’s not allowed to mix refunds and sales on the same receipt.
ExchangeReceiptBooleanExchange transaction between two means of payment. Stores typically use the exchange feature if a customer wants to buy cash with their credit card.

Tags under SalesTransaction segment

XML/JSON tagField typeExample valueDescription
TypeIdNum (2)1Transaction type ID (see list of transaction types).
SubTypeBin (8)0Eight bits, each with their own significance:
Bit
OFF
ON
0
Article number entered
Scanned
1
Sale
Return
2
Normal
Inquiry
3
Automatic
Manual (price)
4
Normal
Price correction
5
Normal
Self-scanned
6
Normal
Void
7
Normal
Cancel
BitOFFON0Article number enteredScanned1SaleReturn2NormalInquiry3AutomaticManual (price)4NormalPrice correction5NormalSelf-scanned6NormalVoid7NormalCancel
BitOFFON
0Article number enteredScanned
1SaleReturn
2NormalInquiry
3AutomaticManual (price)
4NormalPrice correction
5NormalSelf-scanned
6NormalVoid
7NormalCancel
SeqnoNum (4)1Line number in transaction.
TransactionTimeChar (25)2014-10-29T11:56:50+01:00XML/JSON-formatted timestamp of sale of article.
SalesTypeCharItemSalePossible values:
ItemSale
GiftCertificate
Finance
ArticleNumberNum (13)95400Article number of sold article.
ReceiptTextChar (30)Article receipt text.
QuantityNum (-8,3)1Sold quantity (or sold number of meters, etc.).
UnitSalesPriceNum (-8,2)57.95Unit price.
QtySalesPriceNum (-8,2)57.95Total price for registered quantity.
VatAmountNum (-8,2)11.59VAT for line in question.
VoidBooleanFlag that indicates if transaction was a canceling of an earlier registered line on the receipt in question.
RefundBooleanFlag that indicates if the transaction was a refund.
InquiryBooleanFlag that indicates if the transaction was a price query and shouldn’t be recorded. Quantity and price is 0.
PriceChangeBooleanFlag that indicates if price was entered manually.
ArticleGroupNum (6)Article group that article belongs in.
ReasonCodeNumThe ID of the reason code supplied if the transaction required staff to provide a reason code

Tags under DiscountTransaction segment

XML/JSON tagField typeExample valueDescription
TypeIdNum (2)6Transaction type ID (see list of transaction types).
SubTypeBin (8)0Bit
OFF
ON
0
Article number entered
Scanned
1
Sale
Refund
2
Discount in currency
Discount in %
3
Automatic
Manual
4
Normal discount
Club discount
5
Normal
Self-scanned
BitOFFON0Article number enteredScanned1SaleRefund2Discount in currencyDiscount in %3AutomaticManual4Normal discountClub discount5NormalSelf-scanned
BitOFFON
0Article number enteredScanned
1SaleRefund
2Discount in currencyDiscount in %
3AutomaticManual
4Normal discountClub discount
5NormalSelf-scanned
SeqnoNum (4)1Line number in transaction.
TransactionTimeChar (25)2014-10-29T11:56:50+01:00XML/JSON-formatted timestamp of sale of article.
DiscountStatusCharBookedCan have the following values:
Booked
Linked
Info
Printed
Hidden
ArticleNumberNum (13)1Article number that discount should be applied on.
DiscountTypeNum (2)0 = Based on article
1 = Based on payment method
2 = Based on till
3 = Based on receipt total
4 = (not used)
5 = Basket discount
6 = Voucher discount
7 = Price guarantee discount
8 = Markdown discount
9 = Customer/article discount
10 = External discount
11 = Club discount
12 = Free/complimentary article
13 = Point-based discount
14 = Total discount (via a special key with <TOTD> precoding)
15 = Customer list-based discount
16 = Best price discount (for customers collecting orders to get best price based on what’s calculated at order creation time and at order collection time)
17 = Manual group discount, also known as smart discount (where shop assistants can select a number of article lines on the till’s journal and give a discount on the selected lines)
DiscountReasonCodeNum (3)ID of reason code that explains reason for granting the discount in question
DiscountAmountNum (-8,2)-48.00Discount given, including VAT.
VatAmountNum (-8,2)-9.60VAT of discount.
ReferenceNum (10)Currently used for optional discount group.
CampaignIdNum (10)ID of campaign that has triggered the discount in question. A value of 0 means that discount wasn’t triggered by a campaign.
DiscountedLineNum (4)Reference to the sales transaction line number that the discount concerns.

Tags under PaymentTransaction segment

XML/JSON tagField typeExample valueDescription
TypeIdNum (2)23Transaction type ID (see list of transaction types).
SubTypeBin (8)0Bit
OFF
ON
0
Normal
CMS (Cash Management System)
6
Normal
Void
7
Normal
Cancel
BitOFFON0NormalCMS (Cash Management System)6NormalVoid7NormalCancel
BitOFFON
0NormalCMS (Cash Management System)
6NormalVoid
7NormalCancel
SeqnoNum (4)1Line number in transaction.
TransactionTypeCharPaymentIndicates that transaction is a payment transaction.
TenderTypeNum (3)0Payment method code.
TenderTextChar (20)CashReceipt text from means of payment.
PaidAmountNum (-8,2)100.00Total amount.
CurrencyChar (3)EURISO 4217 currency code of received payment.
ExchangeRateNum (8,3)0.000Exchange rate. No exchange rate if payment is in local currency.
PaidCurrencyNum (-8,2)0.00Paid amount in foreign currency. No currency amount if payment is in local currency.
CashBackNum (-8,2)33.50Change given. Always in local currency.
RoundingNum (4,2)0.00Rounding.
TenderInfoNum (8)Optionally registered information.
IssuerChar (4)VIDKCredit card issuer identifier. Only available if relevant.
AccountNoNum (10)Account number for debtor sales. Only available if relevant.
VoiucherIdNum (10)Voucher/credit note number. Only available if relevant.
PointsNum (8)Number of points used.
CustomerIdNum (10)ID of customer who spent points.
TenderRefNoNum (2)ID for collecting stamps.
CashManagementBooleanIndicates if payment was made through a CMS (Cash Management System).
ExtPaymentNumNum (2)Reference to third-party means of payment.
CardNoNum (19)Currently always empty

Tags under ReceiptTotal segment

XML/JSON tagField typeExample valueDescription
TypeIdNum (2)22Transaction type ID (see list of transaction types).
SubTypeBin (8)0Not used.
LineNumberNum (4)1Line number in transaction.
ReceiptTotalNum (8,2)Receipt total.
NumberArticlesNum (4)Number of articles on receipt.
NumberPackagesNum (4)Number of packages.
NumberCancelledArticlesNum (4)Number of canceled article sales lines on receipt.
CancelAmountNum (8,2)Canceled amount.
HandlingTimeNum (6)Time spent on selling articles.
TenderTimeNum (6)Time spent on registering payment.

Related: ViKING