---
title: XDMS
slug: hyper-portal/6hdE-xdms
docTags: 
createdAt: 2020-09-14T09:56:36.000Z
---

# Summary

Allows you to sync entities between XDMS and HyperPortal

There are 2 directions

- HyperPortal -> XDMS
- XDMS -> HyperPortal

# HyperPortal -> XDMS


CMS (custom-data), after applying changes, publishes an action message to [AWS SNS](https://eu-west-1.console.aws.amazon.com/sns/v3/home?region=eu-west-1#/topics) (CustomDataSNSTopic) the "xdms-CustomDataEventsQueue" queue is listening to the SNS service and passes events to lambda function "xdms-CmsContactUpsertProcessorFunction"

Depending on the settings, the function checks if the event matches the conditions and sends a POST request to the URL specified in the settings



**Contact module**

Required fields:

- NMcontact
- CDrel - Relationship type&#x20;
  - K - Customer
  - ...
- NRrel - Relationship id
  &#x20;

**Customer module**

Required fields:

- CDcust
- NMcust




**Where to get XDMS Host**

XPower -> Properties -> find XDMS-SERVER property&#x20;

![](https://archbee-doc-uploads.s3.amazonaws.com/5goaGPkGyPYxtK7K75CEC/5lX00JIio_xfJWWVwI94p_%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202020-10-27%20%D0%B2%2011.35.58.png)

**How to enable rest connector**

Contact XDMS support





# XDMS -> HyperPortal

XDMS keeps exporting data to [AWS S3](https://s3.console.aws.amazon.com/s3/buckets/staging-xdms-imports-s3bucket-iimipvv7mgeu/?region=eu-west-1\&tab=overview) (xdms-imports-s3bucket) each folder corresponds to tenantId

Сron starts once a day and starts importing data



# XDMS Order Module



Request 7-8 in [this ](https://drive.google.com/file/d/1c0DGmT8sNlEcBx_UvFw-qXEfPgO5FVjb/view?usp=sharing)collection.

1. One way integration ( only push to XDMS, no imports)
2. Works only on creation event (no updates)
3. Required fields:
   • **NRrel&#x20;**- can be customer id (NRcust) or Vehicle id (NRmach)
   • **CDpr&#x20;**- aways use "W" or "O1" (not 01)
   • **CDrel&#x20;**- always use "K"
   • **INln&#x20;**-  Order line text string. Max - 60 char. If more, will be split to the next order line.
4. Other fields:
   **nrcust-inv** - Relation who will pay for the order ( if left empty, customer from NRrel will be set in XDMS automatically ) (haven't tested what happens if **nrcust-inv&#x20;**&#x61;nd **NRrel&#x20;**&#x69;s a Vehicle.
   **nrcustdlv -&#x20;**&#x52;elation who will receive the order. Behaves the same way as **nrcust-inv**
5. **Extra fields - ????&#x20;**(not tested yet)****
   **\{&#xD;**&#xA;**&#x20;           "NRord": 10,&#xD;**&#xA;**&#x20;           "NMfld": "xtra",&#xD;**&#xA;**&#x20;           "VAfld": "",&#xD;**&#xA;**&#x20;           "CDfld": "character",&#xD;**&#xA;**&#x20;           "CDprm": "input"&#xD;**&#xA;**&#x20;         }**

Customer that is pushed as NRrel cannot have CDcust=00 (will not pass XDMS validation). Must be at leas CDcust=10












