Breaking
Total count for ListShipments/ListInvoices
Both services now return a fixed "10000" as the total number of records. It proved unsustainable to do an accurate count of the total number of matching records in the database - this degraded performance of the services and put too much load on the database for these very large tables.
The exception is if the result of the query is small enough to fit in the requested page size, for example when you request 20 records and you've filtered on a specific order ID that only has 2 shipments, in which case the total count will be 2.
Added
Deliver to Store
We've made it easier to transfer products between OUs to facilitate reservation orders for unavailable products. To that end you can now write a script with the newly added FindSoldFromForPurchaseOrder extension point to help find the right OU to serve as a SoldFrom OU.
For more information and configuration steps, see the Deliver to Store docs.
GetUserLoyaltyBalanceService
We've added a new service called GetUserLoyaltyBalanceService
which will return the loyalty balance as well as the loyalty mutations and basic program information. This will make it easier for customer care agents to track consumers' loyalty movements. More on this here
Exporting coupon codes
We've added a new service called DownloadCouponExcel_Async
which will allow for exporting of up to 1 million coupons for a given discount in an Excel sheet. Its results can be downloaded by using DownloadCouponExcel_AsyncResult
.
Although this will be used in upcoming front ends, it can already be used via the mentioned services. For more information and an example of this flow, expand the following section.
Downloading coupons sample
{
"DiscountID": 72
}
{
"JobID": "A:19",
"Error": null,
"Metadata": null
}
{
"JobID": "A:19"
}
{
"ResourceInfo": {
"Url": "https://assets.random.on-eva.io/blob/random",
"BlobID": "85sa2d424d-6121c-421-b913a-6asderqjk99"
},
"Metadata": {
"ExternalIDs": {},
"IsAsyncResultAvailable": true
}
}
The format is the same as the upload & template, so CouponCode, IsActive, MaximumUsage, UsageCount, FirstUsage and LastUsage.
Note that the status of the request and the JobID can also be tracked in Admin Suite's Async requests chapter.
Start and EndDate in PushPriceList
The PushPriceList
service now accepts (optional) StartDate and EndDate in the PriceEntriesData.Prices object. The StartDate will fallback to the current date when omitted (which is the same as before) while the EndDate will be unset.
For a sample, please expand the following section.
Service sample
{
ID: 15,
...
Components: [
{
ID: "BID1234",
Type: 0,
StartDate: "2023-09-27",
PriceEntriesData: [
{
Prices: [
{
ProductID: "P1234",
Price: 3.5
StartDate: "2023-09-27", // nullable
EndDate: "2023-12-31" // nullable
}
]
}
]
}
]
}
The format is the same as the upload & template, so CouponCode, IsActive, MaximumUsage, UsageCount, FirstUsage and LastUsage.
Note that the status of the request can be tracked in Admin Suite's Async requests chapter.
Other additions
- We've added an optional Remark field on the
UndoShipment
service, which can be returned on the stock mutation derived from this service together with the shipment's BackendID. GetPaymentTypeByID
now returns two additional properties in the response: PaymentMethodCode and PaymentMethodIsCustom.
Improved
Global Blue for customers in EU
For EU-based stores, if the customer or the company attached to the order has an EU address, Global Blue will not be visible at checkout.
Listing local currency first
The service GetCurrentCashJournals
now returns a sorted list of cash journals, starting off with the current organization unit's currency. The remainder of the currencies will be displayed alphabetically.
Cancelling shipments
We've made some back-end improvements to the cancellation of non-received shipments. Namely: UndoShipment
and UndoShipmentReceipt
have been merged into one UndoShipment
service; when reverting a shipment, its status will go to Cancelled.
Preventing setting interaction outside of assigned OU
We now check the permissions a user has for an OU (or OU set) in order to validate what settings a user is able to edit. For a user that's logged in to a particular OU, with the permission to edit the OU set settings on subscriptions for example, the user will only be able to do so on that particular OU.
Fixed
- Fixed an issue where the return fee was incorrectly applied. It will now be applied based on the specific OU from which the order was sold, defaulting to the return fee specified in the root OU if none are defined. See also
Orders:Returns:ReturnFeeOnlyFor
andOrders:Returns:ReturnFee
in the Returns settings. - Skip details that are not present.
using the Customers App to look at a customer record with a product registered via Admin Suite, would return an error when a setting was not set - instead of just skipping the section
- We now prevent awarding loyalty points on giftcard and insurance products.
- A manual invoice was not correctly created via
CreateManualInvoice
. It now accepts TaxRateID as well, fixing the issue. - We've fixed an issue with translations for Open cash drawer reason by moving the translations to the ID instead of the Name.
Deprecations
🆕 Introduced
These deprecations are now announced for the first time. Usage of these services and/or fields will return the appropriate EVA-Warnings
header.
Deprecated
Settings
- Setting
Stock:SellableSourceStockLabels
is deprecated and will be removed in 2.0.708. Use the following services instead:- GetStockLabelSettings
- GetStockLabelSettings
- Setting
Orders:Returns:AlwaysReturnToSellable
is deprecated and will be removed in 2.0.708. Use the following services instead:- GetStockLabelSettings
- GetStockLabelSettings
- Setting
Orders:Returns:AlwaysIncludeDamagedLabel
is deprecated and will be removed in 2.0.708.Use the following services instead:- GetStockLabelSettings
- GetStockLabelSettings
- Setting
CycleCount:StockLabels
is deprecated and will be removed in 2.0.708. Use the following services instead:- GetStockLabelSettings
- GetStockLabelSettings
⚡ Removed from typings
These deprecations are now halfway through their deprecation timeline. As of now, these services and/or fields will no longer be exposed by our typings.
Deprecated
Medium
- Medium CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetStationResponse.CustomFields
- GetCaseByIDResponse.CustomFields
- GetRepairResponse.CustomFields
- GetWishlistResponse.CustomFields
- GetOrganizationUnitDetailedResponse.CustomFields
- GetShipmentDetailsResponse.CustomFields
- GetUserResponse.CustomFields
- GetAnonymousWishlistResponse.CustomFields
- GetUserWishlistResponse.CustomFields
- Medium CustomFieldValues is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetShipmentResponse.CustomFieldValues
- GetCustomUserTaskDataResponse.CustomFieldValues
- Medium Details.Corrections.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetFinancialPeriodDetailsResponse.Details.Corrections.OrganizationUnit.CustomFields
- Medium Details.Corrections.StockMutation.DestinationOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetFinancialPeriodDetailsResponse.Details.Corrections.StockMutation.DestinationOrganizationUnit.CustomFields
- Medium Details.Corrections.StockMutation.OrderLine.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetFinancialPeriodDetailsResponse.Details.Corrections.StockMutation.OrderLine.CustomFieldsV2
- Medium Details.Corrections.StockMutation.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetFinancialPeriodDetailsResponse.Details.Corrections.StockMutation.OrganizationUnit.CustomFields
- Medium Details.Corrections.StockMutation.SourceOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetFinancialPeriodDetailsResponse.Details.Corrections.StockMutation.SourceOrganizationUnit.CustomFields
- Medium Details.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetUserTaskDetailsResponse.Details.OrganizationUnit.CustomFields
- Medium Inquiry.Items.CustomField is deprecated and will be removed in 2.0.716: Use CustomFieldMetadata instead..
- GetInquiryResponse.Inquiry.Items.CustomField
- Medium IsArray is deprecated and will be removed in 2.0.716: Cannot be updated. Create a new custom field instead..
- UpdateCustomField.IsArray
- Medium Items.CustomField is deprecated and will be removed in 2.0.716: Use CustomFieldMetadata instead..
- GetInquiryResponse.Items.CustomField
- GetUserInquiryResponse.Items.CustomField
- Medium Items.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListPlanningResponse.Items.OrganizationUnit.CustomFields
- Medium Lines is deprecated and will be removed in 2.0.716: Use Receipts instead.
- ReceiveShipment.Lines
- Medium Order.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- CreateOrderFromShoppingCartResponse.Order.CustomFieldsV2
- Medium Order.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- CreateOrderFromShoppingCartResponse.Order.Lines.CustomFieldsV2
- Medium Products.PickupIndications.PickupOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetAvailabilityIndicationResponse.Products.PickupIndications.PickupOrganizationUnit.CustomFields
- Medium Result.Children.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetRelatedOrderLinesResponse.Result.Children.CustomFieldsV2
- Medium Result.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetOrganizationUnitResponse.Result.CustomFields
- GetOrganizationUnitsForUserResponse.Result.CustomFields
- GetReplenishmentProposalSourcesResponse.Result.CustomFields
- GetReplenishmentProposalTargetsResponse.Result.CustomFields
- Medium Result.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- CreateOrderLineUnitPriceCorrectionResponse.Result.CustomFieldsV2
- GetOrderResponse.Result.CustomFieldsV2
- GetRelatedOrderLinesResponse.Result.CustomFieldsV2
- EVAPayGetInfoResponse.Result.CustomFieldsV2
- Medium Result.Devices.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetStationResponse.Result.Devices.OrganizationUnit.CustomFields
- Medium Result.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetOrderResponse.Result.Lines.CustomFieldsV2
- EVAPayGetInfoResponse.Result.Lines.CustomFieldsV2
- Medium Result.Order.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetStockReservationTaskResponse.Result.Order.CustomFieldsV2
- Medium Result.Order.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetStockReservationTaskResponse.Result.Order.Lines.CustomFieldsV2
- Medium Result.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetDeviceResponse.Result.OrganizationUnit.CustomFields
- GetStationResponse.Result.OrganizationUnit.CustomFields
- Medium Result.Page.Children.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListOrderLinesInvoiceSummaryResponse.Result.Page.Children.CustomFieldsV2
- Medium Result.Page.Customer.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValues instead..
- SearchOrdersResponse.Result.Page.Customer.CustomFields
- Medium Result.Page.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListOrganizationUnitByProximityResponse.Result.Page.CustomFields
- Medium Result.Page.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListOrderLinesInvoiceSummaryResponse.Result.Page.CustomFieldsV2
- ListOrderLinesResponse.Result.Page.CustomFieldsV2
- ListOrdersForCustomerResponse.Result.Page.CustomFieldsV2
- Medium Result.Page.DestinationOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListStockMutationsResponse.Result.Page.DestinationOrganizationUnit.CustomFields
- Medium Result.Page.Devices.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListStationsForOrganizationUnitResponse.Result.Page.Devices.OrganizationUnit.CustomFields
- Medium Result.Page.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListOrdersForCustomerResponse.Result.Page.Lines.CustomFieldsV2
- Medium Result.Page.OrderLine.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListStockMutationsResponse.Result.Page.OrderLine.CustomFieldsV2
- Medium Result.Page.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListBookingsResponse.Result.Page.OrganizationUnit.CustomFields
- ListStationsForOrganizationUnitResponse.Result.Page.OrganizationUnit.CustomFields
- ListStockMutationsResponse.Result.Page.OrganizationUnit.CustomFields
- ListOrganizationUnitShelvesResponse.Result.Page.OrganizationUnit.CustomFields
- Medium Result.Page.SourceOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListStockMutationsResponse.Result.Page.SourceOrganizationUnit.CustomFields
- ListReplenishmentProposalResultsResponse.Result.Page.SourceOrganizationUnit.CustomFields
- Medium Result.Page.StockMutation.DestinationOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListBookingsResponse.Result.Page.StockMutation.DestinationOrganizationUnit.CustomFields
- Medium Result.Page.StockMutation.OrderLine.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListBookingsResponse.Result.Page.StockMutation.OrderLine.CustomFieldsV2
- Medium Result.Page.StockMutation.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListBookingsResponse.Result.Page.StockMutation.OrganizationUnit.CustomFields
- Medium Result.Page.StockMutation.SourceOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListBookingsResponse.Result.Page.StockMutation.SourceOrganizationUnit.CustomFields
- Medium Result.Page.TargetOrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListReplenishmentProposalResultsResponse.Result.Page.TargetOrganizationUnit.CustomFields
- Medium Result.Station.Devices.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetDeviceResponse.Result.Station.Devices.OrganizationUnit.CustomFields
- Medium Result.Station.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- GetDeviceResponse.Result.Station.OrganizationUnit.CustomFields
- Medium ScriptID is deprecated and will be removed in 2.0.716: Use SecurityScriptID instead..
- SetCustomFieldOptions.ScriptID
- Medium ShoppingCart.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ShoppingCartResponse.ShoppingCart.CustomFieldsV2
- Medium ShoppingCart.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ShoppingCartResponse.ShoppingCart.Lines.CustomFieldsV2
- Medium Station.Devices.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- SelectStationResponse.Station.Devices.OrganizationUnit.CustomFields
- Medium Station.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- SelectStationResponse.Station.OrganizationUnit.CustomFields
- Medium Task.Lines.OrderLine.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- StartReservationCleanupResponse.Task.Lines.OrderLine.CustomFieldsV2
- Medium Task.Order.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- StartReservationCleanupResponse.Task.Order.CustomFieldsV2
- Medium Task.Order.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- StartReservationCleanupResponse.Task.Order.Lines.CustomFieldsV2
- Medium Tasks.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListTasksThatBlockPeriodClosingResponse.Tasks.OrganizationUnit.CustomFields
- Medium WorkedHours.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- ListWorkedHoursForCurrentEmployeeResponse.WorkedHours.OrganizationUnit.CustomFields
- Medium WorkSet.Order.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- StartStockReservationResponse.WorkSet.Order.CustomFieldsV2
- Medium WorkSet.Order.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- StartStockReservationResponse.WorkSet.Order.Lines.CustomFieldsV2
- Medium WorkSet.Orders.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- CompleteReservationDeviationTask.WorkSet.Orders.CustomFieldsV2
- StartReservationDeviationTaskResponse.WorkSet.Orders.CustomFieldsV2
- Medium WorkSet.Orders.Lines.CustomFieldsV2 is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- CompleteReservationDeviationTask.WorkSet.Orders.Lines.CustomFieldsV2
- StartReservationDeviationTaskResponse.WorkSet.Orders.Lines.CustomFieldsV2
- Medium WorkSet.UserTask.OrganizationUnit.CustomFields is deprecated and will be removed in 2.0.716: Use CustomFieldValuesWithOptions instead..
- CompleteCustomerInteractionTask.WorkSet.UserTask.OrganizationUnit.CustomFields
- StartCustomerInteractionTaskResponse.WorkSet.UserTask.OrganizationUnit.CustomFields
🚫 Effective
These deprecations and requirements are now effective. With these deprecations, the following services and/or fields are no longer available in EVA and can no longer be used. Failing to enter the mentioned required fields, will mean the services will not work.
Deprecated
Low
- Low PageConfig is deprecated since 2.0.708: This service is using infinite scrolling from now on because the result sets are huge.
- ListGeneralLedgers.PageConfig
Required
Medium
- Medium Field AllowCustomerStandardAccounts is required since 2.0.708.
- CreateVisibilityGroup.AllowCustomerStandardAccounts
Settings
The setting LimitUserVisibility
has become opt-out with the release of core 2.0.708. See also LimitUserVisibility.
Release dates may vary
The exact date for deploying a Core release to production environments may vary. See How we handle Core releases for more details.