Coming next release
POS Maintenance - Improvement for handling retries for OrderPaymentJob
An improvement on how faulted OrderPaymentJob executions are handled is implemented. If there is a transient error causing the job to fail, the system now has a new retry strategy, where there is an increasing delay of 10 minutes for each retry. This increases until the configured maximum amount of retries have been attempted, or processing of the order is finished.
This means there's a greater chance that an order failing from a transient error will be fixed by automatic retries.
New retry strategy:
- First retry - no timeout.
- Second retry - 10 minutes after previous.
- Third retry - 20 minutes after previous (so 30 after first in total).
- And so on until maximum number of retries is reached (default 5) or processing is successful.
Order Dispatch/POSAPI Paid lines deleted from Chain web are not refunded
RemoveItemFromCart returns OperationNotAllowedInCurrentStateFault if paid or paid now on the line is greater than 0.
Change in offline exception when searching for on-hold receipt
When searching for a non-existent on-hold receipt in POS and ReceiptOnHoldServiceUrl is configured, this is no longer considered as an "offline" exception. The "offline" exception will still occur and will be logged if the URL configured is indeed offline.
Split Delivery in BatchToPosApi
Support for splitting delivery for a line item is added to BatchToPosApi. This means that if partial quantity of an ordered item is delivered to the customer, the remaining quantity will be added as a new line item.
Multiple active discounts
When there are multiple discounts available for items in the cart, they are properly selected, so the best price is picked.
BatchToPosApi - Filtering entries to fetch the details from the last 48hrs from the database
Filter FlatBatchJsons entries based on their Created timestamps, ensuring only entries from the last 48 hours are selected in the database.
POS Maintenance - Updated transformation code for versioning POSLogs from Cloud to On-Prem
Updated the transformation code used to transform the POSLog version of cloud to On-Prem to make it more efficient.
Support for limited use coupons from Coupon Service
AddCouponByDiscountCode is extended to support limited use coupons from Coupon Service. When a coupon code is added in discountCode field, first it is checked if it matches a coupon from Promotions Management. If it does not match with any coupon from Promotions Management, the coupon is checked in Coupon Service. The discountCode can only used based on the allowed number of times defined for it in Coupon Service, and if it is redeemed more than the allowed number of times there will be an error encountered during CheckOutCart. When an invalid discountCode is added, meaning it does not exist in both Promotions Management and Coupon Service, then an error is returned.
Prevent deletion of newly created cart and added a message to cancel the cart instead of delete
To prevent deletion of newly created cart, checks and tests were added to ensure that newly created carts are cancelled and the same is asked via message to the user.
DigitalReceiptMdsAccountId POS parameter
Digital receipt is send with account id based on new DigitalReceiptMdsAccountId parameter value.
Error message includes EAN of the item
To make it easier to identify which item is causing a problem, when you get ItemSaleNotStarted error, or ItemSaleEnded, the error message will now include the EAN of the item.
Link for FAQ added in the swagger index page
FAQ link for POS API was created and added in the swagger index page.
Refund of order paid with Klarna
Service agent for Klarna library has been updated. It is possible to do a Klarna refund.
Allow adding payments with amount 0
Payment with amount 0 is allowed in AddPaymentToCart2 and CheckoutCart for all payment types.
Improved cart performance in begin cart editing
The begin cart editing endpoint now uses the short text value instead of the full text value. This prevents cart timeouts and ensures the cart works smoothly when editing begins.
Automatic reload of POS Configuration
The POS configuration for all cash registers are automatically reloaded from the database every time there is a configuration change, ensuring the latest settings are applied without any manual intervention.
Search optimization
Item search has been improved by adding a non-clustered index for model column in in the Azure DB dbo.ItemFTView.
Improve the performance of ItemExt/SearchItem endpoint to get faster result when called
Updated the ItemExt/SearchItem endpoint to ignore the single character search.
...
Released 17.10.2024
Fix for "success" field in ResumeCart
Response for success will return true if ResumeCart is successful, if ResumeCart fails it will return a fault or a exception.
...
Released 03.10.2024
Lowest price last 30 days and calculated discount
...
When trying to refund an Adyen payment, it is possible to do it while setting the property WaitForResult=True on SetCartReadyForPaymentAction method.
The line note is added to all selected items for the return
If the parameter 'AddLineNoteToComplaint' is active, a line note is added to all items selected for return during the online return process.
Order Dispatch/POSAPI Paid lines deleted from Chain web are not refunded
...
...
Released 26.09.2024
CouponCodeUsed in GetCart request
...