Error Codes
EDIfact Functional Acknowledgement (CONTRL)
EDIconnect sends a CONTRL message to acknowledge each EDIfact interchange received. The CONTRL message indicates whether the interchange, functional group or individual message has been accepted or rejected.
UCI — Interchange Response
| Code | Meaning |
|---|---|
4 |
Interchange received; acknowledged |
5 |
Interchange received; rejected |
UCM — Message Response
| Code | Meaning |
|---|---|
7 |
Message received and accepted |
4 |
Message received but rejected (see UCS for details) |
UCS / UCF — Segment/Group Error Codes
| Code | Description |
|---|---|
2 |
Syntax version or level not supported |
7 |
Interchange sender is unknown |
14 |
Invalid value |
16 |
Mandatory segment missing |
17 |
Segment not defined in message |
18 |
Number of occurrences exceeds the maximum allowed |
26 |
Too many data elements |
35 |
Mandatory data element missing |
37 |
Invalid code value |
38 |
Invalid date |
39 |
Invalid time |
XML / HTTP Transport Error Codes
HTTP Status Codes
| Status | Meaning | Recommended Action |
|---|---|---|
200 OK |
Message accepted | No action required |
202 Accepted |
Message queued for asynchronous processing | Poll or wait for callback |
400 Bad Request |
Message did not pass validation | Correct the message and resend |
401 Unauthorized |
Invalid or expired token | Renew the Bearer token |
403 Forbidden |
GLN not authorised for this operation | Contact EDI support |
404 Not Found |
Referenced document not found | Check reference numbers |
409 Conflict |
Duplicate message (same ID) | Check the idempotency key |
413 Payload Too Large |
Message exceeds size limit (10 MB) | Split the message |
422 Unprocessable Entity |
Business rule violation | Consult the response body |
429 Too Many Requests |
Rate limit exceeded | Wait and retry |
500 Internal Server Error |
Internal server error | Contact EDI support |
503 Service Unavailable |
Maintenance window | Retry after the Retry-After header |
Business Validation Error Codes (422)
Returned in the response body in the form:
{
"error": "BUSINESS_RULE_VIOLATION",
"code": "EDI-007",
"message": "Product EAN 5901234123457 not found in catalogue",
"line": 1
}
| Code | Message | Cause |
|---|---|---|
EDI-001 |
Unknown sender GLN | Your GLN is not registered |
EDI-002 |
Unknown receiver GLN | The partner's GLN was not found |
EDI-003 |
Duplicate document reference | The same order/invoice number has already been received |
EDI-004 |
Referenced PO not found | ORDRSP/DESADV/INVOIC references an unknown order |
EDI-005 |
Referenced ASN not found | RECADV/INVOIC references an unknown DESADV |
EDI-006 |
Currency not supported | Use RON or EUR |
EDI-007 |
Product EAN not in catalogue | Unknown EAN; update PRICAT or contact support |
EDI-008 |
Delivery location GLN not mapped | The delivery GLN is not configured for this partner |
EDI-009 |
Quantity exceeds ordered quantity | The quantity in ORDRSP/DESADV exceeds the quantity in ORDERS |
EDI-010 |
Invoice amount mismatch | The calculated amount differs from the declared total |
EDI-011 |
VAT rate not valid for product | Check the product's VAT class |
EDI-012 |
PRICAT validity dates overlap | The new PRICAT overlaps with existing active prices |
Retry Policy
Warning
Do not automatically retry messages with 400 (Bad Request) or 422 (Unprocessable) errors. The cause lies in the message content, not in transport — retrying without correction will produce the same result and may trigger the partner's anti-spam protection.
| Error Type | Retry? | Delay |
|---|---|---|
400 Bad Request |
No — correct the message first | — |
401 Unauthorized |
Yes — renew the token | Immediately |
429 Too Many Requests |
Yes | As per the Retry-After header |
5xx Server Error |
Yes | Exponential back-off: 30s, 60s, 120s |
422 Business Error |
No — requires manual correction | — |
Support
For unresolved EDI errors: edi-support@azuvio.io
Include: sender GLN, message type, document reference, error code, timestamp.