Event Subscriptions
Configure webhook event subscriptions — CRUD APIs for registering, updating, and managing event callbacks.
Event subscriptions allow you to register webhook endpoints that receive real-time callbacks when events occur on the platform.
Base URL: https://api.m2pprepaid.com/prepaid/auth
Available Events
| Event Name | Type | Description | Use Case |
|---|---|---|---|
KIT_STATUS_UPDATE | Instant | Card/kit status changes | Track activation, blocking, closure |
TRANSACTION_NOTIFICATION | Instant | All transactions including recon | Real-time transaction monitoring |
KIT_INACTIVATION_NOTIFICATION | Instant | Card inactivated due to dormancy | Dormancy management |
KIT_INACTIVATION_ADVANCE_NOTIFICATION | Advance | N days before dormancy inactivation | Pre-emptive customer engagement |
KIT_EXPIRY_NOTIFICATION | Instant | Card has expired | Card renewal triggers |
KIT_EXPIRY_ADVANCE_NOTIFICATION | Advance | N days before card expiry | Proactive renewal reminders |
CARD_RENEWAL | Instant | Card renewal initiated | Renewal tracking |
Instant events fire immediately when the action occurs. Advance events are scheduled — sent N days before the event.
Managing Subscriptions
POST /v1/event-subscriptions/
Authorization: Bearer {token}
X-TENANT-ID: {tenant_id}
Content-Type: application/json
{
"eventName": "TRANSACTION_NOTIFICATION",
"isEnabled": true,
"destination": "https://your-app.com/webhooks/transactions",
"retryConfig": {
"maxRetries": 3,
"retryIntervalSeconds": 60
}
}Response:
{
"eventName": "TRANSACTION_NOTIFICATION",
"isEnabled": true,
"destination": "https://your-app.com/webhooks/transactions",
"createdAt": "2026-02-12T10:30:00Z"
}GET /v1/event-subscriptions/{eventName}
Authorization: Bearer {token}
X-TENANT-ID: {tenant_id}PUT /v1/event-subscriptions/
Authorization: Bearer {token}
X-TENANT-ID: {tenant_id}
Content-Type: application/json
{
"eventName": "TRANSACTION_NOTIFICATION",
"isEnabled": true,
"destination": "https://your-app.com/v2/webhooks/transactions"
}DELETE /v1/event-subscriptions/{eventName}
Authorization: Bearer {token}
X-TENANT-ID: {tenant_id}GET /v1/event-subscriptions/
Authorization: Bearer {token}
X-TENANT-ID: {tenant_id}Returns all configured subscriptions for the tenant.
Advance Event Configuration
For advance notifications (pre-expiry, pre-dormancy), configure the notification schedule:
{
"eventName": "KIT_EXPIRY_ADVANCE_NOTIFICATION",
"isEnabled": true,
"destination": "https://your-app.com/webhooks/card-expiry-warning",
"advanceNotificationPeriods": [30, 15, 7]
}This sends notifications at 30 days, 15 days, and 7 days before card expiry.
Advance notification periods must be positive integers. The system processes advance events daily — exact delivery time may vary within the scheduled day.
