You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 36 Next »

Coming changes (Not released)

Run as 64 bit process to improve performance (RTP-23146)

We've updated POS API to run as a 64 bit process. This allows us better resource utilization, improving performance and increasing amount of available memory.

Improved warmup and health check

(RTP-22784)

The warmup procedure during startup of POS API has been improved. This will lead to a quicker warmup, it will solve issues with timeout during warmup, and will improve the reliability of the health check / availability test.



Release date:   

SetCartOrderReferenceExt does not work when scaled out

(RTP-23075)

Method that allows adding order reference to the cart has been improved to support scale out. Customer orders without a customers are now handled properly by SetCartOrderReferenceExt method.

CheckPrice does not handle start/stop time correctly

(RTP-22801)

CheckPrice method

Using CheckPrice on an EAN that is part of a campaign with dateTimeStart/Stop set to NULL in the condition table no longer fails.


Date:  

GetCart does not work on resumed carts

(RTP-22793)

Improvement

POS Server (POSAPI) - on-prem and cloud

GetCart on resumed carts.

We've implemented functionality for PosApi to return the correct cart when running GetCart request on a previously suspended and resumed cart, when using the original cartId from the initial NewCart request.

Show in Cart which coupon discount that triggered

(RTP-22807)

Improvement

POS Server (POSAPI) - on-prem and cloud

CouponCodes on selectable coupons from Voyado

We've changed the couponCode to show the offer ID instead of using the membernumber / voyado customernumber as couponCode.

We've also implemented a field in discountDetails in cart, that shows which couponCode was used to trigger the relevant discount.

GetCart returns 0 quantity on Click&Collect carts

(RTP-22797)

Improvement

POS Server (POSAPI) - on-prem and cloud

GetCart for click and collect orders

When calling the method GetCart on a reserved cart, it now displays the correct quantity for each EAN added to the cart also for click and correct orders.

Config is read from wrong store when starting cart editing

(RTP-21705)

Improvement

POS Server (POS API) - cloud and on-prem

Incorrect configuration used when editing cart

An issue that could cause incorrect configuration to be used when editing a cart has been fixed. The problem happened when editing the cart from a different POS API instance. (using multiple instances in cloud or multiple installed instances of POS Wcf on-prem)

SetDigitalReceipt request fails on uncached receipt

(RTP-22840)

Cloud POS API

SetDigitalReceipt can fail running on multiple instances

A problem that could cause SetDigitalReceipt to fail when POSAPI is running on multiple instances has been fixed.


Date: 

NewCartWithItemReturn requests are missing OperatorID on the response

(RTP-19790)

Using the method NewCartWithItemReturn it is now possible to change the Operator of the cart. 

Improve performance of loading group mixes from database

Performance of loading mix information from the database was improved when an item is contained in a lot of different mix definitions.

(RTC-32068)


Date: 

Parallel calls to BeginCartEditing

Indexing was changed to improved performance of parallell calls to the method BeginCartEditing.

(RTC-31880)

ArticleDetails is missing on link items

(RTP-22681)

Linked items

When adding an item with a linked item, the linked item's details will also be added in the POSLog XML, provided that the parameter IncludeArticleDetails is set to true.


Date: 

Reduce amount of SaveReceipt on DeliverCartItem

(RTP-21679)

The amount of SaveReceipt instances was significantly reduced when calling DeliverCartItem method on a given cart. It results in less time spent on processing for every cart. 

Discount description element does not match with swagger

Swagger documentation of attribute Description for itemSale.CartItemDiscountDetail was updated to be nullable.

(RTP-22574)

Fetch PLU board configuration

(RTP-22008)

Added new method GetPluConfiguration. Request has to contain APIKey and optional StoreIdentifier.

The method can be used by clients to fetch items in a structure like: Top menu → Sub Menu(s) → Item (s) and show a PLU list to allow the user to select and sell items.
Parameter PluBoardsDefinition has to be configured in POS config for a given cash register.

Date: 

Set ExternalLoyaltyNumber in Cart

(RTP-22431)

ExternalLoyaltyNumber is now displayed in the cart response


Date: 

Create bundle

(RTP-19519)

Bundles

It is now possible to create, remove and alter ad hoc bundle packages directly in POS and POSAPI. Price calculation for bundles was also altered to work together with other promotions, choosing based on the best price. 

Create method for removing entire bundle

(RTP-21383)

Added a new method RemoveBundleFromCart. It is now possible to remove an entire bundle at once from any given cart.

Not possible to use default customer in ReserveCartInStore

(RTP-22377)


Date:

GetItems fails when requesting 2 eans for one EAN20

(RTP-19450)

Item with 2 or more EAN-20 codes

When calling GetItems with 2 or more EAN-20 codes corresponding to the same main EAN, it now returns the item correctly. 


Date:

Receipt printing w/ EPOS Format ignores PrinterConfig

(RTP-21372)

When printing a receipt in EPOS format with GetPrintableReceiptExt method, the method no longer ignores the PrinterConfig parameter and follows the changes done there.


Date:  

Convert remaining methods used for XXL

(RTP-21173)


The following methods are compatible with scaling out and being used across different instances of POS API:

  • GetCartIdByOrderNumber
  • EndCartEditing
  • SetCartItemPrice
  • AddCouponByDiscountCode


Date:  

Cart calculator and first item of NewCartWithItems does not get any discounts

(RTP-21376)

The first item in a cart created by NewCartWithItems request will find its correct discounts/campaigns. This fix is done for both ItemSale and CartCalculator.

Correct discounts should now be shown in cart for all items.

Change pos api release pipeline stages

(RTP-19843)

Database upgrade stages are now merged to one stage, so that we can disable sync group and upgrade each tenant separately instead of disabling for every tenant, and only enabling once all tenants are updated fully.

This will significantly reduce the time lost in the process, if the upgrade fails.

Cart calculator and first item of NewCartWithItems does not get any discounts

(RTP-21376)

Price calculation of first item in receipt

FIX: The first item in a cart created by NewCartWithItems request will find its correct discounts/campaigns. This fix is done for both ItemSale and CartCalculator.

Correct discounts should now be shown in cart for all items.

Make ReloadConfiguration work without related stores exported

(RTP-17181)

The configuration is now reloaded without exporting related stores. It now selects store from the store table.

Set nullable property correctly in the swagger contract

(RTP-20816)

SetCartReadyForPaymentAction throws exception

(RTP-20975)

EndCartEditing fails validation when editing cart with negative subtotal

(RTP-21439)

We've fixed an issue where validation of cart failed on EndCartEditing requests. This validation has now been improved so that ending editing on carts with a negative subtotal (returns, for instance) now succeeds.



Date:  

Return stop reason in ItemRequirementsNotMetFault

(RTP-19251)

Error message improvement

A new property - 'MessageToCashier', that shows a stop reason, has been added to 'ItemRequirementsNotMetFault' response.

New endpoint to fetch receipt in epos format

(RTP-21169)

Added a new endpoint that fetches the order receipt in the epos format.

Define provided permissions

(RTP-18995)

Cached prices are filtered based on a single cart's timestamp

(RTP-20849)

Caching of prices

When caching the price of an item, inactive prices are included so that if they activate within the cached duration, they will be available to be added to cart.


Date:  

Revert breaking change in SetCartItemNote_Request

(RTP-20270)

Revert breaking change in SetCartItemNote_Request

The NoteKey field when adding Notes to items is no longer required and is now set as optional.

Add ShipmentProvider to DeliverCartItem

(RTC-20366)

Added ShipmentProvider field to DeliverCartItem method. Now the carrier name can be added to the delivery information.


Date:  

Cloud POS API: Reduce the number of database calls

(RTP-15296)

Not possible to cancel order in CW due to missing member.

(RTP-19511)

Customer order

Fix: Cancel customer order 

Customer orders are cancelled through POS API wihtout showing error message in Chain Web.

POS / POS API performance issue with voided articles

(RTP-20286)

Performance in carts with many voided items

The request time does not increase rapidly when there are many voided/added items to cart.

Cloud POS API: spikes in SQL procedure duration

(RTP-20714)

We've made improvements to database executions that improves PosApi performance, and alleviates an issue where some database queries sporadically spiked in duration.


Date:  

Performance in cloud POS API

(RTP-19880)

POS API supports scale out to multiple instances of the same application service. This allows us greater performance during high load. This release also includes multiple performance improvements.

This change allows us to support auto scaling and requires no configuration. Scaling is handled by DevOps POSAPI team, in Azure portal.



Date: 

Documentation for SetCartReadyForPaymentAction

(RTP-20191)

Documentation for SetCartReadyForPaymentAction was missing, and this is now published to swagger.
Link to documentation: https://posapi.egretail.cloud/swagger/index.html

Send order to Kitchen screen on-premise

(RTP-19641)

Enabled POS API to send kitchen order to on-premises POS Services via POS WCF relay.
Enabled POS API to assign numbers to kitchen orders that auto-reset daily.
KitchenOrderNumber value increases everytime kitchen order is created. 



Date: 

APIKey on method GetPLUConfiguration

(RTP-20266)

GetPluConfiguration was changed to not require cash register number as input.
New property APIKey was created and now it is used to find specify the store/cash register.

Member validation

(RTP-16640)

Customers get an error message regarding member card when arriving to the cash register to pay, and it may lead to re-scanning all items.
When adding member by scanning a QR code, member with deactivated card is no longer added to the transaction.


Date: 

Fallback for electronic receipt E-commerce

(RTP-19306)

If sending mail with digital receipt fails due to e.g. downtime on services, the mail details will be saved in a new table in POS Local database and a job will retry sending the mail until it succeeds.
When the sending is successful, the row will be deleted from the table. When the job tries to send unsent mails, it will write the number of unsent rows/mails to the POS logfile.

Pos Configuration:

'MailBackupSenderJobCronSchedule' - set how often job should run. Default value is every 30 minutes (0 0/30 * * * ?)


Date: 

Improvement of POS API swagger documentation

(RTP-19839)

Swagger documentation of the following 3 methods has been improved: NewCartWithItems, AddItemsToCart, GetCart

  • A red star marks required fields.
  • Which fields are rounded in the response is specified.

Return PaymentTerminalType in Cart

(RTP-19696)

Added PaymentTerminalType to Cart. This method is needed for detecting what kind of payment provider is used to start refund in Mobile POS.
It is set in AddPaymentToCart2 and stored in POSLog. 

Option for not expanding bundles when added to item transaction

(RTP-18843)

Added a new parameter that gives the option to treat bundles as normal items in the POSLog, with less information shown.

Improvement of calculation rounding amount on customer orders

(RTP-16898)

An improvement is done so it's not possible to complete a receipt if the paid amount doesn't match the sale total on customer orders.
Previous there has been issues with some amounts of both positive and negative rounding on receipts from customer orders, and this potentially caused trouble for stores when doing balance registration.

Pos Configuration: POSWCF Parameter 'AllowedDifferenceDuringSubtotalValidation'  (default '0') 

If activated; you can define a tolerance for this difference. If parameter is set to eg. 0.5, the paid amount within +/- 0.5 of the sale total will be accepted.

POS API Data Export - Export of prices from EG Item/Promotion management

(RTP-15975)

A new job to export price data has been added to the POSApiDataExport package. This job includes the unique price identifier from EG Item Management.

  • The new ExportPrice job should be used when data is updated in POS Master from EG Cloud Item/Promotion Management
  • The existing ExportPriceItem job should be used when data is updated in POS Master from Chain Classic

The jobs used different procedures to fetch data in POS Master and will not affect eachother.


Date: 

Added DispatchServiceRule to DeliveryDetails

(RTP-18872)

Added a new DispatchRuleId field that is given in methods that return a cart. It can be set with CheckoutCart or SetCartDeliveryInfo methods.

Improvement of recalculation after completed checkout

(RTP-16799)

Methods EndKlarnaPayment and UpdateKlarnaPayment no longer recalculate the total amount in the created cart.



Date: 

Introduced a new method called SetCartItemNotes

(RTP-18934)

A new method called SetCartItemNotes is added, which lets the user add/change item notes already added to a cart.
Notes can also be added now while using methods like AddItemToCart, NewCartWithItems and AddItemsToCart.

Added Backoffice as CustomerOrderProvider

(RTP-18621)

CustomerOrderProvider can now be set to Backoffice in Chainweb without causing problems for method BeginCartEditing. 
Backoffice was not supported as provider, and that made BeginCartEditing fail wen calling Pos Services CustomerOrderService to get information about supported providers. 

Capture and refund supporting Klarna.

(RTP-386)

There is now added functionality for performing capture and refund with Klarna in POS API.
Orders can be now paid and refunded with Klarna through POSAPI.




Date: 

Improvement of logic of storing seequence number in database.

(RTP-19051)

Sequence number is used twice due to missing logic in cache when an exception occur.
The receipts are no longer missing and there is no more duplicate sequence numbers for them.

Improvement of selling items with time restrictions.

(RTP-17539)

When selling items with time restrictions, the time zone is now set correctly when trying to validate cart for purchase. 

Return Vensafe TicketId in Cart

(RTP-19074)

When Vensafe items in sold in PosApi there is now Barcode in Cart that should be used to get items from the vending machine.

Including color and size in ReturnItem response.

(RTP-18823)

Two new attributes, Color & Size are added to "GetItemsAvailableForReturn" in ItemSale endpoint.
They are now included in the response.




Date: 

Improvement of procedure of importing prices from Item Management.

(RTP-17559)

Prices are now imported correctly from Item Management.
Additionally, when one item has duplicate prices it will no longer stop import, instead it will be handled without errors.

Improvement to loyalty number distribution.

(RTP-18260)

CoopID is now only added to the ExternalLoyaltyNumber, while the member number is set to the LoyaltyNumber.

Improvement of linked item not being removed from poslog.

(RTP-18133)

When deleting an item from an order, linked item is removed as well. If linked item is removed instead of a main one, behavior is the same and both items are removed.




Date: 

Vensafe integration in POS API

(RTP-15338)

Added support to reserve vensafe articles from POS API. There is also a new method GetVensafeProducts that returns all available articles.

Improvement to GetCoopaySalesSummary.

(RTP-18256)

When calling GetCoopaySalesSummary after GetCart, error is no longer thrown. Storenum and cashregister are now always set when fetching finished receipts.


Improvement of Click & Collect order

(RTP-14999)

When a Click & Collect order is picked, CustomerOrderVariant field is set to WebReservedStorePickup.




Date: 

Improvement to loyalty number distribution

(RTP-17722)

CoopID is now only added to the ExternalLoyaltyNumber, while the member number is set to the LoyaltyNumber.




  • No labels