> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://support.robaws.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How does the DICO integration work?

The **DICO Standard** is a set of agreements that provides the ground rules for the electronic exchange of information between manufacturers, wholesalers, construction, maintenance and installation companies and housing corporations. This application is for the Netherlands only.

## Setting up the DICO integration

Via **settings > integrations > DICO** you can configure the settings required to use DICO.

1. Open the integration via the overview of the integrations.
2. Create one or more "Endpoints". To do this, click the action button **add** at the top of the page.
3. Then fill in the relevant details to make the DICO endpoint operational. You can assign several suppliers to one 'Endpoint' to which the settings apply.

## Use

### DICO - Incoming

Once you have created a DICO endpoint with the type 'incoming', a message of the type MaintenanceInstruction that comes in via the configured endpoint is converted into an order in Robaws. All information from this endpoint can be processed into the order, according to the order template you create when setting up the endpoint.

The following information is taken over:
* All information we can place in the standard fields of Robaws is processed into those fields.
* Additional information for which there is no standard field can be processed by using [replacement codes](https://support.robaws.com/en/article/replacement-codes-1omjlni/) and [extra fields](https://support.robaws.com/en/article/working-with-extra-fields-1vwszk1/) of the type 'text' or 'text field' that you set up on the order template when configuring the endpoint.

**Replacement codes that can be used for MaintenanceInstruction messages:**

* ${DICO.instructionData.instructionInformation.instructionType}
* ${DICO.instructionData.instructionInformation.instructionAgreementMethod}
* ${DICO.instructionData.instructionInformation.instructionTypeSpecification}
* ${DICO.instructionData.contractReference.contractNumber}
* ${DICO.instructionData.contractReference.contractDate}
* ${DICO.instructionData.appointmentDateTimeInformation.requiredDeliveryDate}
* ${DICO.instructionData.appointmentDateTimeInformation.requiredDeliveryTime}
* ${DICO.instructionData.maintenanceLocation.contactPersonName}
* ${DICO.instructionData.maintenanceLocation.phoneNumber1}
* ${DICO.instructionData.maintenanceLocation.phoneNumber2}
* ${DICO.instructionData.maintenanceLocation.emailAddress1}
* ${DICO.instructionData.maintenanceLocation.emailAddress2}
* ${DICO.instructionData.maintenanceLocation.complexNumber}
* ${DICO.instructionData.maintenanceLocation.premisesNumber}
* ${DICO.instructionData.maintenanceLocation.realEstateUnitNumber}
* ${DICO.instructionData.maintenanceLocation.yearOfConstruction}
* ${DICO.instructionData.maintenanceLocation.address}
* ${DICO.instructionData.maintenanceLocation.street}
* ${DICO.instructionData.maintenanceLocation.street2}
* ${DICO.instructionData.maintenanceLocation.zipcode}
* ${DICO.instructionData.maintenanceLocation.city}
* ${DICO.instructionData.maintenanceLocation.country}
* ${DICO.instructionData.maintenanceLocation.lng}
* ${DICO.instructionData.maintenanceLocation.lat}
* ${DICO.instructionData.appointmentDateTimeInformation.deliveryTimeFrame.deliveryDateEarliest}
* ${DICO.instructionData.appointmentDateTimeInformation.deliveryTimeFrame.deliveryDateLatest}
* ${DICO.instructionData.instructionNumber}
* ${DICO.instructionData.instructionSubNumber}
* ${DICO.instructionData.instructionDate}

**Replacement codes for the contact details of the parties in the message:**

A MaintenanceInstruction message mentions three parties: **DICO.buyer**, **DICO.affiliate** and **DICO.contractor**. For each of them you can place the name of the contact person, the phone number and the e-mail address on your order template. You use these codes just like the others: in an extra field of the type 'text' or 'text field' on the order template of the endpoint.

* ${DICO.buyer.contactInformation.contactPersonName}
* ${DICO.buyer.contactInformation.phoneNumber}
* ${DICO.buyer.contactInformation.emailAddress}
* ${DICO.affiliate.contactInformation.contactPersonName}
* ${DICO.affiliate.contactInformation.phoneNumber}
* ${DICO.affiliate.contactInformation.emailAddress}
* ${DICO.contractor.contactInformation.contactPersonName}
* ${DICO.contractor.contactInformation.phoneNumber}
* ${DICO.contractor.contactInformation.emailAddress}

|| If a party has several contacts in the message, the first contact is always used. If the party or its contact information is not in the message, the replacement code remains empty.

![Example of the use of a replacement code in an extra field in the order template](https://storage.crisp.chat/users/helpdesk/website/eadf6dec760ec000/schermafbeelding-2025-02-14-om_1lsix41.png)

### Dico Endpoint - Outgoing

Once you have created a DICO endpoint with the type 'outgoing', you will notice that a new action button appears in the supply order you create for the supplier concerned.

![DICO integration with supplier](https://storage.crisp.chat/users/helpdesk/website/eadf6dec760ec000/schermafbeelding-2023-12-07-om_1hm5grt.png)
After you click this action button, you get another dialog where you **can change the delivery address if you wish**. By default the address of the company is used as the delivery address, but an option is provided to deviate from this.
After you click **'Send via webshop'**, an action is taken in which a **request is sent to the DICO endpoint.**
Before carrying out this action, it is important to set up the following:

* GLN number of the company
* GLN number of the supplier
* GTIN number of the item

Once you have carried out a DICO action, that action is processed by the DICO endpoint. An order confirmation is then shown as a notification in Robaws. Every hour Robaws checks whether new messages are available and shows those as a notification as well. These messages are also shown visibly as a "remark" in the supply order concerned.

||| The notification goes to the assignee of the supply order. If the supply order has no assignee, the administrators receive it.

![Example of a notification](https://storage.crisp.chat/users/helpdesk/website/eadf6dec760ec000/voorbeeld-notificatie_1n3rpho.png)

## Setting up the GLN and GTIN number

* **GLN number of the supplier**: supplier file > financial > 'Global Location Number (GLN)
* **GLN number of the company:** settings > general > company > open the correct company > 'Global Location Number (GLN)'
* **GTIN number of the item:** item file > fill in the GTIN number in the 'Item No.' field

||| The GLN number has to be filled in!