Webhoooks
We use webhooks to notify you about changes that have occurred in your merchant (i.e., your Account entity) and its related entities. Notifications are sent as HTTP requests (webhooks) to an endpoint on your server. NomuPay will require that your share this endpoint during the Onboarding process.
Optionally, you may also need to add NomuPay's network to your firewall's allowlist. If that’s the case, please inform NomuPay during the Onboarding process.
Receive notifications
To ensure that your server is properly accepting notifications, we require you to acknowledge every notification of any type with a successful response (HTTP 200).
If we don't receive this response within 30 seconds, all notifications to your endpoint will be queued and retried.
Recommended steps:
- Verify the signature of the message.
- Acknowledge the notification with HTTP 200 response.
- Handle the notification in your system.
Queued and retried notifications
If a 200 HTTP status code is not received within 30 seconds or a status code other than 200 is returned, We assume that the delivery was unsuccessful. We apply the following retry policy.
Retry attempt | Time between attempts | Time since webhook event |
---|---|---|
1 | 10m | 11m |
2 | 10m | 21m |
3 | 10m | 31m |
4 | 10m | 41m |
If the maximum number of retries is exceeded, the notification won't be retried.
Handle notifications
Handling webhook notifications correctly is crucial to ensure that your integration business logic works as expected.
Type of webhooks
There are 3 types of webhooks that can be set up for each Entity; each can have a different endpoint.
Type | Description |
---|---|
Create | Sends notification, with all fields, whenever there is a new record |
Update | Sends notification, with updated fields and its new values and the record’s ID, whenever there is an update on an existing record |
Delete | Sends notification, with the record’s ID, whenever there is a deletion of an existing record |
Notifications can be grouped
You may receive several notifications at the same time, provided they all occurred within a 1 minute timespan. The time of each notification will be identified by the (modifiedAt) field in the notification.
Same field updated more than once
In some cases, the client may receive the same field several times. This could happen because the same field was updated more than once within a 1 minute timespan. It is advisable to use the (modifiedAt) time to determine the latest value.
Order of notifications
Our webhooks system does not guarantee delivery of notifications in the order in which are generated by our system.