Skip to main content

xRM Update Manual 2026.10.0

2026-10-21


Modules of General​

ldap (3.0.0)​

Breaking Changes

  • Added service-based extension points for customizing the Active Directory import without modifying activeDirectoryImport_serverProcess directly. Supported customizations include role mapping, data mapping, communication types, ignored users, and additional user search criteria.
  • companyContactID is now read from the project preference myCompany.contactId instead of a hardcoded value. The import fails with an error if the preference is not set or does not resolve to an existing contact.

Instructions / Newer Versions of required Dependencies

  • Before updating, configure the project preference myCompany.contactId with a valid CONTACTID. Access it in code as custom.myCompany.contactId.

CHANGELOG.md · main · xrm / modules / ldap · GitLab


Modules of Platform​

keyword (4.0.0)​

Breaking Changes

  • Refactored KeywordUtils.getResolvedTitleSqlPart and subordinate functions to CommunicationUtils_lib, adding the optional pNoTranslate parameter.

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · 4.0.0 · xrm / modules / keyword · GitLab

usermanagement (7.0.0)​

Breaking Changes

  • Changed the imports for CommValidationUtil.makeValidationFn and CommValidationUtil.getExtensionsBlueprint function calls from Communication_lib to CommunicationUtils_lib.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/utility@>=5.3.0 <6.0.0

CHANGELOG.md · 7.0.0 · xrm / modules / usermanagement · GitLab


Modules of AI​

ai-activity-entry (1.0.0) 🆕​

Breaking Changes

  • Introduced a new module that adds an Activity context to the ai-data-entry "Capture via AI" feature:
    • AI extracts activity fields (subject, content, category, direction) from free text.
    • AI creates a fully structured activity record with resolved contact/organisation links.

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · main · xrm / modules / ai-activity-entry · GitLab

ai-data-entry (1.0.0) 🆕​

Breaking Changes

  • Introduced a new module that allows users to create CRM records from free-text notes via AI:
    • AI structures the input.
    • AI creates the corresponding record for a selected context.

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · main · xrm / modules / ai-data-entry · GitLab

ai-email-generator (3.0.0)​

Breaking Changes

  • Refactored the code for compatibility with the new correspondence version.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/correspondence@>=8.0.0 <9.0.0

CHANGELOG.md · main · xrm / modules / ai-email-generator · GitLab

ai-task-entry (1.0.0) 🆕​

Breaking Changes

  • Introduced a new module that adds a Task context to the ai-data-entry "Capture via AI" feature:
    • AI extracts task fields (subject, description, status, priority, dates, privacy) and the assignee (department, employee, or the current user by default) from free text.
    • AI creates a fully structured task with resolved contact/organisation links.

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · main · xrm / modules / ai-task-entry · GitLab

ckeditorai-tools (2.0.0)​

Breaking Changes

  • DefaultAiCommands_lib: Command groups are now passed to ckeditorDefaultAiCommands_service implementations as an object keyed by groupId instead of an array. This allows direct access to a group without manual searching.

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · main · xrm / modules / ckeditorai-tools · GitLab


Modules of Contact Management​

contact (9.0.0)​

Breaking Changes

  • Moved CommValidationUtil.makeValidationFn and CommValidationUtil.getExtensionsBlueprint from Communication_lib to the Utility module.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/utility@>=5.3.0 <6.0.0

CHANGELOG.md · 9.0.0 · xrm / modules / contact · GitLab

correspondence (8.0.0)​

Breaking Changes

  • Replaced references to document templates with the new template logic.
  • Updated the following elements in Email_entity:
    • Fields:
      • DOCUMENT_TEMPLATE: Replaced with TemplateID.
      • documenttemplatetypeclassification: Removed.
    • Consumers:
      • DocumentTemplates: Replaced with Templates.
    • Parameters:
      • DocumentTemplateTypeClassification_param: Removed.
  • Updated the following elements in EmailGenerator_entity:
    • Consumers:
      • DocumentTemplates: Replaced with Templates.
    • Parameters:
      • DocumentTemplateId_param: Replaced with TemplateID_param.
  • Updated the following elements in Letter_entity:
    • Fields:
      • DOCUMENT_TEMPLATE: Replaced with TemplateID.
      • comingfrom: Removed.
    • Consumers:
      • DocumentTemplates: Replaced with Templates.
    • Parameters:
      • ComingFrom_param: Removed.
  • Updated the following elements in SerialLetter_entity:
    • Fields:
      • DOCUMENTTEMPLATE_ID: Replaced with TEMPLATE_ID.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-template@>=4.2.0 <5.0.0

CHANGELOG.md · 8.0.0 · xrm / modules / correspondence · GitLab

dsgvo (6.0.3)​

Breaking Changes

  • DSGVOConfiguration_entity:
    • Added the fields affectedByFilter and deletedOrAnonymized.
    • Adjusted COUNT_USAGE.value.expression and OpenDatasets.onActionProcess.
  • Refactored the DSGVO ticket-deletion functions:
    • Added the new dsgvoDeleteFunctions_service service.
    • Removed deleteTicket and deleteTicketLinks from dsgvo_lib.
    • Moved both functions to the support-ticket module, where they are implemented via the service.
  • Removed the @aditosoftware/support-ticket dependency.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/utility@>=5.3.0 <6.0.0

CHANGELOG.md · 6.0.3 · xrm / modules / dsgvo · GitLab

microsoft-graph-contactsync (3.0.2)​

Breaking Changes

  • Changed the default value of microsoftGraph.contactSync.active to false.
    • Customers usually do not have a test Exchange environment, so synchronization runs against production. A default value of true risks flooding Outlook with test contacts that are difficult to remove.

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · main · xrm / modules / microsoft-graph-contactsync · GitLab

microsoft-graph-permissionsync (2.0.0)​

Breaking Changes

  • GraphPermissionSyncUtils.processPermissionsBatch and handleUpdateBatchResponse now require the mandatory pUserMap argument to resolve grantors and grantees:
    • Parameter order: processPermissionsBatch(pObjects, pUpns, pResponseHandler, pUserMap, pGraphAuthConfig).
    • pUserMap is mandatory and precedes the still-optional pGraphAuthConfig.
    • Callers that omit pUserMap now throw a TypeError on the first grantor lookup instead of silently performing no action.
  • Custom implementations that override the default graphSyncCalendarPermissions_serverProcess must:
    • Build the upnToUser map (lowercase UPN → { title, id }).
    • Pass the map to the permission-processing functions.
  • User titles and IDs are prefetched in a single ASYS_USERS query and reused to resolve grantors and grantees instead of performing per-user lookups.
  • Permission writes per batch are aggregated into one bulk INSERT / UPDATE / DELETE operation (via db.inserts, db.updates, and SqlBuilder ... IN (...)) instead of per-row statements.
  • The domain filter for the initial user selection is applied in SQL (LIKE) rather than client-side.
  • Replaced the internal helpers loadUserForUpn, userTitleToId, writePermission, and deletePermissions, as well as the emailToTitleMap cache, with the prefetched user map and bulk statements.

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · main · xrm / modules / microsoft-graph-permissionsync · GitLab

usermanagement-contact (6.0.0)​

Breaking Changes

  • Employee_entity:
    • Added the contactRunIncrIndexer_impl service implementations to afterOnInsert_service, afterOnUpdate_service, and afterOnDelete_service.
    • These trigger EmployeeUtils.runIncrementalIndexer() to maintain data consistency.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/usermanagement@>=6.2.0 <8.0.0

CHANGELOG.md · main · xrm / modules / usermanagement-contact · GitLab


Modules of Sales​

contract (2.0.0)​

Breaking Changes

  • None

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/keyword@>=4.0.0 <5.0.0

CHANGELOG.md · 2.0.0 · xrm / modules / contract · GitLab

digital-signing (4.0.0)​

Breaking Changes

  • Switched from the SIGN8 workflow API to the SIGN8 SIPO (envelope) API. All calls are bundled in the new SIPO_lib. This is not a drop-in upgrade, and there is no runtime switch between the two APIs.
  • Replaced the workflow API receivers with the new digitalSigningEnvelopeStatusChange_rest webhook receiver, which correlates events through payload.externalId.
  • Signature fields are now created using placeholders ({{signature, rN}}) inside the document instead of fixed coordinates. Every document sent for signing must contain one placeholder per signer.
  • Signers must provide a two-factor code by default. The signature level is determined by SignatureLevel_param (SES/AES/QES) instead of SIMPLESIGNATURE.
  • The module stores signed documents on the signed object itself. Remove any digitalSigningWorkflowStatusChange_finished_service implementation written for the workflow API that downloads and attaches the documents separately; otherwise, the documents will be attached twice.
  • DigitalSigningWorkflow_entity: Deleting a signing workflow also deletes the corresponding envelope in SIGN8.

Instructions / Newer Versions of required Dependencies

  • Installations that need to continue using the workflow API must remain on the 3.x version line.
  • Request an API token from SIGN8 and use one SIGN8 team per ADITO instance, as webhooks are configured per team.
  • Set the following InstanceConfig values in the consumer project:
    • custom.sign8.isEnabled
    • custom.sign8.systemUrl (without any path)
    • custom.sign8.apiToken
    • custom.sign8.webhookSecret
  • Register the webhook in the SIGN8 portal (Team > Team settings > Webhooks) using the URL <$sys.origin>/services/rest/digitalSigningEnvelopeStatusChange_rest and the same secret as in custom.sign8.webhookSecret.
  • Ensure that every document and template used for signing contains the signature placeholders. The delivered templates "Angebot (mit digitaler Signatur) LB" and "Offer (with digital signature) LB" already contain them.

CHANGELOG.md · 4.0.0 · xrm / modules / digital-signing · GitLab

district (2.0.1)​

Breaking Changes

  • Removed the following visit-related fields:
    • VISITFREQUENCY
    • VISIT_BEGINDATE
    • VISIT_ENDDATE
    • NEXT_DATE
    • FOLLOW_UP_APPOINTMENT_1
    • FOLLOW_UP_APPOINTMENT_2

Instructions / Newer Versions of required Dependencies

  • None

CHANGELOG.md · 2.0.1 · xrm / modules / district · GitLab

dunning (2.0.1)​

Breaking Changes

  • The module now requires the new document editor to function correctly.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-editor@>=1.0.0 <2.0.0

CHANGELOG.md · 2.0.1 · xrm / modules / dunning · GitLab

expense-report (2.0.0)​

Breaking Changes

  • The module now requires the new document editor to function correctly.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-editor@>=1.0.0 <2.0.0
  • @aditosoftware/document-template@>=4.2.0 <5.0.0

CHANGELOG.md · 2.0.0 · xrm / modules / expense-report · GitLab

offer (4.1.1)​

Breaking Changes

  • Updated the dependencies.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/keyword@>=4.0.0 <5.0.0

CHANGELOG.md · 4.1.1 · xrm / modules / offer · GitLab

opportunity (3.0.0)​

Breaking Changes

  • Updated the dependencies.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/keyword@>=4.0.0 <5.0.0

CHANGELOG.md · 3.0.0 · xrm / modules / opportunity · GitLab

product (2.0.0)​

Breaking Changes

  • Updated the dependencies.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/keyword@>=4.0.0 <5.0.0

CHANGELOG.md · 2.0.0 · xrm / modules / product · GitLab

receipt (4.0.2)​

Breaking Changes

  • None

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/keyword@>=4.0.0 <5.0.0

CHANGELOG.md · 4.0.2 · xrm / modules / receipt · GitLab


Modules of Marketing​

bulkmail (3.0.0)​

Breaking Changes

  • Replaced references to document templates with the new template logic.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-template@>=4.2.0 <5.0.0

CHANGELOG.md · main · xrm / modules / bulkmail · GitLab


Modules of Service​

mail-service (4.0.1)​

Breaking Changes

  • Changed the imports for CommValidationUtil.makeValidationFn and CommValidationUtil.getExtensionsBlueprint function calls from Communication_lib to CommunicationUtils_lib.
  • Replaced references to document templates with the new template logic.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-template@^4.2.0
  • @aditosoftware/utility@>=5.2.0 <6.0.0

CHANGELOG.md · 4.0.1 · xrm / modules / mail-service · GitLab

support-ticket (5.0.0)​

Breaking Changes

  • Changed the imports for CommValidationUtil.makeValidationFn and CommValidationUtil.getExtensionsBlueprint function calls from Communication_lib to CommunicationUtils_lib.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/utility@>=5.3.0 <6.0.0

CHANGELOG.md · 5.0.0 · xrm / modules / support-ticket · GitLab

support-ticket-template (2.0.0)​

Breaking Changes

  • Replaced references to document templates with the new template logic.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-template@^4.2.0

CHANGELOG.md · 2.0.0 · xrm / modules / support-ticket-template · GitLab


Modules of Collaboration​

project (5.0.0)​

Breaking Changes

  • The global search index for projects no longer translates the status keyword when building the index description (index.query.js). This keeps the index independent of the session language at build time.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/keyword@>=4.0.0 <5.0.0

CHANGELOG.md · 5.0.0 · xrm / modules / project · GitLab

projectticket (5.0.0)​

Breaking Changes

  • The global search index for project tickets no longer translates the status keyword when building the index description (index.query.js). This keeps the index independent of the session language at build time.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/keyword@>=4.0.0 <5.0.0

CHANGELOG.md · 5.0.0 · xrm / modules / projectticket · GitLab

projectticketcategorization (4.0.0)​

Breaking Changes

  • projectticketcategorization now uses the new template logic.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-template@>=4.2.0 <5.0.0

CHANGELOG.md · 4.0.0 · xrm / modules / projectticketcategorization · GitLab

projecttype (2.0.0)​

Breaking Changes

  • projecttype now uses the new template logic.

Instructions / Newer Versions of required Dependencies

  • @aditosoftware/document-template@>=4.2.0 <5.0.0

CHANGELOG.md · 2.0.0 · xrm / modules / projecttype · GitLab