> **Source:** https://knowledge.leegality.com/document-execution/api/certificate-verification-failed > **Site:** Leegality Knowledge Base — https://knowledge.leegality.com > **About:** Leegality is a document execution platform covering eSigning, stamps, NeSL, workflows, and REST API integration. > **Navigation:** Every article on this site has a plain-text version at `.txt` (this format). To get an index of all articles with their `.txt` links, read: https://knowledge.leegality.com/llms.txt > **AI Guide:** For instructions on how to navigate this knowledge base as an AI agent, read: https://knowledge.leegality.com/ai-readable.txt --- # WEBHOOK /your-webhook-endpoint/verification-failed — Certificate Verification Failed Fires when a signer's signature certificate does not match the verification criteria configured on the invitee (name, pincode, state, title, year of birth, or gender). The signing attempt is blocked and the invitation is terminated. Delivered to the **Error Webhook URL**. **Authentication:** `X-Auth-Token` header required on every request. ## Request URL ``` WEBHOOK https://app1.leegality.com/api/your-webhook-endpoint/verification-failed ``` **Environments:** - Production: `https://app1.leegality.com/api/your-webhook-endpoint/verification-failed` - Sandbox: `https://sandbox.leegality.com/api/your-webhook-endpoint/verification-failed` --- ## Request Body **Content-Type:** `application/json` | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `webhookType` | string | No | Indicates whether this is a success or error event. Allowed: `Error`. | `Error` | | `documentId` | string | No | The unique Leegality document ID. Use with the [Details API](https://knowledge.leegality.com/document-execution/api/check-document-details) to fetch full document information. | `01KFJ9KFSSFV9E97DHM2QTFQJ2` | | `documentStatus` | string | No | The document's status at the time of this event. - `"Sent"` — one or more invitees are still pending. - `"Completed"` — all invitees have acted. Allowed: `Draft`, `Sent`, `Completed`. | `Sent` | | `irn` | string | No | Internal Reference Number from the original eSigning request. | `null` | | `mac` | string | No | HMAC-SHA1 of `documentId` using your Private Salt. Use to [verify the webhook](https://knowledge.leegality.com/document-execution/api/webhooks/verify-webhook-request). | `b10862af9e05e194e6c6455fc839706ec5c8d554` | | `messages` | array\ | No | An array of event messages. One entry per failed verification field. See **messages** below. | — | | `verification` | object | No | Certificate verification results for each configured field. See **verification** below. | — | | `request` | object | No | Details about the invitee associated with this webhook event. See **request** below. | — | #### messages | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `code` | string | No | Machine-readable verification failure code. - `name.verification.failed` - `smartname.verification.failed` - `pincode.verification.failed` - `state.verification.failed` - `title.verification.failed` - `yob.verification.failed` - `gender.verification.failed` | `name.verification.failed` | | `message` | string | No | Human-readable description of the failure. - `Name doesn't match with the Digital Signature Certificate. Document not signed.` - `Name (Smart Verification) doesn't match with the Digital Signature Certificate. Document not signed.` - `Pincode doesn't match with the Digital Signature Certificate. Document not signed.` - `State doesn't match with the Digital Signature Certificate. Document not signed.` - `Title doesn't match with the Digital Signature Certificate. Document not signed.` - `Year of birth doesn't match with the Digital Signature Certificate. Document not signed.` - `Gender doesn't match with the Digital Signature Certificate. Document not signed.` | `Name doesn't match with the Digital Signature Certificate. D` | #### verification Certificate verification results for each configured field. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `name` | boolean | No | Whether the invitee's name matched the certificate. - `true` — match - `false` — mismatch - `null` — not configured | `false` | | `smartName` | integer | No | Name similarity score against the certificate (0–100). `0` = no match, `100` = exact match. `null` if not configured. | `0` | | `pincode` | boolean | No | Whether the invitee's pincode matched the certificate. - `true` — match - `false` — mismatch - `null` — not configured | `false` | | `state` | boolean | No | Whether the invitee's state matched the certificate. - `true` — match - `false` — mismatch - `null` — not configured | `false` | | `title` | boolean | No | Whether the invitee's title matched the certificate. - `true` — match - `false` — mismatch - `null` — not configured | `false` | | `yob` | boolean | No | Whether the invitee's year of birth matched the certificate. - `true` — match - `false` — mismatch - `null` — not configured | `false` | | `gender` | boolean | No | Whether the invitee's gender matched the certificate. - `true` — match - `false` — mismatch - `null` — not configured | `false` | #### request Details about the invitee associated with this webhook event. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `inviteeType` | string | No | The role of the invitee in the workflow. Allowed: `Signer`. | `Signer` | | `name` | string | No | The full name of the invitee. | `John Doe` | | `email` | string | No | The email address of the invitee. | `abhishek@example.com` | | `phone` | string | No | The phone number of the invitee. | `null` | | `invitationUrl` | string | No | The URL for this invitee to sign or review the document. | `https://sandbox.leegality.com/sign/2e4ace49-85bd-4dc6-86f9-c` | | `active` | boolean | No | Indicates whether it is this invitee's turn to act in the signing sequence. | `true` | | `action` | string | No | The action taken by the invitee. Allowed: `null`. | `null` | | `error` | string | No | Error message for this event. | `Verification details doesn't match with the Digital Signatur` | | `expired` | boolean | No | Indicates whether the invitation has been terminated. Can be reactivated from the Leegality dashboard. | `true` | | `expiryDate` | string | No | The date and time the invitation is configured to expire. Format: `dd-MM-yyyy HH:mm:ss`. | `03-04-2026 23:59:59` | | `rejectionMessage` | string | No | The rejection reason provided by the invitee. | `null` | | `signType` | string | No | The signature method used. Allowed: `null`. | `null` | ### Sample Request ```json { "webhookType": "Error", "documentId": "01KFJ9KFSSFV9E97DHM2QTFQJ2", "documentStatus": "Sent", "irn": null, "mac": "b10862af9e05e194e6c6455fc839706ec5c8d554", "messages": [ { "code": "name.verification.failed", "message": "Name doesn't match with the Digital Signature Certificate. Document not signed." } ], "verification": { "name": false, "smartName": 0, "pincode": false, "state": false, "title": false, "yob": false, "gender": false }, "request": { "inviteeType": "Signer", "name": "John Doe", "email": "abhishek@example.com", "phone": null, "invitationUrl": "https://sandbox.leegality.com/sign/2e4ace49-85bd-4dc6-86f9-c41242c35910", "active": true, "action": null, "error": "Verification details doesn't match with the Digital Signature Certificate. Document not signed.", "expired": true, "expiryDate": "03-04-2026 23:59:59", "rejectionMessage": null, "signType": null } } ``` --- ## Responses ### 2XX — Return any 2XX status code (200, 201, or 202) to acknowledge receipt. No specific response body is required. Any 2XX status code is accepted.