M2M-EAM Installation and Configuration Guide

Article • 5/15/2026 • 19 min read

M2M-EAM Installation and Configuration

This section provides details on the installation and configuration of the Aptean EAM integration.

Pre-requisites

Before proceeding with the installation, it is important to fulfill the following prerequisites:

For M2M:

Mandatorily use the Grant Type as Resource Owner in the API Aptean EAM Setup.

For EAM:

For AIP:

For Smart Hub:

For Multi-Company:

Installation Instructions for EAM Integration

This section provides the steps for installing the EAM integration within Smart Hub.

The installation process will be managed by the Aptean Support team.

To set up Smart Hub for the integration, perform the following:

  1. Download and extract the installation package.

    1. Download the certified version of the package zip file (NU_EAM_M2M8.0_ 20231123.2.zip) from the M2M-EAM Integration SharePoint location.

    2. Unzip the file and copy all the contents to C:\LiteIntegration as shown below:

  2. Open the ConfigSettings.xml file located in C:\LiteIntegration using a text editor, and update it for Smart Hub installation and configurations. This file is used to set the parameters required to install Smart Hub.

    You require administrator rights to update the ConfigSettings.xml file.

    • Update the installation path and Repository name. Update <EMFInstallationPath> with the value where EMF is installed in the VM.

    For more details, refer to the ConfigSettings.xml section.

  3. Open the EAM_Config.xml file located in C:\LiteIntegration using a text editor, and update the EAM_Config.xml file.

    You require administrator rights to update the EAM_Config.xml file.

    1. Change EAM_Config.xml for the integration process configurations.

    2. Match {EAM-Company} to {M2M-CompanyDB}, and {EAM-plant} to {M2M-facility}.

    3. Add Vendor Types, Purchase Category under <DataSourceConfig>.

    4. Update M2M API configuration and EAM API configuration information under the <Main> loop.

    5. Update AIP configs with M2M and EAM tenant information, which can be obtained from the DevOps or Dev team.

For more details, refer to the EAM_config.xml section.

  1. Configure New Company. To add a new company, create a new tenant with a unique name (Example: DB002). The <tenant> body must be copied and pasted below </Tenant>.

  2. If EMF or MariaDB already exists in the environment (if the EAM integration solution has been executed previously), perform the following:

    1. Remove the Smart Hub Repository database.
    2. Uninstall MariaDB.
    3. Stop the Smart Hub server from services and uninstall the Smart Hub application.
  3. Run Setup.bat:

    1. Open the command prompt in Administrator mode and navigate to the C:\LiteIntegration folder.
    2. Run the Setup.bat file; it should perform the following:
      • Install MariaDB 10.6.10.

      • Install Smart Hub application (v733).

      • Create a repository with the name specified in ConfigSettings.xml.

      • Install Smart Hub license.

      • Import the Master package into the repository and run the Installer process.

      • Create processes and services based on the tenant details specified in EAM_ config.xml.

        In the provided example, configuration is done for two tenants. For the 1st tenant, the plant code is CST, and the facility is DEFAULT. For the 2nd tenant, the plant code is BM2, and the facility is EAMTEST. In the above example, two sets of processes will be created: one for Plant CST and the other for BM2.

      • Run the Configure Database process, setting up all configurations according to the details specified in EAM_config.xml.

      • After successful completion, sensitive information will be masked, and file names will be changed (e.g., ConfigSettings.xml converts to ConfigSettings_ masked.xml, EAM_config.xml converts to EAM_config_masked.xml).

  4. To set up another company, change the file names:

    1. Rename the EAM_config_masked.xml file to EAM_config.xml and provide values for specific fields instead of masked text:

      1. /Settings/Main/M2MConfigs/password
      2. /Settings/Main/EAMConfigs/clientSecret
    2. Rename the ConfigSettings_masked.xml file to ConfigSettings.xml and provide values for specific fields instead of masked text:

      1. /Settings/DatabaseSettings/adminPassword
    3. Add new company configurations in the EAM_config.xml file.

    4. Run the Installer process to create tenant-specific processes and services.

    5. After the successful installation of the added company, sensitive information will be masked, and file names will be changed (e.g., ConfigSettings.xml converts to ConfigSettings_masked.xml, EAM_config.xml converts to EAM_config_masked.xml).

For Existing Environment Setup with NU Already Installed (Manual Import)

Follow the steps below to set up an existing environment with NU already installed:

  1. Download and copy the latest file to C:\LiteIntegration.
  2. Change the file name of EAM_config_masked.xml to EAM_config.xml.
  3. Update the settings in the EAM_config.xml file.
  4. Open Smart Hub and log in to repositories.
  5. Right-click on the Root Folder, select the Import option from the context menu, and choose the NU EAM xemf file from the location in the first step. Complete the import. This action should create an EAMIntegration folder and processes.
  6. Modify the following fields in the JDBC connection settings of the repository after exporting:
    • Username: Set up while creating the repository.
    • Password: Created for the above username to log in to the DB.
    • Database Name: The repository name will be used.
  7. Expand the EAMIntegration folder, go to the ConfigureDatabase process, then right-click and select the Run Now option from the context menu. This action should initiate the configuration of the EAM integration.
  8. Exit Smart Hub.

Configurations in ConfigSettings and EAM_Config

This section provides the configuration settings and parameters available in the ConfigSettings.xml and EAM_Config.xml files.

ConfigSettings.xml

This topic provides the configuration settings to be done in the ConfigSettings.xml file.

Use the ConfigSettings.xml file to define parameters necessary for the installation of Smart Hub, repository creation, license installation, and process importing. Be sure to adjust key entries as per the installation.

EMFInstallationPath: Specify the installation path for the Smart Hub application.

EAM_config.xml

This topic provides details on the parameters available in the EAM_config.xml file.

Main (Common for All Tenants or Companies)

M2MConfigs

The following table provides the default values and their descriptions for the parameters available in M2MConfigs.

ParameterDefault Values Or ExamplesDescription
baseURIURI for M2M 8.0 - https://prod.m2m.apteancloud.comThis is the base URI to make any request through the API of M2M.
usernameThis is a required parameter for authentication to make request through the API for M2M.
passwordRequired to authenticate the user.
clientIDRequired for API authentication.
clientSecretRequired for API authentication.
EAMConfigs

The following table provides the default values and their descriptions for the parameters available in EAMConfigs.

ParameterDefault Values Or ExamplesDescription
baseURIhttps://prod.eam.apteancloud.com/This is the base URI to make any request through the API of EAM.
ClientIDThis is required to acquire tokens for authentication.
clientSecretThis is required to acquire tokens for authentication.
ScopeThis is required to acquire tokens for authentication.
AudienceThis is required to acquire tokens for authentication.
taskManagement_ baseUriThis is the base URI to make any request through the API of EAM Task management.
taskManagement_ scopeThis is required to acquire tokens for task management API authentication.
AIPconfig

The following table provides the default values and their descriptions for the parameters available in AIPconfig.

ParameterDefault Values Or ExamplesDescription
baseURIFor e.g. https://stg.integration- graph.apteansharedservices.com For Production, env stg will not be available.This is the base URI to make any request through the API of AIP.

Tenants (Specific to Tenant or Company)

DataSourceConfigs

The following table provides the default values and their descriptions for the parameters available in DataSourceConfigs.

ParameterDefault ValuesDescription
supplierStartDate2023-04-21 or YYYY-MM- DDStart date to poll vendors from M2M. Use the similar date format as specified in the default value.
supplierEndDate2100-10-10 or YYYY-MM- DDEnd date to poll vendors from M2M.
supplierStartTime00:00:00 or HH:MM
Start time to poll vendors from M2M.
supplierRepeatInterval30Duration of time (in minutes) to repeat polling vendors from M2M.
reqStartDate2023-04-21 or YYYY-MM- DDStart date to poll Requisitions from EAM. Use the similar date format as specified in the default value.
reqEndDate2100-10-10 or YYYY-MM- DDEnd date to poll Requisitions from EAM.
reqStartTime00:00:00 or HH:MM
Start time to poll Requisitions from EAM.
ParameterDefault ValuesDescription
reqRepeatInterval30Duration of time (in minutes) to repeat polling Requisitions from EAM.
POStartDate2023-04-22 or YYYY-MM- DDStart date to poll Purchase orders from M2M.
POEndDate2100-10-10 or YYYY-MM- DDEnd date to poll Purchase orders from M2M.
POStartTime00:00:00 or HH:MM: SSStart time to poll Purchase orders from M2M. POStartTime should be earlier than receiptStartTime since receipts should be created after creating purchase orders.
PORepeatInterval45Duration of time (in minutes) to repeat polling Purchase orders from M2M.
receiptStartDate2023-04-22 or YYYY-MM- DDStart date to poll receipts from M2M.
receiptEndDate2100-10-10 or YYYY-MM- DDEnd date to poll receipts from M2M.
receiptStartTime00:00:00 or HH:MM: SSStart time to poll receipts from M2M. receiptStartTime should be after POStartTime.
ParameterDefault ValuesDescription
receiptRepeatInterval45Duration of time (in minutes) to repeat polling receipts from M2M.
M2MConfigs

The following table provides the default values and their descriptions for the parameters available in M2MConfigs.

ParameterDefault Values Or ExamplesDescription
CompanyID01It is required to fetch or create data to respective company in M2M.
FacilityDEFAULTIt is required to fetch or create data to respective facility in M2M.
VendorTypesSTVendors will be fetched from M2M with the provided vendor types. Multiple vendor types can be provided. Example: Single Vendor type – ST vendor type can be configured.

Multiple - AP and ST vendor types can be configured. |

ParameterDefault Values Or ExamplesDescription
PurchaseCategoriesEAMItem type of EAM should be mapped with Purchase category in M2M. In Requisition to PO flow, the POs will be created M2M with purchase category that is mapped with respective Item type of line item from EAM. Multiple mappings can be provided. Example: Single mapping – Stock Item type is mapped to EAM purchase category . Multiple mapping –

Service Item type is mapped to EAM1 purchase category. |

EAMConfigs

The following table provides the default values and their descriptions for the parameters available in EAMConfigs.

ParameterDefault ValuesDescription
companyIDEAM CSTRefers to EAM company.
plantCode003This is required in every API request body.
databaseNameThis specifies which database operations need to perform.
AIPConfigs
EAM

The following table provides the default values and their descriptions for the AIPConfigs parameters available in EAM.

ParameterDefault ValuesDescription
x-aptean- tenantIt refers to the tenant ID required for authentication to make an API call to AIP.
x-aptean- apimRequired for authentication to make API call to AIP.
x-aptean- productIt refers to the product ID for EAM, which is required to make an API call to AIP.
M2M

The following table provides the default values and their descriptions for the AIPConfigs parameters available in M2M.

ParameterDefault ValuesDescription
x-aptean- tenantIt refers to the tenant ID required for authentication to make an API call to AIP.
x-aptean- apimRequired for authentication to make API call to AIP.
x-aptean- productIt refers to the product ID for M2M, which is required to make an API call to AIP.

Setting Up SMTP Server

This section provides details on setting up the SMTP server, which is required to send emails to the recipients for error notifications.

If an SMTP service already exists for other integrations, you still need to set up this service for EAM integration.

To set up the SMTP server, perform the following:

  1. Open the Smart Hub repository, navigate to Services, and then select SMTP Services.

  2. Open MySmtpService. It should resemble the image below:

  3. Configure the following details:

    • From: Name of he Sender.
    • From address: Email address of the sender.
    • Email server:
      • For Gmail: smtp.gmail.com.
      • For Outlook: smtp.office365.com.
    • Username: Username for the sender’s mail account.
    • Password: If two-factor authentication is enabled, provide the application key. Otherwise, provide the email account password.
  4. Click Apply and then OK.

Integration Flow

The M2M - EAM integration flow is shown in the image below.

Field Validations

Ensure synchronization of validation codes for the following fields between M2M and EAM:

Field Mappings

This section provides details and descriptions for the fields available in EAM and M2M.

Supplier Integration

Supplier Header

The following table details the fields available in EAM and M2M for Supplier Header.

Field In M2MField In EAMDescription
Vendor NoSupplierThe value received from M2M will be exactly updated to EAM.
CompanyNameThe value received from M2M will be exactly updated to EAM.
CityCityThe value received from M2M will be exactly updated to EAM.
StateStateThe value received from M2M will be exactly updated to EAM.
ZipPostal CodeThe value received from M2M will be exactly updated to EAM.
CountryCountryThe value received from M2M will be exactly updated to EAM.
PhonePhoneThe value received from M2M will be exactly updated to EAM.
FaxFaxThe value received from M2M will be exactly updated to EAM.
E-MailEmail addressThe value received from M2M will be exactly updated to EAM.
Shipping MethodFreightThe Freight code is validated along the codes present in EAM, so it will only accept the codes present in EAM.
Payment TermsPayment TermsThe Payment terms code is validated along the codes present in EAM, so it will only accept the codes present in EAM.
Field In M2MField In EAMDescription
Vendor TypePO Details- TypeType is validated along the codes present in EAM, so it will only accept the codes present in EAM.
Default CurrencyCurrencyThe Currency code is validated along the codes present in EAM, so it will only accept the codes present in EAM.
Credit LimitCredit LimitThe value received from M2M will be exactly updated to EAM.
Vendor StatusActiveIf the Status in M2M is ‘Approved’ then supplier will be active in EAM. If ‘Inactive’ then supplier will be inactive in EAM. If ‘Started’ then supplier won’t be picked by the integration.

Vendor Address

The following table details the fields available in EAM and M2M for Vendor Address.

Field In M2MField In EAMDescription
KeyAddress CodeThe value received from M2M will be exactly updated to EAM.
AddressAddressThe value received from M2M will be exactly updated to EAM. Only first 255 characters can be updated to EAM.

Vendor Contacts

The following table details the fields available in EAM and M2M for Vendor Contacts.

Field In M2MField In EAMDescription
First NameContact NameFirst Name and Last Name from M2M will be concatenated and updates to EAM.
Last Name
Category/TitleTitleThe value received from M2M will be exactly updated to EAM.
PhoneWork PhoneThe value received from M2M will be exactly updated to EAM.
FaxFaxThe value received from M2M will be exactly updated to EAM.
E-MailEmailThe value received from M2M will be exactly updated to EAM.
NotesNotesThe value received from M2M will be exactly updated to EAM. Only first 255 characters can be updated to EAM.
Primary ContactPrimary ContactIf Primary Contact status in M2M will be updated exactly to EAM.

Requistion to PO

Purchase Order Header

The following table details the fields available in EAM and M2M for Purchase Order Header.

Field In EAMField In M2MDescription
BuyerPlannerThe value received from EAM will be exactly updated to M2M. The Buyer code received from EAM will be validated along the codes present in M2M, so it will only accept the codes present in M2M.
Recommended SupplierVendor NumberThe value received from EAM will be exactly updated to M2M.
Delivery DatePromised DateThe value received from EAM will be exactly updated to M2M.

Items

The following table details the fields available in EAM and M2M for Items.

Field In EAMField In M2MDescription
UnitsUnit of MeasureUnit of measure is validated along the codes present in M2M, so it will only accept the codes present in M2M.
Date required from SupplierOriginal promised dateThe value received from EAM will be exactly updated to M2M.
Qty IssuedReceived QuantityThe value received from EAM will be exactly updated to M2M.
Field In EAMField In M2MDescription
Unit CostUnit CostThe value received from EAM will be exactly updated to M2M.
ItemPart NumberThe value received from EAM will be exactly updated to M2M.
Qty requiredOrder QuantityThe value received from EAM will be exactly updated to M2M.

Purchase Order Integration

The following table details the fields available in EAM and M2M for Purchase Order Integration.

Field In M2MField In EAMDescription
Part NumberItemThe value received from M2M will be exactly updated to EAM.
Order QuantityQty OrderedThe value received from M2M will be exactly updated to EAM.
Unit CostUnit CostThe value received from M2M will be exactly updated to EAM.
Address KeyAreaThe value received from M2M will be exactly updated to EAM.
Vendor NumberSupplierThe value received from M2M will be exactly updated to EAM.
Field In M2MField In EAMDescription
Vendor Part NumberManufacturer Part NumberThe value received from M2M will be exactly updated to EAM.
Unit of measureUnit of PurchaseUnit of measure is validated along the codes present in EAM, so it will only accept the codes present in EAM.
PO NumberPurchase OrderThe value received from M2M will be exactly updated to EAM.
Purchase Order RevisionRelease
Item NumberPO LineThe value received from M2M will be exactly updated to EAM.
LocationStores LocationThe value received from M2M will be exactly updated to EAM. Location code in M2M should match with location code in EAM.
BinBinThe value received from M2M will be exactly updated to EAM. Bin code in M2M should match with Bin code in EAM.

Receipt Integration

The following table details the fields available in EAM and M2M for Receipt Integration.

Field In M2MField In EAMDescription
Part NumberItemThe value received from M2M will be exactly updated to EAM.
Quantity ReceivedQty ReceivedThe value received from M2M will be exactly updated to EAM.
Unit CostUnit CostThe value received from M2M will be exactly updated to EAM.
Vendor NumberSupplierThe value received from M2M will be exactly updated to EAM.
Inventory U/MUnit of PurchaseUnit of measure is validated along the codes present in EAM, so it will only accept the codes present in EAM.
Purchase Order RevisionPurchase Order ReleaseThe value received from M2M will be exactly updated to EAM.
Item NumberPO LineThe value received from M2M will be exactly updated to EAM.
LocationStores LocationThe value received from M2M will be exactly updated to EAM. Location code in M2M should match with location code in EAM.
BinBinThe value received from M2M will be exactly updated to EAM. Bin code in M2M should match with Bin code in EAM.

Error Notification

In the event of any errors during integration, notifications will be sent to recipients subscribed to the M2MIntegrationAdmin job function in EAM.

Known Issues

  1. If any updates are made to a Purchase Order (PO) in M2M that has already been synced to EAM, a change order will be created in EAM. Note that the update is not specific to changes in order quantity.
  2. Receipts for Blanket POs cannot be created in EAM. An error notification will be sent, indicating that the PO does not exist if an attempt is made to create it.
  3. Once contact details of a vendor in M2M are synced to EAM, modifying the contact’s first name or last name will add a new contact to the vendor in EAM.
  4. The supplier address value will not be pulled into the PO record in EAM which is created from M2M.

Points to Note

  1. If a vendor is deleted in M2M, manual deletion is required in EAM.

  2. Active vendors in M2M will be transferred to EAM. If a vendor is made inactive in M2M and is synced in EAM, the integration will update the vendor’s status as inactive in EAM.

  3. While creating a Requisition to PO, if an item is standard, the revision and unit cost will be updated from the Item Master in M2M. If nonstandard, it will be considered as NS, and the unit cost will be updated as in EAM.

  4. Avoid using special characters (’, ”, /, +) when creating records in M2M.

  5. Field length limitations for the following fields when creating items in the Requisition of EAM:

    • Item – max length (25)
    • Qty Received – 15 (including decimal)
    • Qty Returned – 15 (including decimal)
    • Unit cost – 17 (including decimal)
    • Qty Ordered – 15 (including decimal)

    If data provided exceeds the specified length, the PO will not be created in M2M and will send an error notification.

  6. When importing suppliers to EAM, the Ship Method field from M2M is linked to the Freight field in EAM. If the Ship Method information is not available in M2M, the vendor can still be synchronized, but the Freight field in EAM must be filled in manually, as it is a required field.

  7. While creating a Requisition in EAM, Purchasing interface should be enabled in Module availability.

  8. Please note the following while making any changes for PO or creating a Receiver in M2M:

    1. Text length in Location should not exceed 5; otherwise, it will be truncated to 5 in EAM.
    2. Text length in Unit cost should not exceed 10 (including decimal); otherwise, it won’t import to EAM and throws an error notification.
    3. Text length for Quantity Ordered/Received (including decimal) should not exceed 10; otherwise, it won’t import to EAM and throws an error notification.
  9. Steps to set up Over Receipts in EAM:

    1. Go to Setup in EAM Navigation bar.

    2. Select Setup Options in the Drop-down.

    3. Go to Inventory Options and select General.

    4. Click on DETAILS in the right-side panel.

    5. Edit and select the required option under Over Receipts.

    6. Select an option:

      • Do Not Allow Quantity on Hand to Fall Below Zero – Throws an error if over- received.
      • Allow Quantity on Hand to Fall Below Zero; No Warning – Allows over- receiving.
      • Allow Quantity on Hand to Fall Below Zero; Provide a Warning – Provides a warning if over-received.

      Refer to the image below for better understanding:

Test Scenario - Supplier Integration

  1. Create a vendor in M2M, filling in all the necessary fields. Change the vendor status to Approved, and configure the vendor type to match your setup configuration for synchronization. Map the fields mentioned in the Field Mapping to EAM.

  2. The Supplier Integration process will run according to the scheduled time specified in the configuration. During execution, the integration will pick up this vendor and update it in EAM.

  3. The supplier will be created in EAM as depicted in the image below:

Test Scenario - Requisition to PO

  1. Create a requisition in EAM with the required items and approve it.

  2. Execute the Requisition Integration process based on the scheduled time specified in the configuration. During execution, the system will retrieve the created requisitions and generate purchase orders in the M2M system. Subsequently, an acknowledgment is sent to EAM to confirm the successful creation of the purchase order. Any errors occurring during this process will be communicated within the acknowledgment.

  3. Purchase orders will be created per vendor. For example, if a requisition has three line items, where the first two have one vendor and the third another vendor, then two purchase orders will be created in M2M: the first with two items and the second with one.

  4. Purchase orders will be created in M2M as depicted in the image below:

Test Scenario - Purchase Order Integration

  1. Make the necessary changes for the purchase order created in M2M and update the status to Open.

  2. Execute the Purchase Integration process based on the scheduled time specified in the configuration. During execution, the system will retrieve the purchase order and create it in EAM. If any changes are made to the purchase order after syncing to EAM, a change order will be generated in EAM.

  3. Purchase orders will be created in EAM as shown in the image below:

Test Scenario - Receipt Integration

  1. Create a receiver for the PO created from the EAM requisition in M2M and change the status to Received.

  2. Execute the Receipt Integration process based on the scheduled time specified in the configuration. During execution, the system will retrieve the receipts from M2M and create them in EAM.

  3. Purchase receipts will be created as shown in the image below: