Webhooks

This page describes the webhook payloads associated with the lifecycle events.

User

Lifecycle

flowchart TD
    Start[Client calls /user/create API]
    A[<a href="#user_create">CREATE webhook</a>]
    B[<a href="#user_kyc_pending">KYC_PENDING webhook</a>]
    D[<a href="#user_kyc_doc_uploaded">KYC_DOC_UPLOADED webhooks per doc upload</a>]
    E[<a href="#user_kyc_form_submitted">KYC_FORM_SUBMITTED webhook</a>]
    G[<a href="#user_kyc_rfi">KYC_RFI webhook</a>]
    H[<a href="#user_kyc_completed">KYC_COMPLETED webhook</a>]
    I[<a href="#user_kyc_rejected">KYC_REJECTED webhook</a>]
    J[<a href="#user_update">UPDATE webhook</a>]
    
    
    Start --> A
    A --> B
    B -->|Per document upload| D
    D -->|All docs & info uploaded| E
    E -->|Additional info needed| G
    G -->|User resubmits| D
    E -->|Application approved| H
    E -->|Application rejected| I
    H -->|Status update| J
    I -->|Status update| J

Payload

Kyc Pending

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "KYC_PENDING",
      "numRetries": 0,
      "createdAt": "2025-12-22T10:00:00.000Z",
      "updatedAt": "2025-12-22T10:00:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": false,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER"
    }
  }

Kyc Form Submitted

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "KYC_FORM_SUBMITTED",
      "numRetries": 0,
      "createdAt": "2025-12-22T10:05:00.000Z",
      "updatedAt": "2025-12-22T10:05:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": false,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER"
    }
  }

Kyc Rfi

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "KYC_RFI",
      "numRetries": 0,
      "createdAt": "2025-12-22T10:10:00.000Z",
      "updatedAt": "2025-12-22T10:10:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": false,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER",
      "rfiUrl": "https://app.fuze.finance/rfi/forms/abc123xyz"
    }
  }

Kyc Completed

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "KYC_COMPLETED",
      "numRetries": 0,
      "createdAt": "2025-12-22T10:15:00.000Z",
      "updatedAt": "2025-12-22T10:15:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": true,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER"
    }
  }

Kyc Rejected

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "KYC_REJECTED",
      "numRetries": 0,
      "createdAt": "2025-12-22T10:20:00.000Z",
      "updatedAt": "2025-12-22T10:20:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": false,
      "tnc": true,
      "userStatus": "INACTIVE",
      "userType": "CONSUMER"
    }
  }

Kyc Doc Uploaded

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "KYC_DOC_UPLOADED",
      "numRetries": 0,
      "createdAt": "2025-12-22T10:25:00.000Z",
      "updatedAt": "2025-12-22T10:25:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": false,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER",
      "docCategory": "IDENTITY",
      "docSubCategory": "PASSPORT"
    }
  }

Create

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "CREATE",
      "numRetries": 0,
      "createdAt": "2025-12-22T09:00:00.000Z",
      "updatedAt": "2025-12-22T09:00:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": false,
      "tnc": false,
      "userStatus": "PENDING",
      "userType": "CONSUMER"
    }
  }

Update

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "UPDATE",
      "numRetries": 0,
      "createdAt": "2025-12-22T11:00:00.000Z",
      "updatedAt": "2025-12-22T11:00:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": true,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER"
    }
  }

Delete

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "DELETE",
      "numRetries": 0,
      "createdAt": "2025-12-22T12:00:00.000Z",
      "updatedAt": "2025-12-22T12:00:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": true,
      "tnc": true,
      "userStatus": "DELETED",
      "userType": "CONSUMER"
    }
  }

Unfreeze

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "UNFREEZE",
      "numRetries": 0,
      "createdAt": "2025-12-22T13:00:00.000Z",
      "updatedAt": "2025-12-22T13:00:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": true,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER"
    }
  }

Login

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "LOGIN",
      "numRetries": 0,
      "createdAt": "2025-12-22T14:00:00.000Z",
      "updatedAt": "2025-12-22T14:00:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": true,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER"
    }
  }

Failed Login Attempt

  {
    "event": {
      "orgId": 10,
      "entity": "Users",
      "eventType": "FAILED_LOGIN_ATTEMPT",
      "numRetries": 0,
      "createdAt": "2025-12-22T14:05:00.000Z",
      "updatedAt": "2025-12-22T14:05:00.000Z"
    },
    "data": {
      "orgUserId": "sherlock.holmes",
      "orgId": 10,
      "kyc": true,
      "tnc": true,
      "userStatus": "ACTIVE",
      "userType": "CONSUMER"
    }
  }