# EDI

> 我們的電子資料交換 (EDI) 採購訂單系統可將訂單直接發送至您的 ERP 或訂單管理系統，進而簡化您接收訂單的方式，

Source: https://www.purchaseplus.com/zh-tw/docs/for-suppliers/electronic-data-interchange-edi-purchase-orders

Markdown: https://www.purchaseplus.com/zh-tw/docs/for-suppliers/electronic-data-interchange-edi-purchase-orders.md

# EDI
跳轉至：

-   [概觀](#Overview)
-   [優勢](#Benefits)
-   [開始使用](#GettingStartedWithEDI)
-   [支援的資料格式](#SupportedFormats)
-   [範例 JSON Payload](#SampleJSONPayload)
-   [重要欄位](#ImportantFields)

### 概觀

我們的電子資料交換 (EDI) 採購訂單系統可將訂單直接發送至您的 ERP 或訂單管理系統，免除手動輸入資料的需求，從而簡化您接收訂單的流程。

我們建議使用 EDI 來接收採購訂單，特別是針對中大型供應商以及具備強大整合能力的供應商。

### 優勢

EDI 採購訂單免去了在企業資源規劃 (ERP) 或訂單管理系統中手動輸入採購訂單的需求，協助供應商更有效率地工作。透過減少人為錯誤，EDI 還能提高準確性，並加速買家與供應商之間的訂單處理流程。我們深信更快速、更準確的資料交換能夠減少訂單問題，讓買家、供應商以及我們全體受惠。

過去，我們曾遇到供應商因垃圾郵件過濾器誤擋而未收到電子郵件採購訂單的情況。儘管我們使用的是受管理的電子郵件服務，這些電子郵件仍偶爾會被攔截。

我們也認為，與電子郵件相比，EDI 所採用的 HTTPS 或 SFTP 協定在交換敏感訂單資訊時更加穩健且安全。

### 開始使用

1.  設定端點：您需要設定一個端點來接收訂單。或者，您或我們也可以設定 SFTP 目錄。
    
2.  與我們聯絡：當您的端點準備就緒時（或者如果您希望我們設定 SFTP 目錄），請將您的端點詳細資訊發送至 [help.suppliers@purchaseplus.com](mailto:help.suppliers@purchaseplus.com) 聯絡我們的團隊。
    
3.  整合：我們會將您的端點新增至我們的系統中。
    
4.  測試：為了確保過渡順利，我們可以切換一至兩位採購員至新端點進行小型測試。或者，在試用期內，我們也可以同時平行執行電子郵件與 EDI。
    
5.  試行：我們將與您合作選出一小組測試客戶，並將其切換至新端點。
    
6.  全面實施：當您確認運作無誤後，我們會將您的所有訂單切換為 EDI。
    

### 支援的資料格式

針對 EDI 交易，我們主要支援 JSON。我們也可以發送 XML，並可依要求提供範例 payload，但我們不支援 cXML。

### 範例 JSON Payload

`{     "purchase_orders": [       {         "purchase_order": {           "identity": "singer.test.sleep",           "purchaser": {             "id": 262388,             "name": "Sample Purchaser",             "customer_number": "PUR12345",             "requestor": "Han Solo",             "phone": "1300 123 456",             "email": "han.solo@purchaseplus.com"           },           "supplier": {             "name": "Sample Supplier",             "vendor_number": "SUP98765"           },           "purchase_order_number": "PO00001",           "purchaser_reference": "Daily food order",           "supplier_reference": null,           "expected_delivery_date": "2025-03-15",           "sent_date": "2025-03-15T05:51:57.122Z",           "cancelled": false,           "comments": [],           "confirmation_instructions": "Confirmation instructions example.",           "delivery_instructions": "Delivery instructions example.",           "delivery_address": {             "location_name": "Default",             "line1": "Level 4, 11 York Street",             "line2": "",             "city": "Sydney",             "state_province": "NSW",             "postal_code": "2000",             "country_code": "AU"           },           "currency": "AUD",           "net_amount": 826.1,           "delivery_amount": 0,           "tax_amount": 20.25,           "gross_amount": 846.35,           "lines": [             {               "code": "YOGH",               "brand": "Farmers Union",               "item_description": "Greek Style Yoghurt : Natural",               "item_size": 1,               "item_measure": "lt",               "item_package": "tub",               "pack_quantity": 1,               "pack_name": "each",               "gs1_code": null,               "order_instruction": null,               "unit_price": 6.75,               "quantity": 30,               "net_amount": 202.5,               "tax_amount": 20.25,               "gross_amount": 222.75,               "is_purchaser_price": true             },             {               "code": "WMBD",               "brand": "Mighty Soft",               "item_description": "Bread Sliced Wholemeal Sandwich Frozen",               "item_size": 650,               "item_measure": "g",               "item_package": null,               "pack_quantity": 10,               "pack_name": "carton",               "gs1_code": null,               "order_instruction": null,               "unit_price": 20,               "quantity": 25,               "net_amount": 500,               "tax_amount": 0,               "gross_amount": 500,               "is_purchaser_price": true             },             {               "code": "MILK",               "brand": "Pauls - Professional",               "item_description": "Milk : Full Cream",               "item_size": 3,               "item_measure": "lt",               "item_package": "bottle",               "pack_quantity": 6,               "pack_name": "carton",               "gs1_code": null,               "order_instruction": null,               "unit_price": 8.24,               "quantity": 15,               "net_amount": 123.6,               "tax_amount": 0,               "gross_amount": 123.6,               "is_purchaser_price": true             }           ]         }       }     ]   }` 

### 處理取消訂單

買家偶爾會透過使用者介面取消訂單，並選擇發送取消通知。這將會發送一份重複的 Webhook payload，其中 `cancelled` 欄位會設定為 `true`。

請務必將這些內容完全篩選掉，或透過發送通知給您的支援團隊來進行處理。

我們指導使用者在想要取消或修改訂單時直接與供應商聯絡，因為系統處理此類操作時並不總是萬無一失。

### 重要欄位

| **欄位** | **說明** |
| --- | --- |
| `identity` | 代表特定供應商帳戶與買家帳戶之間關係的唯一三詞識別碼。此識別碼在每個買家與供應商的組合中皆為唯一，且可在向 PurchasePlus 發送發票時用作 `identity`。 |
| `vendor_number` | 您在系統內指派給各買家的唯一識別碼。這可讓您跨不同系統對照買家。此欄位可在 PurchasePlus 入口網站中更新。 |
| `purchase_order_number` | 買家指派的採購訂單編號。雖然在全域範圍內並非唯一，但在單一買家的範圍內具唯一性。如需建立唯一金鑰，請將此欄位與 `vendor_number` 欄位串連。重要提示：若 PurchasePlus 使用者將「採購員代碼」欄位留白，使用此串連作為唯一金鑰可能會造成問題。 |
| `cancelled` | 指示買家是否已在 MarketBoomer UI 中取消該採購訂單的布林值旗標。若為 `true`，代表該採購訂單已取消。取消時，MarketBoomer 將重新發送該採購訂單，且此欄位設定為 `true`。若您的系統不支援取消訂單，處理此欄位為選用，但這屬於最佳實踐。 |
| `lines.code` | 您在我們系統中指派給各產品的唯一產品代碼。此欄位對應於 PurchasePlus 中的「擁有者代碼 (owner code)」或 Legacy PurchasePlus 中的「供應商代碼 (supplier code)」。您可以在相應的 P+ 介面中更新此代碼。 |

您在我們系統中指派給各產品的唯一產品代碼。此欄位對應於 PurchasePlus 中的「擁有者代碼 (owner code)」或 Legacy PurchasePlus 中的「供應商代碼 (supplier code)」。您可以在相應的 P+ 介面中更新此代碼。
