Order Notification API
Errors
Delivery
For each attempted notification sent by Chorus to your endpoint, the Order Notification API will interpret your response code to determine the next Chorus action.
There are two http status codes used to acknowledge successful delivery (200 and 202), and when received by Chorus will result in the next notification in the queue being sent to you.
Note: Response code 200 indicates successful processing of the notification, and 202 indicates the notification was accepted and processing is yet to be completed.
Error response handling
All other response codes will be interpreted as an error by Chorus. Chorus will employ the same behaviour for all error codes. Any response code, except for 200 and 202, will be interpreted as a failure or rejection and will result in a redelivery attempt. The error message sent in the response does not impact the next Chorus action.
Retry policy and guaranteed in-sequence delivery
Chorus will retry the notification attempt after 30 seconds for 3 counts, and then retry every 5 mins until successfully delivered, or the notification channel is disabled. To skip a stuck notification, or to fix the header or payload of a notification, contact API Support to request assistance. This retry policy allows Chorus to ensure there is guaranteed and in-sequence delivery of notifications.
Chorus actively monitors the Order Notification queue. If order notifications are unable to be delivered for more than 60 minutes, Chorus will contact you during regular business hours for remedial action.
The following table provides the Chorus expectation of which response codes are received. You are not obligated to send these exact codes for these scenarios. However, this information may assist you with determining which code to use for replies, and for support purposes.
Recommended http status code | Scenario |
---|---|
400 | Indicates there is an issue with the syntax, message or header of a request. |
401 | Indicates that authentication credentials havenโt been provided in the request header or the credentials provided are incorrect. |
403 | Indicates the user is not authorised to perform this activity. |
404 | Indicates an unexpected notification type or Order ID has been received as part of the notification. |
429 | Indicates that a request is blocked due to rate limit restrictions. Learn more about API rate limits |
500 | Indicates that an internal processing error has occurred during initial processing of the notification. |
503 | Indicates the system is currently unavailable due to maintenance in progress. For more information, contact your Chorus Service Delivery Manager. |
Any other code | Indicates any other scenario. |
No http response (response timeout in 60 secs) | Indicates that your endpoint is unresponsive. |