Skip to content

Error handling

Error handling is very important with any API. Whilst every effort has been made to limit the errors to the Resellers, error can occur and so this section details what those errors are and how they must be handled.

All Netsuite and Nuvias Order Fulfilment API system errors are automatically reported to the Nuvias Customer Services team through Critical Alerts where they can perform the necessary actions to remove the alert and ensure that the API is running continually 24/7.

From a resellers perspective, the Customer Services team can see all order transactions including the XML submissions and responses in the Management Portal should any support queries on orders be required.

The following section lists the Error codes that may occur during submissions and will list the action the reseller should take to handle them. Error codes are split into 4 groups.

The following section lists the Error codes that may occur during submissions and will list the action the reseller should take to handle them. Error codes are split into 4 groups.

  • No Code – WSDL Contract not being adhered to
  • 100 – Errors with the Request Data
  • 300 – Errors with a Downstream System
  • 500 – Errors within the API system itself

Programmatically you must be able to handle these error conditions appropriately, especially if a reseller is checking the status of the system as detailed below.

You are responsible for resubmitting your order once the error reason has resolved, whether that is an issue with the order being submitted or with our systems or Netsuite. If you do not receive a success response (200) from the API, your order has not been received and our team are not aware of it.

Waiting

Where errors have been received and the recommended action is wait and retry, then it is suggested you retry after 5 mins. If after 5-6 retries (approximately 30 mins) it is still failing, then raise the issue with Nuvias API Support.

A set of diagnosis steps are recommended before raising issues with Nuvias:

  • Can the WSDL be reached?
  • Does a checkInventory request work or returns the same error?
  • Have you received any maintenance or outage requests from Nuvias? When raising issues to Nuvias, please pass on the results of these steps along with details of the API request and error response returned.

Netsuite unavailable

Typically, this issue would only occur outside of UK trading hours due to scheduled maintenance on Netsuite. For international resellers this maintenance may occur during peak operating hours.

Nuvias will notify customers of any scheduled maintenance windows from NetSuite. You must ensure that we have the correct contact information for you.

For instances where no notification has been received, a manual check can be performed:

  • Can the WSDL be reached? (if no the this is likely to be related to a network error)
  • If the checkInventory request returns the Netsuite unavailable error code, 307.
  • Check https://status.netsuite.com to see if the outage is maintenance or a Netsuite failure.

WSDL Errors

The WSDL contract is not being adhered to. Please check the Soap::Reason field for information.

Example Response:

<soap:Reason>    
<soap:Text xml:lang="en">Invalid content was found starting with element 'alternateOrderID'. One of '{purchaseOrderID}' is expected. </soap:Text>
</soap:Reason>  

1xx errors

This class of error indicates a problem with the request data.

100 - Validation of request data failed

Something was wrong with the validation of the Request data.

Example Response:

<soap:Reason>
    <soap:Text xml:lang="en">100 : There was a problem with the request data</soap:Text>
</soap:Reason>
<soap:Detail>
    <ns3:soapAPIFault
xmlns:ns2="urn:transactions_10.reseller.siphon.com" xmlns:ns3="urn:error.transactions_10.reseller.siphon.com">
        <message>Shipping Date must be in the Future</message>
    </ns3:soapAPIFault>
</soap:Detail>

101 – purchaseOrderID is not unique Change and resubmit

The purchase orderID is not unique. This will only occur on a submitOrder.

Example Response:

<soap:Reason>
    <soap:Text xml:lang="en">101 : PurchaseOrderID is not unique</soap:Text>
</soap:Reason>
<soap:Detail>
    <ns3:soapAPIPurchaseOrderUniquenessFault xmlns:ns2="urn:transactions_10.reseller.siphon.com" xmlns:ns3="urn:error.transactions_10.reseller.siphon.com">
        <message>A search for PurchaseOrderID TEST_TEST_TEST_TEST7 has returned 1 record(s)</message>
        <record>SO46852</record>
    </ns3:soapAPIPurchaseOrderUniquenessFault>
</soap:Detail>

3xx errors

These errors represent a rejection from a downstream system (i.e. Netsuite)

300, 301, 302, 303 – Downstream problem

Resolution

Wait and retry

Various downstream problems, retrying may resolve the issue. But if not, please raise this with Nuvias API Support.

Example Response:

<soap:Reason>
    <soap:Text xml:lang="en">303 : An internal failure occurred while trying to process the request</soap:Text>
</soap:Reason>
<soap:Detail>
    <ns3:soapAPIFault
xmlns:ns2="urn:transactions_10.reseller.siphon.com" xmlns:ns3="urn:error.transactions_10.reseller.siphon.com">
        <message>Retrying may resolve this issue</message>
    </ns3:soapAPIFault>
</soap:Detail>

Resolution

Contact Nuvias finance team to resolve the issue

Credit related issue. Please contact the Nuvias Finance team to Resolve.

Note: this can happen more often in testing, where resellers creates large number of open orders and exceeds whatever credit limit is set.

Example Response:

<soap:Reason>
    <soap:Text xml:lang="en">304 : Credit related problem, please contact finance</soap:Text>
</soap:Reason>
<soap:Detail>
    <ns3:soapAPIFault
xmlns:ns2="urn:transactions_10.reseller.siphon.com" xmlns:ns3="urn:error.transactions_10.reseller.siphon.com"/>
</soap:Detail>

305 – Permissions failure

Resolution

Contact Nuvias API Support

Permission Issue: Cannot be resolved by retrying. Please contact Nuvias API Support.

Example Response:

<soap:Reason>
    <soap:Text xml:lang="en">305 : Permission Issue, please contact Nuvias Support</soap:Text>
</soap:Reason>
<soap:Detail>
    <ns3:soapAPIFault
xmlns:ns2="urn:transactions_10.reseller.siphon.com" xmlns:ns3="urn:error.transactions_10.reseller.siphon.com"/>
</soap:Detail>

306 – Cache failure

Resolution

Contact Nuvias API support

The caching system behind the API has encountered a failure and generated an exception. Cannot be resolved by retrying. Please contact Nuvias API Support to resolve.

Example Response:

<soap:Reason>
    <soap:Text xml:lang="en">306 : Cache failure, please contact Siphon Support</soap:Text>
</soap:Reason>
<soap:Detail>
    <ns3:soapAPIFault
xmlns:ns2="urn:transactions_10.reseller.siphon.com" xmlns:ns3="urn:error.transactions_10.reseller.siphon.com"/>
</soap:Detail>

307 – Stock location configuration error

Resolution

Contact Nuvias API support

This can occur when you have consignment stock or a VMI service with Nuvias. The stock location configured for your API is not configured correctly for use by you. This can be the result of changes in our Warehouse Management System or it can be a misconfiguration of the API settings. This error can’t be resolved by retrying and you should contact Nuvias API Support.

5xx errors

These errors are internal to the API gateway itself.

500 – Fatal error

Resolution

Contact Nuvias API support

Fatal Systems Error: A System error has occurred, retrying is unlikely to resolve this, raise with Nuvias API Support.

Example Response:

<soap:Reason>
    <soap:Text xml:lang="en">500 : A fatal system error has occurred</soap:Text>
</soap:Reason>
<soap:Detail>
    <ns3:soapAPIFault
xmlns:ns2="urn:transactions_10.reseller.siphon.com" xmlns:ns3="urn:error.transactions_10.reseller.siphon.com">
        <message>500 : A fatal system error has occurred</message>
    </ns3:soapAPIFault>
</soap:Detail>
Back to top