Webhooks Notification
A Webhook is an HTTP POST
message sent from the BasicEx Payment server to the merchant's server.
Notification Overview
The primary purpose of the Webhook is to alert the merchant server that the status of a BasicEx Payment invoice has changed.
- The Webhook is sent to the
notificationUrl
provided when creating the invoice. - The push body sent by BasicEx Payment is a JSON-formatted string with
Content-Type: application/json
.
Payment Notification
The immediate payment notification (IPN) body sent. Example: "status
":"completed
"
Refer to the Payment Notification documentation for more information.
Payout Notification
The payout notification body sent. Example: "status
":"completed
"
Refer to the Payout Notification documentation for more information.
How Merchants Should Handle Webhooks
- Ensure not to rely on whitelisting the sending IP addresses of BasicEx Payment, as any changes to these IP addresses will not be separately notified.
- Make sure your
notificationURL
is valid. - BasicEx Payment does not sign the Webhook, so do not fully trust the information in the payload.
- The payment status of
paid
does not mean the payment has been made; merchants should only process orders when the corresponding BasicEx Payment invoice reaches thecompleted
state. For more information on BasicEx Payment invoice statuses, see the Notification Codes documentation.
WARNING
A response with an empty body and HTTP 200
status is required upon receiving a Webhook notification. Any other HTTP
response is considered a failure. BasicEx Payment servers will attempt to send the Webhook push multiple times until successful or abandoned by BasicEx Payment servers.
Troubleshooting
If Webhooks are not received or processed as expected, check the following:
- Verify that your Webhook handler's
notificationURL
can receivePOST
correctly. - Confirm that your firewall is not blocking
POST
from servers it may not recognize. - Resend the Webhook by sending a
POST
with the associated instruction for the specified invoice if you haven't received it as expected.