> ## Documentation Index
> Fetch the complete documentation index at: https://docs.twinbay.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# WebEDI

> The supplier portal's Documents workspace, with a PO acknowledgment ready to send

Edict Systems' WebEDI supplier portal, from the moment a Dot Foods purchase order has been processed and the PO acknowledgment (X12 855, `004010`) that answers it is waiting in Outgoing Documents. It is built for a browser agent that holds a human's approval to send that one document, sends it, and verifies what the portal says afterwards. WebEDI publishes no SDK or API, so the conformance suite drives the portal the way a browser does — redirects, a form post, cookies.

**Slug:** `webedi`

## What it models

| Area | Modelled |
| - | - |
| Starting account | A supplier account with Dot Foods and Walmart as trading partners; four incoming purchase orders, the prepared Dot Foods PO Acknowledgment and an unrelated Walmart invoice in Outgoing Documents, and three document templates |
| Portal UI | A copy of the portal's Documents workspace, served at the environment URL behind the sign-in and working on the twin's own state: the recorded panels, the row menu with its separate `Send` and the panel's `Send All`, and the refreshed workspace after a send |
| Authentication | An anonymous visit redirected to the environment's own sign-in with the observed `client_id=WEB4` authorization request, the login form with its `idsrv.xsrf` anti-forgery token, and a session cookie. The credential an environment hands out is the `operator` user's password |
| Documents workspace | Every panel's documents, the trading partners, and one document's content, its source purchase order and every send of it |
| Send | Sending exactly the documents named — the row's `Send` names one, `Send All` names the outbox — all or nothing, with Dot's 855 line-item check. A repeated send is a second submission, because WebEDI is not known to refuse one |
| Receipts | A sent document waits in Pending Receipts until advancing delivers Dot Foods' 997, which a directive can make accepting, rejecting or withheld |

The human approval stays outside the twin. The portal has no approval feature, so a send is never refused for lacking one: an unapproved send is the agent failure a harness is there to catch.

## Not modelled

Creating, editing, deleting and copying documents; the row menu's `View` screen, `Related Documents` and templates; PO ingestion, invoices, ship notices, archiving by hand, import and export, QuickBooks, and AS2, VAN or SFTP connectivity. Session expiry, whose behaviour is unobserved.

WebEDI's authenticated HTTP has not been captured, so the routes behind the sign-in are the twin's own, chosen to back its copy of the portal's UI; the real SSO's `id_token` form post is skipped; and the session cookie's name and the JSON error shape follow the ASP.NET stack the live portal was observed to run. The twin's README lists every observed and provisional behaviour.
