PO failed: 5xx or 4xx error response
Cause
Invalid data or supplier site down.
The key to understanding and resolving the issue is the text in the supplier’s cXML response.
Solution
-
Review the description. If it is not clear, ask the supplier to provide a clear explanation.
-
4xx (where xx are digits) usually means that there was a data validation error, so fixing the data and then resending the PO may resolve the issue. Before editing and resending the PO, make sure the supplier can accept change orders (type=’update’ in the cXML).
-
5xx (where xx are digits) usually means a fatal error.
-
If this error occurs because the supplier’s site is down, ask the supplier for an ETA for when the supplier's site is expected to return to normal operation, and then coordinate resending the failed PO.
-
Once the issue is resolved, send the supplier a list of the POs that failed, and coordinate resending them.
-
When you resend POs, do it for one PO first to make sure it goes through successfully, before spending time resending them all.
-
Example
Most supplier’s text descriptions tell why the PO was rejected.
Subject: cXML Failure (Failed to send PO #123)
When we tried to send purchase order #123 to ABC Supplier we received the following error:
PO failed: 500 PO Number: 123 has already been processed.
…
cXML Response
<Status code='500' text='PO Number: 123 has already been processed.'/>
Here are some more examples of cXML 5xx and 4xx error responses:
-
<Status code='500' text='Error getting quote: 123. Either the quote is expired or does not exist or Unable to retrieve Quote.'/>
-
<Status code='400' text='Bad Request'>Line item XYZ is not ready to accept the Purchase Order at this time. Please contact your System Administrator for assistance. (fas-08 prod1)</Status>
-
<Status code='400' text='Order Rejected'>Item #123 This Item is being Substituted, Please use #678 </Status>
-
<Response><Status code="500" text="Inactive Site"/></Response>
-
500 [Output ProfileLocation: Header/N1 loop ship to name/N1/N104]: Invalid Data Element '6': MIN_LENGTH_NOT_REACHED
-
<Status code='400' text='Order Rejected'>Item #12862700 This Item is being Substituted, Please use #24542700</Status>