{"revision":"c10276e953456835cdbb1f3a60d58ae1980be353","document":{"id":25166,"path":"it-asset-management/enterprise-asset-management/manage-shipments-eam.md","title":"Managing enterprise asset shipments","bundle":null,"doc_type":null,"release":"australia","body":"\n# Managing enterprise asset shipments\n\nTrack and manage your enterprise asset shipments in real-time by integrating the Enterprise Asset Management application with third-party shipping carriers using the IT Asset Management integration framework.\n\n\\[Omitted image \"itam-carrier-integration-eam.png\"\\] Alt text: Shipping carrier integration overview.\n\n## Prerequisites\n\nBefore you can integrate the Enterprise Asset Management application with a third-party shipping carrier, the shipping carrier must complete the following prerequisites:\n\n-   Enable cross scope access on their third-party application.\n-   Create a script include that extends the base ITAMShipmentIntegration script so that you can connect to their third-party application and retrieve shipment details in real-time.\n    -   The script include must be available in the IT Asset Management application scope. However, the Caller access isn't restricted and Accessible from fields must be available in All application scopes.\n    -   Business logic must be implemented within the fetchShipmentinfo function to enable communication with the carrier API based on tracking numbers. The carrier API is required for connecting to the third-party application and for retrieving shipment details.\n    -   The fetchShipmentinfo function must return a JSON object with the following HTTP response code and message:\n\n        ```\n        {\n        httpResponseCode: 200, httpResponseMessage: ‘SUCCESS’\n        }\n        \n        ```\n\n    -   When the script include is in test mode, the shipping carrier invokes the carrier API to validate your connection to their third-party application. The shipping carrier can then either verify and return the response or query the shipments and invoke the processResponse function using the following response format:\n\n        ```\n        [\n        {\n        trackingNumber: ‘’,\n        deliveryDate: ‘’,\n        pickupDate: ‘’,\n        packageStatus: ‘’.\n        statusDetail: ‘’,\n        trackingURL: ‘’,\n        parcelWeight: ‘’,\n        deliveryServicesCost: ‘’,\n        currency: ‘’\n        }\n        \t]\n        \n        ```\n\n        If the shipping carrier invokes the processResponse function, they must return the response after the function completes.\n\n-   Create an integration profile with the appropriate name, carrier API details, and connection details. This integration profile enables you to connect to the third-party application so that you can retrieve shipment details.\n-   If the third-party application uses the ServiceNow Credentials \\[discovery\\_credentials\\] table or any other ServiceNow table with Password2 fields, provide a KMF access map policy to enable access to those tables. For more information on KMF access map policies, see [Password2 encryption with the Key Management Framework \\(KMF\\)](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/platform-security/password-2way-encrypted-fields.md).\n\nAfter the shipping carrier completes these prerequisites, you must complete these additional prerequisites:\n\n-   If the integration profile contains connection details through a connection and credentials alias, update those details as needed so that you can successfully authenticate and connect to the carrier API.\n-   Associate the shipping carrier with the integration profile.\n\n-   **[Create a shipping carrier record in the Enterprise Asset Workspace](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/it-asset-management/enterprise-asset-management/create-shipment-carrier-record-eam.md)**  \nCreate a shipping carrier record in the Enterprise Asset workspace to associate the carrier with an integration profile.\n-   **[Script include for third-party shipping carrier integrations](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/it-asset-management/enterprise-asset-management/script-include-shipping-carrier-integrations-eam.md)**  \nBefore you can integrate the Enterprise Asset Management application with a third-party shipping carrier, that shipping carrier must create a script include that extends the base ITAMShipmentIntegration script. By extending this script, you can connect to the third-party shipping carrier application and retrieve shipment details in real-time.\n-   **[Integrate with a third-party shipping carrier in the Enterprise Asset Workspace](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/it-asset-management/enterprise-asset-management/integrate-shipping-carriers-eam.md)**  \nIntegrate the Enterprise Asset Management application with a third-party shipping carrier so that you can track the real-time status of your enterprise asset shipments.\n-   **[View integration profiles for third-party shipping carriers in the Enterprise Asset Workspace](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/it-asset-management/enterprise-asset-management/view-shipping-carrier-integration-profiles-eam.md)**  \nView the integration profiles for your third-party shipping carriers in the Asset operations view of the Enterprise Asset Workspace. These integration profiles enable you to connect to third-party shipping carrier applications so that you can retrieve shipment details for your enterprise assets.\n-   **[Associate a third-party shipping carrier with an integration profile in the Enterprise Asset Workspace](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/it-asset-management/enterprise-asset-management/associate-shipping-carrier-integration-profile-eam.md)**  \nAssociate a third-party shipping carrier with an integration profile so that you can successfully connect to that shipping carrier.\n-   **[Remove a third-party shipping carrier from an integration profile in the Enterprise Asset Workspace](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/it-asset-management/enterprise-asset-management/remove-shipping-carrier-integration-profile-eam.md)**  \nRemove a third-party shipping carrier that you no longer want to associate with an integration profile.\n-   **[Test the integration profile for a third-party shipping carrier in the Enterprise Asset Workspace](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/it-asset-management/enterprise-asset-management/test-shipping-carrier-integration-profile-eam.md)**  \nTest the integration profile for a third-party shipping carrier so that you can mitigate any connection issues that arise.\n\n"}}