Breakingโ
Orders:ReturnFullCreatedByโ
All values for the setting Orders:ReturnFullCreatedBy
will be removed from EVA in this release.
The setting was already deprecated since Core Drop 2.0.715 and will be forced to the default value false in all environments.
In an upcoming release, the full response property CreatedBy will be removed from the OrderDto - as has already been the case in Test/Acceptance environment for months. The replacement is the CreatedByFullName property.
Complianceโ
๐ธ๐ช Sweden - Action may be required
We are introducing a new setting which is required for all customers which integrate with Infrasec in Sweden.
Auditing:Sweden:Shop:Number
This setting must be filled in for per OU operating in Sweden with a 4-digit number. This number is based on your OUID and should be prefixed with 0 to reach 4 digits..
For example. Your OU ID is 48. The value you put in this setting is 0048.
While New Black will be migrating all customers this currently applies to in Production environments, customers using it in Test/Acceptance will have to do so themselves.
๐ท๐ด Romania
Generating PDF Invoices for B2B Transactions in Romaniaโ
Store operators in Romania can now generate PDF invoices for B2B transactions, essential for reporting to ANAF with unique and sequential invoice numbers.
- Automatic PDF Generation: A PDF invoice is generated for B2B orders alongside the fiscal receipt, which can be printed or emailed.
- Invoice Numbering: Uses a custom format: OU-999-XXXXXXXX for B2B transactions.
- B2B Customer Criteria: Requires a company name, VAT number, and billing address.
- Fiscal Receipt Reference: Includes a reference labeled Referinศฤ bon fiscal.
- Template: The CertifiedInvoice is used a basis, but translated to Romanian.
Note: Manual reporting to ANAF is still required.
Servicesโ
โ GetAvailableSettingsโ
You can now view enhanced data about settings through the i icon in the Roles and rights section of EVA.
Details of the Update
The GetAvailableSettings
service now returns functionality data for each setting, as matched and announced in our recent batches of Core drops.
Users will no longer be able to see only functionalities limited to what's already active on their OU, but all settings related to a functionality instead.
๐ GetUserSubscriptionsโ
The following change is introduced as part of a bigger development - this feature is not ready for use
To create the framework for allowing users to manually enter a subscription identifier in our front end Apps, we are making some changes to the GetUserSubscriptions
service.
Details
The update introduces two new properties: ManualUserIdentifiers and ResubscribeHandling, which are necessary for manually entering user identifiers within the App.
Scenario Handling:
- Scenario 1: When changing a subscription status from subscribe to unsubscribe, the subscription identifier will not be displayed.
- Scenario 2: If ManualUserIdentifiers is set to true, subscribing requires a manual identifier. Depending on the ResubscribeHandling value:
- (0): The user identifier is updated.
- (1): The original user identifier is retained.
- The app will automatically display an input view, requiring users to enter the identifier to activate the subscription toggle.
- Scenario 3: If the subscription is set to block (i.e., ResubscribeHandling is 3), it cannot be edited, regardless of the ManualUserIdentifiers value.
- Scenario 4: When ManualUserIdentifier is false, and changing status from unsubscribe to subscribe:
- If ResubscribeHandling is (0) or (1), the App displays the automatically generated subscription identifier as is.
This update enhances the App's flexibility and user control over subscription identifiers, making it easier to manage subscriptions without additional API calls.
๐ ShipmentIdentifier CRUD servicesโ
The following change is introduced as part of a bigger development - this feature is not ready for use
We are adding new services to EVA, to enable the creation of shipment identifiers. These can then be used to ensure employees scan these identifiers during logistical processes.
Details
What Has Changedโ
Introduction of ShipmentIdentifiers Config Object
This new object allows the configuration of shipment identifiers, which are necessary for tracking and managing shipments effectively.
Types and Properties
- Types: Two types of identifiers have been introduced:
- 0 (crate)
- 1 (seal)
- Flag Property RequiredFor:
- This property determines whether scanning is mandatory. Current values are:
- 0 (none) - Scanning is not required.
- 1 (RTS) - Scanning is required for Ready to Ship (RTS) processes.
- This property determines whether scanning is mandatory. Current values are:
- Types: Two types of identifiers have been introduced:
CRUD Services
- New services have been added to manage these identifiers:
CreateShipmentIdentifier
UpdateShipmentIdentifier
DeleteShipmentIdentifier
ListShipmentIdentifiers
GetShipmentIdentifier
- New services have been added to manage these identifiers:
How to Useโ
- Creating Identifiers: Use the
CreateShipmentIdentifier
service to add new identifiers. Specify the type and set the RequiredFor flag as needed. - Updating and Deleting: Modify existing identifiers using
UpdateShipmentIdentifier
, or remove them withDeleteShipmentIdentifier
if they are no longer needed. - Listing and Retrieving: Use
ListShipmentIdentifiers
to view all configured identifiers andGetShipmentIdentifier
to retrieve specific details about an identifier.
Other topicsโ
๐ UserAgent filtering in EventExportโ
The EventExport extension point now supports scripting based on UserAgent.
Details
What's Changedโ
The latest update introduces the capability to filter event exports by user agent. This means you can now specify which user agents (browsers or devices) you want to include or exclude in your event data exports. This functionality is particularly useful for targeting specific platforms or isolating data from unwanted sources.
Technical Detailsโ
- The EventExport extension point now includes the UserAgent property.
- Inclusion and Exclusion: The flow allows both inclusion and exclusion filters.
Available propertiesโ
- UserAgent
- .Name
- .Version
- .Stage
- .Details
- .Raw
Note: This UserAgent.x in the script uses the EVA-User-Agent
of the request, not the regular User-Agent
extend EventExport
set export to false
if UserAgent.Name = 'EVA-TestSuite' then
set export to true
end
output export
โ Invoice attributes as order requirementsโ
In order to make invoice attributes visible and editable in our POS as order requirements, we are making some changes to the Order custom fields.
Details
What's Changedโ
- CustomFields in Data Object: The Data object now includes a CustomFields array with objects containing an ID and an IsValid property.
"Data": {
"IDs": [616, 617],
"CustomFields": [
{"ID": 616, "IsValid": true},
{"ID": 617, "IsValid": false}
]
}
๐ LoyaltyPrograms and LoyaltyProgramsGroups as Data lake exportsโ
EVA now includes two new Data lake exports:
- LoyaltyPrograms
- LoyaltyProgramsGroups
Additionally the Orders export now includes the LoyaltyProgramID
Samples
{
"GenerationTime": "2024-10-16T11:43:06.1082469Z",
"ID": "euw1",
"BackendID": "RG_001",
"Name": "Loyalty Groups",
"StartDate": "2024-07-02T00:00:00Z",
"BudgetCurrencyID": "EUR",
"UsedBudget": 0,
"DeactivateWhenBudgetIsReached": false,
"IsActive": true,
"IsDeleted": false
}
{
"GenerationTime": "2024-10-16T11:42:37.168464Z",
"ID": "euw124",
"LoyaltyProgramGroupID": "euw1",
"Name": "Tier1",
"Description": "Weekly",
"PaymentMethodsEnabled": false,
"LoyaltyPointsEnabled": false,
"DiscountsEnabled": false,
"StartDate": "2024-09-30T22:00:00Z",
"Handler": "LOYALTYAPI",
"RequireCustomer": true,
"RequiresSubscribedCustomer": true,
"AutoSubscribeCustomer": false,
"RequiresSubscriptionValidation": false,
"AllowPointAwarding": false,
"AllowPointsAsPaymentMethod": false,
"AllowPointsToBeWithdrawn": false,
"PointPendingPolicyType": "DEFAULT",
"PointExpirationPolicyType": "DEFAULT",
"UsedBudget": 0,
"DeactivateWhenBudgetIsReached": false,
"IsActive": true,
"IsDeleted": false,
"Conditions": [],
"PriceLists": [],
"PaymentTypes": [],
"PointAwardingRules": [],
"ProductLimitations": [],
"RequiredCustomFields": []
}
Fixesโ
- We fixed an issue where the RTS cleanup task was not triggered after partially shipping RTS orders, leading to stock remaining on the "Reserved" label.
- The service
CustomerListCases
could break when there were more than 4 CaseTopics. - Addressed an issue to ensure that cash journals for Void type devices are exempt from adhering to configured cash limits for drawers and safes, enabling employees to close these devices without manual intervention to adjust amounts.
- Fixed an issue where products outside of the related assortment were returned from the prefigure discount result when they shouldn't.
- After calculating the TaxAmount for orders with TaxDetails, the UnitPrices were not updated on the InvoicedOrderLineCorrection.
- Fixed an issue where subtotal, tax, and total amounts for Account/Payroll/Customer were not populating on electronic receipts for loyalty accounts.
- A solution has been implemented to address an issue with handling returns that are partially paid by Industrial Accounts and partially by customers.
- Fixed an issue where returns of an order with the old calculation into a return order with the new calculation lead to incorrect prices.
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โ
Highโ
- LoyaltyProgramID is deprecated and will be removed in 2.0.1031: Loyalty programs can now be created with the subscription info..
โก 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โ
Highestโ
- Highestย HardwareID is deprecated and will be removed in 2.0.791: Not used anymore.
- StartTransaction.HardwareID
- Highestย UseBase64 is deprecated and will be removed in 2.0.791: Forced.
- GetConfigurationQrForDevice.UseBase64
- Highestย UseHardwareID is deprecated and will be removed in 2.0.791: Not used anymore.
- StartTransaction.UseHardwareID
Highโ
- Highย User.BackendID is deprecated and will be removed in 2.0.775: No longer used.
- CreateCustomer.User.BackendID
Mediumโ
- Mediumย Pin is deprecated and will be removed in 2.0.767: This will no longer be returned, as the pin that is returned is the pin that is requested. This service will eventually return as an EmptyResponse.
- CreateIdentificationPinForEmployeeResponse.Pin
For more details on the impact categories, please see When are changes communicated?.
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.