Electronic Data Interchange (EDI)

In this article
Product Information
Release Notes

Process Overview

Purchase order, acknowledgement and confirmation process overview

The following image displays the process of sending the purchase order (PO) to the EDI vendor, and if required, receiving a purchase order acknowledgement (POA) and sending a purchase order confirmation.

Purchase order (PO)

When an Vendor EDI Trading partner has Vendor purchase order or Vendor purchase order change document(s) enabled, confirming the purchase order will create an original or change (after original) outbound staging records to the vendor.

Purchase order acknowledgement (POA)

PO setting Acknowledgement required determines if a POA is required which affects the Purchase order’s Status and Acknowledgement required. If a purchase order acknowledgement (POA) is received, the validation’s error tolerance determines if the D365 purchase order is updated. If any of the validations error, the staging record will error. For info and warning validations, the staging record will process to target and update the D365 purchase order where applicable. Where the POA contains a Header - Accept response, the rest of the POA details are ignored as all has been accepted.

Purchase order confirmation (POC)

POA document setting Purchase order confirmation required determines if a purchase order confirmation (POC) is required after receiving a POA, and if it will be sent automatically or manually by user.

If the confirmation details doesn’t match the POA, for example didn’t accept the price change, a purchase order change with purpose Change will be created to the vendor.

If the confirmation details does match the POA, a purchase order change with purpose Confirmation will be created to the vendor. When the purpose is Confirmation, the following purchase order header fields are updated:

  • Status will change to Confirmed (if previously set to In external review) and
  • Acknowledgement required will change to Confirmation sent
%%{init: {
  "theme": "base",
  "flowchart": {"curve": "linear", "htmlLabels": true, "nodeSpacing": 90, "rankSpacing": 140, "padding": 24, "diagramPadding": 24, "wrappingWidth": 300},
  "themeVariables": {"fontSize": "24px", "lineColor": "#000000", "edgeLabelBackground": "#ffffff"}
}}%%
flowchart LR
  subgraph EXT["Vendor PO, POA, POC process"]
    direction LR
    subgraph LANE0["Outbound"]
      direction LR
      n75(["Start"])
      n378["PO Status = In<br/>External Review"]
      n69["Send PO"]
      n250{"POA required?"}
      n320["POA Doc type<br/>Setting:<br/>‘Acknowledgment<br/>required’"]
      n300["Send PO Change"]
      n327["POA Doc setting<br/>‘Purchase order<br/>confirmation<br/>required’"]
      n222["Send POC"]
      n248(["End"])
      n363{"POC required?"}
      n309["Update PO Status"]
      n258{"POC match POA?"}
      n364["Manual Send POC PO<br/>#gt; EDI #gt; POC:<br/>‘Send to EDI’"]
      n322["Status change ‘In<br/>External Review’ to<br/>‘Confirmed’"]
      n274["Send Cancel PO"]
    end
    subgraph LANE1["Inbound"]
      direction LR
      n221["Receive POA"]
      n277{"Validation"}
      n325["POA Doc Validation"]
      n356{"Header Response"}
      n279["Update PO"]
      n384["Cancel PO & Update<br/>PO status"]
      n385["Status change ‘In<br/>External Review’ to<br/>‘Cancelled’"]
      n338["Generate PO<br/>Confirmation journal"]
    end
    n75 --> n69
    n69 --> n250
    n250 -->|"N"| n248
    n250 -->|"Y"| n378
    n258 -->|"Y"| n309
    n274 --> n248
    n277 -->|"Info/ Warning"| n356
    n277 -->|"Error"| n248
    n338 --> n258
    n222 --> n248
    n258 -->|"No"| n300
    n300 --> n250
    n356 -->|"Change"| n279
    n279 -->|"No"| n338
    n221 --> n277
    n309 --> n363
    n363 -->|"Y (manual<br/>confirmed)"| n364
    n364 --> n248
    n363 -->|"Y (auto<br/>Confirmed)"| n222
    n363 -->|"No"| n248
    n384 --> n274
    n378 --> n221
    n356 -->|"Accept"| n258
    n356 -->|"Reject"| n384
    n250 -.- n320
    n309 -.- n322
    n277 -.- n325
    n363 -.- n327
    n384 -.- n385
  end

  classDef manual fill:#ADD8E6,stroke:#000,stroke-width:2px,color:#000;
  classDef auto fill:#D9D9D9,stroke:#000,stroke-width:2px,color:#000;
  classDef other fill:#A6A6A6,stroke:#000,stroke-width:2px,color:#000;
  classDef note fill:#FFFFFF,stroke:#000,stroke-width:2px,stroke-dasharray:5 3,color:#000;
  class n364 manual;
  class n69,n221,n222,n274,n279,n300,n309,n338,n378,n384 auto;
  class n75,n248,n250,n258,n277,n356,n363 other;
  class n320,n322,n325,n327,n385 note;
  style EXT fill:#F3E8FA,stroke:#5F249F,stroke-width:3px,color:#000
  style LANE0 fill:#FFFFFF,stroke:#000,stroke-width:2px,color:#000
  style LANE1 fill:#FFFFFF,stroke:#000,stroke-width:2px,color:#000
  linkStyle default stroke:#000000,stroke-width:2px

Legend

  • Manual process (light blue in this diagram)
  • Auto process (grey)
  • PO = Purchase order
  • PO Change = Purchase order with Order purpose = Change
  • POA = Purchase order acknowledgement
  • POC = Purchase order confirmation; Purchase order with
  • Order purpose = Confirmation

Advanced shipping notice (ASN) and Purchase invoice process overview

Advanced shipping notice (ASN)

Based on document settings, the incoming EDI ASN can either:

  • Basic warehousing (Ship to warehouse is setup for basic warehousing):
    • Create arrival journal, but leave unposted
    • Create and post arrival journal
    • Create and post arrival journal, and post the product receipt for the registered stock
  • Advanced warehousing (Ship to warehouse is setup for advanced warehousing):
    • Create an open load

Purchase invoice

Based on document settings, the incoming EDI purchase invoice can either:

  • Create a pending purchase order invoice where the match status fails
  • Post the purchase order invoice if match status passes, or
  • Submit pending purchase order invoice to workflow

Purchase order

The processed EDI record(s) can be viewed for a purchase order, by selecting the History button on the EDI tab on the Action Pane of the Purchase order page.
The EDI module have also enhanced the purchase order page by adding EDI fields to:

  • Purchase order header; available on the EDI FastTab
  • Purchase order lines; available on EDI and EDI acknowledgement tabs

Document errors

When an incoming staging record/document errors, it has not created/updated the target D365 transaction.
When an outgoing staging record/document errors, it has not created the Outbound file.

Staging/document errors can be viewed at:

  • EDI > Documents - On each document type, user can set filter Staging to target status to Error
  • EDI > EDI Document maintenance - The workspace contains a tile and tab for each document type.

Users can use Show log and Version log to review the issues. And after the issue has been fixed, reset the status of the record. The next processing batch will pick up the Not started status record.

Fixing Staging-to-Target EDI errors

See FAQ for example errors and possible method(s) of fixing.