Webhooks

Using webhook, you may listen to real-time (or almost real time) updates on a user's loan status. Our system will hit the registered webhook for each of the events with relevant data points.

You can register a single webhook URL for all events, or a different URL per event — both are supported. Share your webhook URL(s) with your business POC to register them.

Events

We trigger webhooks for the events below. The matrix shows which lenders each event is available for, along with its trigger condition.

✅ available · ❌ not available · 🟡 work in progress

Event typeBajaj FinservDSPSIBTrigger condition
user.createdA Unity user is created (e.g. guest flow, on PAN + mobile submission).
application.createdLoan agreement generated; the user signs it via OTP verification.
application.submittedUser accepts the agreement (by verifying OTP).
application.status_updateLoan application or active loan status changes. Mirrors the loan status API response.
application.resumeUser resumes the flow (connected or guest).
application.feedbackUser must perform an additional action after submitting (e.g. a lender remark).
lender.updatedActive lender changes via lender selection.
application.approvedApplication approved by the lender.
application.archivedA parent loan is archived during a parallel LAMF/LAS submission.
disbursement.requestedWhen a disbursement request is successfully raised in the lender LMS. (Coming soon)
disbursement.readyDisbursement approved by the lender.
disbursement.approvedDisbursement request approved by the lender.
disbursement.successLender has initiated funds disbursement (funds may take time to reach the user's bank).
loan.topup.initiatedA new top-up loan is initiated. Top-ups are supported on Bajaj Finserv only.
payment.auto_debit.failedInterest auto-debit failed; re-sent daily until the bounced interest is repaid.
loan.ltv_breach.triggeredLTV breach (margin shortfall) detected.
loan.closure_requested🟡Loan closure request shared with the lender.
loan.closed🟡Loan successfully closed by the lender (reflected in SOA).

disbursement.success is also sent for controlled disbursement with an additional isMocked: true field — see the payloads below.

Webhook payloads

You can expect to receive the following payloads for the above mentioned event types.

User related

{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "user.created",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "userId": "507f1f77bcf86cd799439011",
    "interactionId": "INT64822ebcb406ec46428efac0"
  }
}

Loan application tracking

{
  "userId": "507f1f77bcf86cd799439011",
  "lid": "507f1f77bcf86cd799439012",
  "lender": "bajaj_finserv",
  "assetType": "STOCKS",
  "type": "application.created",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "requestedLoanLimit": 12000,
    "offerApplied": { // conditional - present only when an offer is applied to the application
      "offerCode": "SCABC",
      "offerId": "213234jd",
      "expiryDate": "2025-10-09T14:30:00Z",
      "discountAmount": 3422,
      "applicableOn": "PROCESSING_FEE",
      "discountType": "ABSOLUTE",
      "status": "FROZEN",
      "autoApply": true,
      "recommended": true,
      "applicableAmountRangeMin": 2
    }
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lid": "507f1f77bcf86cd799439012",
  "lender": "bajaj_finserv",
  "assetType": "MUTUALFUND",
  "type": "application.submitted",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "requestedLoanLimit": 12000
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lid": "507f1f77bcf86cd799439012",
  "lender": "bajaj_finserv",
  "assetType": "STOCKS",
  "type": "application.status_update",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "journeyStatus": "FETCH_CKYC",
    "journeyTracker": [
      {
        "status": "REGISTER_LEAD",
        "timestamp": "2025-10-01T08:09:26.485Z"
      },
      {
        "status": "CONFIRM_OFFER",
        "timestamp": "2025-10-01T08:09:30.884Z"
      },
      {
        "status": "FETCH_CKYC",
        "timestamp": "2025-10-01T08:09:41.347Z"
      }
    ],
    "selection": {
      "confirmedAmount": 450000,
      "maxAmount": 800000
    },
    "userId": "507f1f77bcf86cd799439011"
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "application.resume",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "lid": "507f1f77bcf86cd799439012"
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "STOCKS",
  "type": "application.feedback",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "userActionRequired": true,
    "userActionType": "OPS_DIGILOCKER",
    "opsFeedback": "There was a data mismatch in your name between previous agreement and submitted PAN card. We request you to proceed with the Digilocker flow."
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "lender.updated",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "activeLid": "507f1f77bcf86cd799439013",
    "activeLender": "dsp"
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "STOCKS",
  "type": "application.approved",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",
    "loanAccountNumber": "133247",
    "loanAccountLimit": 12000
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "application.archived",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "reason": "CHILD_DISBURSED", // CHILD_DISBURSED | CHILD_SUBMITTED
    "childLid": "507f1f77bcf86cd799439013"
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "loan.topup.initiated",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "lid": "507f1f77bcf86cd799439013", // the new top-up loan LID
    "productType": "lamf",
    "assetType": "MUTUALFUND"
  }
}

Disbursement related

{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "disbursement.requested",   // coming soon
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",
    "loanAccountNumber": "133247",
    "amount": 11000
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "disbursement.ready",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",
    "loanAccountNumber": "133247",
    "amount": 11000
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "disbursement.approved",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",
    "loanAccountNumber": "133247",
    "amount": 11000
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "STOCKS",
  "type": "disbursement.success",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",       // coming soon
    "loanAccountNumber": "133247",       // coming soon
    "disbursedAmount": 11000
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "disbursement.success",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",       // coming soon
    "loanAccountNumber": "133247",       // coming soon
    "disbursedAmount": 11000,
    "isMocked": true
  }
}

Loan management webhooks

{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "payment.auto_debit.failed",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",
    "bouncedInterest": 1200,
    "bounceCharges": 200
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "STOCKS",
  "type": "loan.ltv_breach.triggered",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498",
    "shortfallAmount": 1000
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "MUTUALFUND",
  "type": "loan.closure_requested",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "lan": "123456",
    "customerName": "John Doe",
    "transactionNumber": "HS92321311243407",
    "toEmail": ["[email protected]"],
    "ccEmail": ["[email protected]"]
  }
}
{
  "userId": "507f1f77bcf86cd799439011",
  "lender": "bajaj_finserv",
  "lid": "507f1f77bcf86cd799439012",
  "assetType": "STOCKS",
  "type": "loan.closed",
  "requestId": "WH-64f1abc23ef4cd5678",
  "timestamp": "2025-10-01T08:09:26.485Z",   // coming soon
  "data": {
    "loanNo": "V402RLAS00058498"
  }
}

Webhook authentication

Each request sent to your webhook endpoint will include an Authorization header with a Bearer token.

Headers

  • Content-Type: application/json
  • Authorization: Bearer <token>

The token is a JWT with the following payload, signed with shared partner secret:

{
    "iss": "gateway",
    "iat": <current_unix_timestamp>,
    "exp": <expiration_unix_timestamp>
}
  • iss: Issuer of the token (fixed value: gateway).
  • iat: Issued at time, represented as a Unix timestamp.
  • exp: Expiration time, represented as a Unix timestamp (5 minutes from the issued time).

To authenticate the webhook requests, partner can retrieve the token from the Authorization header and decode the jwt with the shared partner secret

Post decoding, validate the claims:

  • Issuer: Check that the iss claim is "gateway".