Webhook Solutions
Overview
Our webhook solution ensures that your system receives real-time notifications regarding specific events triggered within the NI system, based on your subscription to the different webhooks.
Integration
Our Webhooks solution relies on consumer defining a single API endpoint to receive all the notification types. Each message contains a common structure with:
- id: Unique message id
- type: type of notification. This is the key field to differentiate processing of the details payload
- timestamp: timestamp of the message from NI systems
- details: notification payload. Every message type will have its own payload specification and should be parsed and acted accordingly.
Security
The webhook endpoint is expected to be hosted through TLS/HTTPS to ensure secured data exchange. In addition to this, our webhook solution supports API authentication.
The preferred authentication strategy is oAuth2 where the consumer should provide NI with:
- Authentication/Token management URL endpoint
- client_id
- client_secret
Pre-requisites
Our webhook API request will be using the POST verb.
To register a Webhook endpoint with us, please contact your relationship manager with:
- Webhook URL Endpoint
- Authentication mode
- Security requirements
To support different authentication method or integration strategy with us, please contact your relationship manager
Pin Action
Status:
Production
Version:
V2
Product:
Webhook Solutions
Overview
This webbook serves to promptly inform your system whenever there are PIN-related actions performed on a card. It's important for maintaining card security, overseeing operations, and meeting regulatory requirements in finance. PIN-related actions, as of now we support reset pin counter only.
Reset PIN counter
This event is triggered when reset pin counter is triggered, which is reset of the wrong pin attempts.
How It Works
Upon detection of a relevant pin action, and as of now we support on reset pin counter, regardless of the channel that was used for this action, the webhook initiates a notification process after checking the subscribers for this event.
To be able to receive this webhook notification, you must subscribe to it, and by default you are not.
Subscribers will be defined while create the financial institution in our system, or after creating.
Pin Action
Status:
Production
Version:
V2
Product:
Webhook Solutions
Node | Child Node | Type | Length | Description |
---|---|---|---|---|
Authorization | Bearer xxxx | string | Authorization Header (Bearer Token) | |
Content-Type | application/json | string | Content Type |
Node Type | Type | Length | Description | |||||||
---|---|---|---|---|---|---|---|---|---|---|
id | string | 20 | Unique identifer for the request | |||||||
type | string | 32 | Type of the webhook | |||||||
timestamp | string | 30 | Timestamp of the request - Format YYYY-MM-DDtHH:MM:SS.SSS+04:00 | |||||||
details | card | id | value | string | 32 | Card Identifier | ||||
type | string | 20 | externalCardId - when this is used,cardNumber - when clear card number is used |
{
"id": "b876d568-8411-4638-bdef-a1a188a4773b",
"type": "PINAction",
"timestamp": "2020-07-20T06:49:02.366Z",
"details": {
"card": {
"id": {
"value": "99984100133767425304",
"type": "externalCardId"
}
}
}
}
Node | Child Node | Type | Length | Description | |
---|---|---|---|---|---|
Content-Type | application/json | string | Content Type |
Node Type | Type | Length | Description | |||||||
---|---|---|---|---|---|---|---|---|---|---|
id | string | 36 | Unique identifer ID | |||||||
type | string | 10 | Type of the webhook | |||||||
timestamp | string | 30 | Timestamp of the response - Format YYYY-MM-DDtHH:MM:SS.SSS+04:00 | |||||||
response | status | code | string | 5 | Status code of the response | |||||
description | string | 30 | Response Description |
{
"id": "b876d568-8411-4638-bdef-a1a188a4773b",
"type": "PINAction",
"timestamp": "2020-07-20T06:49:02.366Z",
"response": {
"status": {
"code": "00",
"description": "successful"
}
}
}
Code | Description |
---|---|
200 | Sample Description |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
500 | Internal Server Error |
502 | Bad gateway |
503 | Scheduled Maintenance |
504 | Gateway Timeout |
596 | Service Not Found |