Breaking
Event export configuration
For security reasons, we've introduced some deprecations around event export configuration management where sensitive information will no longer be available to retrieve once the event export configuration is made.
Values for SecretKey1
, SecretKey2
, Authorization.StaticBearerToken
, Authorization.StatisUnschemedToken
and the Authorization.ClientCertificate.Password
will be masked in their responses and thus no longer be available to be seen or copied from the Apps.
- The deprecations concern service
GetEventExportConfiguration
and will be included in our regular deprecation flow - The modification is instant for
GetEventExportConfigurations
and will skip any phase-in - Values for
SecretKey1
andSecretKey2
are added to the response ofCreateEventExportConfiguration
andRotateEventExportConfigurationKey
- Optionally:
UpdateEventExportConfiguration
now allows partial updates
Security
The following addition was made after this Core drop was sent out.
Security: URL checking
The checks performed on configurations and services that accept a Url
parameter have been increased so that when, for example, a BlobUrl
was requested, it actually matches an expected /blob
endpoint. Also, providing https
now is a default requirement.
Security: improved secret masking event export configuration
Secrets in the event export configuration will be properly masked before returning them to the Apps.
(During the App development to match this change, the old properties are still exposed, but will be dropped from support automatically from EVA Core 2.0.786 following the standard deprecation flow.)
Compliance
Certified invoices with HTTP destination
EVA is now supporting an HTTP destination for the following two stencil templates:
- CertifiedInvoice
- ElectronicReceipt
More on this and configuration steps can be found here.
🇪🇸 Catalonia
- Fixed some translations for the Catalan CertifiedInvoice template.
🇸🇪 Sweden
- Long email addresses on the CertifiedInvoice template will no longer overlap with other text on the invoice, and instead continue on a new line when necessary.
Properties
🆕 LoyaltyPrograms
We are adding the following properties to the following services:
- LoyaltyProgramName was added to
ListSubscriptions
- LoyaltyProgramID was added to
GetUserSubscriptions
🆕 TaxExempt flag
To ensure proper taxation in case of intercompany transactions in the US, we're adding a new flag to EVA, which will allow us to check if an Organization Unit is tax exempt.
If it is tax exempt, EVA will then check if the order is Interbranch or ReturnToSupplier. If these conditions are true then the order becomes TaxExempt.
✅ CurrencyID in SearchStockMutations
While the CurrencyID was already included in the SearchStockMutations
service call, its location was suboptimal. EVA now provides the ID directly in the response, instead of relying on the included product content.
🆕 AllowMultiCurrency property to PaymentTypes
The following change is introduced as part of a bigger development - consider it in beta.
We are adding a new property called AllowMultiCurrency to EVA that will allow you to setup custom payment methods that allow for multiple currencies.
Details
EVA already boasts an option to use multi-currency when it comes to cash payments, which is set via AllowMultiCurrencyOnOrganizationUnit
. This new property will make it available to custom payment methods.
The allowed currencies still need to be configured in the OU's Financial tab - specifically the Additional organization unit currencies card.
This property will be available in the following relevant services:
CreatePaymentType
UpdatePaymentType
It is returned in the following call:
GetPaymentTypeByID
Services
✅ ParseBarcode
The ParseBarcode
service will now also check for and return the SerialNumberconfigurationID when scanning the barcode of a product that has one attached.
If a serial number matches multiple SerialNumberConfigurationID's, each ID will be returned in an array.
✅ Remove mandatory OrganizationUnitID on header for FullyReceiveShipment
To make the FullyReceiveShipment
service more readily available for integrations, the service no longer requires an OrganizationUnitID to be specified in its header.
Mind that it's still necessary for the performing user to have the correct functionality (read: permission) on the receiving OU.
✅ Splitting order lines with ModifyQuantityOrdered
To make it possible to increase the quantity of products with order lines that don't allow quantity modification, such as physical gift cards, we've altered the ModifyQuantityOrdered
service to instead create multiple order lines.
Stencil templates
🆕 UnitCost property in pack slip template
To allow franchisers to see the cost price on pack slips of interbranch orders, we are adding the UnitCost property to the ShippedOrderLineModel model used by LinesShipped and LinesInShipment. This will allow you to display the property on the PackingSlip template.
🆕 Cash correction remarks on PeriodClosing template
We are making more information available on the PeriodClosing stencil template when it comes to cash corrections. Notably this includes the correction reason.
Details
We've added the following properties to the DeviceCorrection object:
- DeviceName
- PaymentTypeID
- PaymentTypeName
- CashCorrections
- Amount
- Remark
- CurrencyID
- TypeID
- CashCorrectionReasonName
🆕 Financial period ID in the PeriodClosingReportMessageTemplateModel
To give better insight when reviewing financial periods totals for OUs, EVA now includes the FinancialPeriodID in the PeriodClosingReportMessageTemplateModel stencil template.
Fixes
- RTS orders that have multiple internal stock movements will lead to a single CostOfGoods event.
- The
GetAvailableSubscriptions
service, which we prevented from being used anonymously in Core drop 2.0.754, will for the time being be available anonymously again. - Calling
GetCurrentCashJournals
for a Void device will no longer return cash journals for payment type Cash.
Deprecations
🆕 Introduced
These deprecations and requirements are now announced for the first time. Usage of these services and/or fields will return the appropriate EVA-Warnings
header. Failing to enter the mentioned required fields after the specified core release, will mean the services will no longer work.
Deprecated
- High Topic is deprecated and will be removed in 2.0.788: The topic should now be passed into CaseTopic.
- PushCase.Topic
Required
- High Field CaseTopic is required and will be enforced as such in 2.0.788.
- PushCase.CaseTopic
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.