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:
- Status: Status of the event, consists of 4 available values:
- Completed: Webhook delivery completed
- Pending: Event is queued to be delivered
- Failed: Webhook delivery failed. Check the response payload in event detail
- URL Not Set: You haven't set any Webhook URL
- Timeout: Xendit did not receive any response from your server within 30s
- Date Created: Timestamp when the event was created
- Product ID: ID of the product you’re using i.e. VA payment ID
- Product Type: Indicates which product event you are subscribing to. Available values:
- Next Redelivery: Indicates when the next auto retry will happen for failed events if enabled. See automatic retry policy
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 andAutomatic
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 Error | Description |
---|---|
4xx Client Error | Client 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 Error | Server error happens mostly when your server is unavailable or unreachable. We recommend enabling automatic retry to help you to reconcile events |
ETIMEDOUT | A 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 |
ECONNRESET | A 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_EXPIRED | We 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_AGAIN | We 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 |
ESOCKETTIMEDOUT | We 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 |
ECONNREFUSED | No 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_SIGNATURE | The 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. |
ECONNABORTED | A 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. |
ENOTFOUND | We 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. |
ERR_BODY_TOO_LARGE | The webhook failed because the response body was too large. Kindly reduce the size of the response body to be less than 5MB. |
Last Updated on 2024-07-02