View Events

Webhook event represent an asynchronous event has happened recently i.e. a customer successfully paid a VA. Xendit provides Webhook tab in Dashboard to allow you to view all webhook events alongside its individual timestamp and status

Each columns in Webhook tab view represent useful insights:

Event Detail

Each individual event can present more details by simply clicking any of them in Webhook tab. The following image is an example showing detail of a specific event:

Event detail page consists of 3 sections:

  • Transaction Information
    • Status: Status of the event
    • Date: Timestamp of the initial event
    • Product ID: ID of the product you’re using i.e. VA payment ID
    • Product Type: Indicates which product event you are subscribing to
  • Request Payload
  • Event History
    • Timestamp: Indicates the event delivery timestamp
    • Next Redelivery: Indicates when the next auto retry will happen for failed events. See automatic retry policy
    • Source: Indicates who triggers the event. Displays user name for manual resend and Automatic for automatic delivery
    • Response payload: Shows response information including HTTP status code, error code, response time, and response payload. This includes showing success and failed responses. For failed responses, see Common Event Error below

Common Errors

When Xendit receives error responses from your system, we display the response payload to help you to troubleshoot what went wrong. The response payload may contain useful information such as HTTP status code, HTTP error code, and response time to diagnose issue.

We try to find and map all functional and transient errors we can find across all customers alongside recommendation/action items in the following table below to help you to troubleshoot. All of these information are also available in Event Detail page by hovering over information icon right besides the error code displayed

HTTP ErrorDescription
4xx Client ErrorClient error indicates that there could be an issue due to mishandling of request payload on your system. Check event detail page to see the request payload sent and review your payload handler to proceed
5xx Server ErrorServer error happens mostly when your server is unavailable or unreachable. We recommend enabling automatic retry to help you to reconcile events
ETIMEDOUTA connection or send request failed because the connected party did not properly respond after 30s. Kindly check the record in your system before retrying to avoid duplicate delivery and implement idempotent handling if you haven't already
ECONNRESETA connection was forcibly closed by a peer resulting in a loss of connection. Kindly check the record in your system before retrying to avoid duplicate delivery and implement idempotent handling if you haven't already
CERT_HAS_EXPIREDWe couldn't reach your server's URL due to an expired certificate. Kindly check and renew your SSL certificate to receive webhook normally again. You can use public SSL diagnose website like Digicert to help you to troubleshoot this error.
EAI_AGAINWe couldn't reach your server due to DNS lookup timeout. This could happen when there is an issue on your proxy settings or intermittent network issue. Kindly check your internet connection and retry the until it is completed
ESOCKETTIMEDOUTWe couldn't reach your server due to DNS lookup timeout. This could happen when there is an issue on your proxy settings or intermittent network issue. Kindly check your system performance and retry the delivery until it is completed
ECONNREFUSEDNo connection could be made because the target machine actively refused it. This usually results from trying to connect to a service that is inactive on the foreign host. Kindly retry the delivery until it is completed
UNABLE_TO_VERIFY_LEAF_SIGNATUREThe certificate from the connected party is not trusted or SSL chain is broken. Kindly check and fix your certificate configuration and retry the delivery until it is completed. You can use a public SSL diagnose website like Digicert to help you to troubleshoot this error.
ECONNABORTEDA connection or send request failed because the connected party did not properly respond after 30s. Kindly check for the record in your system before retrying to avoid duplicate delivery and implement idempotent handling if you haven't already.
ENOTFOUNDWe couldn't reach your URL because DNS lookup failed. This is usually caused by the URL appeared to be invalid. Kindly check your webhook URL to fix this.

Last Updated on 2023-09-04