Document status: RELEASED

Date:  

Prerequisites are located in the menu on the left.

Payment by Svea in EG POS

(RTP-23681)

Svea can be used as payment in cashier mode in EG POS. To pay by Svea cashier needs to register customer's mobile phone number and social security number.
 
Svea payment in cashier mode:

When items are added and cashier chooses Svea as a tender, a dialogue is shown to cashier, telling him to enter customer's mobile phone number and social security number:

During payment a message is shown telling an SMS is sent to customer's mobile phone:

When Svea payment is finished a sales summary is shown on the screen:

...and customer's receipt and a store copy for signment is automatically printed:

Any partial payment is not allowed in combination with Svea:

A credit customer needs to be registered to use Svea payment:

Refund with Svea payment is allowed using online return (only), and when paid by Svea refund must be done by Svea (only):

Electronic receipt shown in Journal Viewer contains necessary information regarding Svea payment:

POS Configuration

New parameter:

SveaCardIssuerId (default 213)
Card issuer used for Svea payments. The matching issuer ID must be added in Reporting database.

Existing parameters:

ButtonConfig
Add a new button to pay by Svea using function "Pay with mobilepayment" with argument 'Svea'.

CloudAccessServiceUrl
Address to CloudAccessService in POS Services. Default address should normally be used.
 
PaymentServiceMerchantId
Correct Merchant ID to be used will be supplied by PaymentService DevOps team.
 
PaymentServiceUrl 
Address that EG POS will use to contact paymentService in the cloud. Make sure to use the correct address for your environment.
https://paymentservice.lindbakcloud.com should be used for production environments.
https://paymentservice.lindbaktest.com should be used for test environments.
 
PayTerminalVerboseLogging (default false)
Should be activated, to extend logging to research any problems.

Integration with WebDok for Boarding Pass validation

(RTP-25485)

A Boarding Pass can be scanned in POS to add flight data to the receipt. (Flight data must be synchronized from Avinor and the unique flight id in the boarding pass must match the unique flight id of an active flight).

The header in POS will show flight information and the number of passengers and the number of available quotas for alcohol and tobacco.

POS Configuration

BoardingPassRegEx

Used to identify that boarding pass was scanned.

Can be set to "BoardingPass" when using fake component.


FakeComponents

WebDokService must be added to enable testing with fake data.

Example format that can be used to fake data for testing puposes:

BoardingPass-uid-numpax-alc-tob

uid = unique flight id

numpax = number of passengers/persons

alc = number of available alcohol quotas

tob = number of available tobacco quotas

Example: BoardingPass-12004693-1-1-1

The unique flight id must match a synchronized flight in POS database fetched from Avinor.


PosServicesWebdokServiceUri

URL to Webdok service in POS Services. 

Remember to disable FakeComponent when using actual service.

POS Services host configuration
  • Add WebdokService to EnabledServices
  • Add endpoint from template file
  • Parameter WebdokUri must be configured with address to external WebDok api

Sealing items and printing STEB receipt in self checkout POS

(RTP-24949)

If configured, STEB receipts can be printed for the last completed transaction in self checkout mode. The receipt is printed by the cashier that supervises the SCO POS by pressing an invisible button (200 x 200 pixels) that's located in the top right hand corner of the 'Goodbye page' and the 'Welcome page'. To determine whether a STEB receipt is needed the customer need to answer a 'Yes' or 'No' question about the final flight destination before the payment page in SCO.

POS Configuration

Existing parameter UseFlightIntegration must be activated (True) to be able to print STEB receipts from the invisible button describe above.

A new page is added in parameter 'PageFlow' called 'ItemsSealing' - If configured, this page should be shown after 'PurchaseConfirm' page and is used to determine if a customer needs a Security Tamper Evident Bag (STEB) for the items purchased. 

Support for drawer number 2 for Security Tamper Evident Bags (STEB)

(RTP-24987)

To enable having STEB bags in a separate cash drawer in POS we have support for two cash drawers being connected to POS simultaneously. The second cash drawer can be opened via button configured to use the existing 'OPEN_CASH_DRAWER' function. This function has been extended to take cash drawer number as an argument to specify what drawer to open.

POS Configuration 

New parameter 'CashDrawerName2' (default empty) should be set to the OPOS name of cash drawer number 2. In POS Configuration in Chain Web in 'Button config' the button to trigger cash drawer number 2 must be set up to use the "Open specified drawer" function. There it is possible to specify a port number for the 2nd drawer.

Important note: If the cash drawers are connected to a 'splitter' via HP receipt printer of model 'A799-C40W-HN00'  the name of the cash drawers must be set to 'A799-1' and 'A799-2' for CashDrawerName1 and CashDrawerName2 respectively. This is due to limitations in the printer model forcing us to hard code the names to be able to handle this behavior separately in POS.

Printing STEB receipts for tax free stores in POS

(RTP-24280)

New function has been created to print STEB receipts in POS. The function is assigned to a button and it is used to print one or more extra receipts with the text "STEB receipt" for the last completed receipt in POS. The STEB receipts are meant to be put inside a plastic pocket inside the secure tamper evident bag alongside the items purchased before the bag is sealed by the cashier. There are no limit to the number of STEB receipts that can be printed.

POS Configuration

ButtonConfig

The function 'PRINT_STEB_RECEIPT' can be assigned to a button in ButtonConfig, and prints one or more extra receipt with the text 'STEB receipt'. The button can be configured with a number of receipts to be printed as an argument. 

Number of associations linked to members

(RTP-24303)

It is configurable if POS should allow linking multiple associations to a member or not. If just 1 association is allowed, an error message will be shown when trying to link another:

POS Configuration

AllowMultipleAssociationsPerMember (Default value: True)

Decides if a member can be linked to multiple associations.

If False only one association is allowed to add to member. New dialog.

Automatic start of Coopay payment in manned POS

(RTP-26038)

Coopay payment, if available for active customer due to his or her member app, may now be configured to start automatically when cashier enters payment view. If not configured existing dialogue is shown to cashier as before, where Coopay or other tender must be chosen.

POS Configuration 

New parameter:

'CoopayStartPaymentAutomatically' (default 'False') - If activated, Coopay payment starts automatically when cashier enters payment view in manned POS.

Maintaining cashiers in User Management - Manifest of cashier permissions in POS API

(RTP-21152)

A manifest of cashier permissions has been implemented in POS API. This manifest is used by User Management to know which permissions a cashier can have. (For example: Cancel receipt, Delete line etc)

Each time POS API is released, any new permissions will be added automatically to User Management so it can be used in user roles to give permissions to cashiers.

This initial release will add the following permissions to User Management:

Support for importing all of these new permissions has been added to POS Import and POS Master database.

The "old" POS permissions in User Management have been moved toa separate group "deprecated - do not use":

These should not be used and will be removed in the future when retailers using them have been migrated to using the new permissions.

Recognize barcodes that allow add price discount to the specific item

(RTP-26318)

A new parameter can be configured to recognize a barcode that gives discount to a specific item by setting new price in amount.

Example when scanning a barcode with new price 80:

POS Configuration 

New parameter: DiscountLabelRegEx

Configures a Regex for a new item price discount.

Example value:

Parameter is set to recognize 20 digit barcodes where digit 14 is zero. First 13 digits in the barcode is EAN. Last 6 digits in the barcode is the new price. Where enter for example 00000000060070008000, it sets a new price 80 for item with EAN 6007.

Improvements POS 

Module

Description

Bank

Restart connection with Baxi.Net pay terminal solution via button (RTP-26268)

It is now possible to restart connection between EG POS and Baxi.Net pay terminal solution via configured button. Even though a possible problem may exist between Baxi.Net program and the pay terminal only, a restart signal sent from EG POS may reestablish the pay terminal solution. May be triggered by separate function or by BankAdminMenu.

POS Configuration

Existing parameter ButtonConfig - Add function 'Koble til bankterminal' (OPEN_TERMINAL) to a desired button.

Coopay

Improved message to user when member app QR code is not valid (RTP-26039)

During Coopay payment, if the member app QR code is declined due to it has expired or is invalid, a common, improved message is shown to user in these to situations. Message shown in both cashier mode and in self service mode, and says the QR is invalid. It also tells user to rescan QR code.

Changes in purchase summary shown in member app (RTP-24471)

EG POS now subtracts bonus reward group amounts from PurchaseReturn (Kjøpeutbytte) before sending amount to GiantLeap. For receipts from Cloud ReceiptService now does the same.

Purchase summary shown in member app with incorrect amount due to rounding issue (RTP-24149)

EG POS now sends rounded amount to GiantLeap to secure correct amount is shown in purchase summary in member app. Previously unrounded amount was sent, which in rear cases could result in a different amount was shown, compared to written receipt, due to incorrect rounding.

Flight integration

Automatically add dummy flight to all sales (RTP-25411)

A parameter can be set to automatically add dummy flight to all sales transactions.

POS Configuration

AlwaysAddFlightCodeToSalesTransactions parameter (default value: blank)

Defines the FlightCode that should always be added to FlightInfo in receipt.

Example flight info in POSLog XML:

<FlightInfo FlightNo="Dummy" IsCharterFlight="false" IsCanceled="false" ValidDateTimeUtc="2023-11-06T13:49:18.7488396+01:00" IsTaxExemptCustomer="false" ScheduleDateTimeUtc="2023-11-06T13:49:18.7488396+01:00" StatusDateTimeUtc="2023-11-06T13:49:18.7488396+01:00" IsDelayed="false" UniqueId="0" InboundUniqueId="0" />


Synchronization of flight data
(RTP-24827)

Flight data from Avinor can be synced from EG TravelService to POS database. The flight data will be used to be able to select a flight manually in POS and it will be used as additional data when scanning a boarding pass.

URL to travelservice and AirportCode must be configured to enable the synchronization.

Images

Images disappearing from buttons (RTP-23850)

A job will delete old and unused media (images) from the media cache folder in POS. If parameter DeleteOldMediaOnStartup is enabled, images that have not been used for 30 days will be deleted.

The cleanup job for images has been improved so it will not delete images that are in use on buttons via parameter ButtonConfig.

Item information

Multiple hyperlinks in item description (RTP-24402)

We can now show multiple clickable hyperlinks in under Item Description in Item Information in POS.  This is so that the use can have easy access to product information, return policies etc.

This can be setup in Product Features in Item Management (Cloud) or Item Information Text in Chain Classic (On premise).

Example setup in Item Management:

Text that describes the item

E-commerce https://www.granngarden.se/p/1166807

Complaint https://www.granngarden.se/p/1166810

See item information https://www.gt.se

https://www.granngarden.se/p/1166807"

In POS it will look like this:

Notice

If a URL has no “title”, we will display the URL as it is. Title and URL must be on the same line to be able to display it like in the example above. 


Logic changes in POS for MediaBank images
 (RTP-23379)

When image from Qbank is showing in MediaCache folder and it is occurring as <EAN>.<ext.> the image is being assigned to item with this EAN in POS. Then the image is being shown. 

Required

Required dependencies:

POS Import: 4.0.59 version

POS Services:  7.85.65.0 version

Database: 3.0.0.136 version

Item transactions

Allow real numbers on item transactions for piece-items (RTP-26153)

New POS configuration "AllowFractionalQuantityForUnitPieceOnItemTransactions" is added to allow real numbers on item transactions for piece-items. When this parameter is TRUE, real numbers will be allowed. This is by default set as FALSE, which would not allow real numbers. Sales transactions will not be affected by this parameter.

Required

POS master database version 3.0.0.139

Lindbak Retail database version 2.10.0.72

POS Configuration:

Parameter AllowFractionalQuantityForUnitPieceOnItemTransactions: True (default: False).

Logging

Logging of cashier actions in surveillance view (RTP-25850)

When requests are approved and rejected in the surveillance view in POS, the action will be logged.

Example logline:

Monitoring: Age approved. CR 2.

This means that an age approval request from SCO with cash register number 2 was approved.

Member search 

Member search for Swedish social security numbers when leading zeros are stripped by scanner (RTP-26513)

In the member search dialog EG POS can now handle scanning of social security numbers from Swedish drivers licenses even if the scanner config removes the leading zeros. This is achieved by adding zeros in front of the social security number if the number is shorter than 10 digits. A Swedish person with a birth date between 31.12.1999 and 01.01.2010 will typically have between one and three leading zeros at the start of their social security number depending on the month and year they were born. This would cause the format of the number searched to be wrong if the scanners was configured to strip leading zeros.

Scanning Vipps QR code in member search dialog (RTP-25672)

When scanning the Vipps QR code the search member pop-up is now validated correctly.

Online return

Rounding when using online return (RTP-23914)

When returning items via Online return, we will keep the same rounding as in the original sale.

Order

SMS related to click and collect orders sent outside opening hours (RTP-20616)

Logic related to sending reminders for picking up click and collect orders has been improved to secure that we do not send this outside store opening hours.

Payment

Transaction ID on bonus check (RTP-23660)

"Refunded amount does not match/exceeds redeemed amount" error on refund caused by incorrect Transaction ID on bonus check no longer occurs.

Wrong behavior when doing a CustomerAccountPayment (RTP-26313)

When doing a CustomerAccountPayment ("Innskudd kundekonto / Medlemsinnskudd") with cashback to the customer, it's changed so the resulting receipt take the cashback sum into account .   

Required

POS Services version 7.85.66


Enhanced Transaction Validation for Company Cards 
(RTP-24274)

EG POS now validates transactions made with company cards against POSPay, so that the items in the cart are allowed for the purchase. If any items fail validation, the specific items that didn't pass validation is listed to the cashier.

POS Configuration

ReconcileConfiguration parameter (RTP-25654)

"ReconcileConfiguration" parameter is added in POS Configuration, wherein a list of items (EANs) can be added (separated by comma) and also the line sales they correspond to.

Self-service

Alarm items marked with red color in POS Monitor (RTP-26175)

Surveillance message text for alarm items are now marked with red color, indicating they are more "serious" than some other messages, when shown in POS Monitor. Changes also goes for ditto shorter message texts shown in sales view in ordinary POS. In Monitor App these messages are colored red already.

Improved random control of customers in Self-service (SCO) (RTP-26622)

The configurable and assisted control mechanism for visual / random control has been improved:

  • Cashier card, as well as items, is now accepted as scanner input. Scanning cashier card once will leave to cashier mode, making it possible for staff to delete a started receipt, if necessary. Scanning cashier card 2nd time returns to self service mode, ready for next customer. If the started receipt was not deleted while in cashier mode customer may proceed with his purchase, and will have to go through the assisted random control when purchase is confirmed.

POS Configuration: 

Relevant existing parameter: 'SnGRandomControl'

Secure correct handling of age control when in Self-service (SCO) (RTP-26358)

Whenever an extra item is added to receipt by scanning barcode in Payment page, EG POS will return to Sale page. This secures that control mechanisms like e.g. age control is triggered correctly before payment starts.

System

Status of Service and Integrations (RTP-20831)

When entering the Services/Integrations tab, the statuses of services / integrations can be seen. The user can see all offline statuses at the top.  There is also a 'Refresh status' button, which can be pressed to update the status.


Translation

Updated missing Estonian text  (RTP-26851)

Some texts is updated in the Estonia resource file in EG POS.

User interface

Digital receipt sent message in convenience mode (RTP-25608)

In convenience mode, the message saying that a digital receipt was sent is shown on 2 lines to avoid cutting the text.

Web orders

Mixing web order items with items from physical store (RTP-24793)

When creating a web order it is possible to have it in the same receipt items bought in physical store. User can add either a web order item first or add an item from the store first. When the user starts adding a web order item and then scans or adds another item, a pop-up message to either add the newly scanned or added item to order or sale is shown.

Note

User should add the web-orders all in one go before adding other items from the store since once the user changes mode to adding store items, the web-order is considered "done" and cannot be edited. Support for editing the web-order items will be implemented soon.


Displaying store name for Pay & Collect delivery
(RTP-25450)

When selecting Pay & Collect as a delivery option, the store name is displayed next to the store number.

Improvements POS Server

Module

Description

POS API

Orders with the same customer order number from different stores (RTP-17920)

When there are orders with the same customer order number created for multiple stores, they no longer affect each other.

POS Import

Support storing POS Configuration compressed in database (RTP-23452)

To reduce the size of the staging.FlatJSON table, support for saving compressed POS configuration data in the database has been implemented in POS Import. The data is decompressed while entries are processed by the FlatJsonExecutor job from POS Import package.

Required

POS Master v. 3.0.0.134 or higher.
POS Import v. 4.0.58 or higher.


Add support for "Number of times the mix can trigger" for Mix 28
(RTP-23095)

Support for "Number of times the mix can trigger" for Mix 28 has been added to POS Import, which sets the maximum number of time the offer can be used.

Required

POS Import v. 4.0.58 or higher.


Creating dummy data when importing unknown data from Item Management
(RTP-25974)

When importing an item with unknown size/brand/product range/producer/supplier/color, dummy data will be created.

When one of the given characteristics does not exists in the database it will be created with name "Unknown size/brand/product range/producer/supplier/color" in the dbo table.

Example:

POS Master

Import of cashier card from User Management (RTP-26096)

A cashier card can be linked to a cashier in User Management. This is updated in POS Master database and replicated to POS databases.

Changes in POS Import and logic in EG POS is also required to start using these cashier cards in POS. This will be released in separate stories.


Fields for alcohol percentage and amount in sales packages
(RTP-25901)

New fields for alcohol percentage and amount in sales packages have been implemented. These will later be used related to calculation of Norwegian toll quotas.

(Changes in POS Import to read new fields from Item Management export will be released later when new fields are available.)

POS Server

QBank integration: Job to sync from Qbank to MediaBank (RTP-23378)

The new job 'ImportSelfServiceMediaFromQBank' has been added to the POS Import package. The job is responsible for connecting to the Qbank API and checking if there are new images for self-service items. The job runs according to a cron schedule and sets the synchronization range based on the value in the [staging].[QbankSynchronizationTime] table. If new images are detected, the job establishes a connection to the MediaBank database through the MediaBank service endpoint in POS Services. Subsequently, it inserts the image into the database and sets the ExternalReference to the corresponding EAN number.
The download job present in POS checks if the ExternalReference is set, and if so, it saves the file in the [EAN].[ext] format to the MediaCache folder. 

Required

Required dependencies: 

POS Import: 4.0.59 version

POS Services:  7.85.65.0 version

Database: 3.0.0.136 version

Lindbak POS MediaBank Database 3.0.0.1 version

  • No labels