idmission-web-sdk 2.0.5 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ <!--- This markdown file was auto-generated from "README.mdx" -->
2
+
1
3
  # IDmission Web SDK
2
4
 
3
5
  Demo: https://websdk2demo.idmission.com
@@ -9,10 +11,12 @@ Storybook: https://websdk2test.idmission.com
9
11
  Before using the IDmission WebSDK, you will need to obtain an API key. New customers receive their API credentials via email. If you haven't received them, reach out to support@idmission.com.
10
12
 
11
13
  To test that your credentials are valid:
14
+
12
15
  ```bash
13
16
  curl -s -H "Content-Type: application/json" \
14
17
  -d '{"api_key_id": "your-api-key-id", "api_key_secret": "your-api-secret"}' \
15
18
  https://portal-api.idmission.com/portal.sessions.v1.SessionsService/CreateSession
19
+
16
20
  ```
17
21
 
18
22
  Prior to initializing the WebSDK on the client, you should generate a session on your server using these credentials. Be careful not to leak them on the client side! The generated session id is safe to pass to the client, but the secrets used to generate them are not. If you have inadvertently leaked your credentials, react out to support@idmission.com to rotate them.
@@ -23,6 +27,7 @@ If you are using NodeJS, check out our [auth client for server-side JavaScript](
23
27
 
24
28
  ```bash
25
29
  npm i idmission-web-sdk
30
+
26
31
  ```
27
32
 
28
33
  ```jsx
@@ -31,13 +36,16 @@ import { render } from 'react-dom'
31
36
  import { IdValidation } from 'idmission-web-sdk'
32
37
 
33
38
  render(<IdValidation sessionId={YOUR_SESSION_ID} />, document.getElementById('root'))
39
+
34
40
  ```
35
41
 
36
42
  ## Basic Usage in HTML
37
43
 
38
44
  Add the following script tag to your page's `<head>`:
45
+
39
46
  ```html
40
47
  <script type="module" src="https://websdk-cdn-dev.idmission.com/websdk/prod/loader.js"></script>
48
+
41
49
  ```
42
50
 
43
51
  You may subscribe to the `idmission-web-sdk.ready` event to be notified when loading has completed.
@@ -48,13 +56,16 @@ You may subscribe to the `idmission-web-sdk.ready` event to be notified when loa
48
56
  // this code fires when the sdk has finished loading.
49
57
  })
50
58
  </script>
59
+
51
60
  ```
52
61
 
53
62
  Then you may call any render method below, for example `renderIdValidation`, like so:
63
+
54
64
  ```html
55
65
  <script type="module">
56
66
  IDmissionSDK.renderIdValidation('#target-element', { sessionId: 'my-idmission-session-id' });
57
67
  </script>
68
+
58
69
  ```
59
70
 
60
71
  ## Customer Flows
@@ -65,144 +76,141 @@ Render a fullscreen ID capture component that instructs the user to photograph b
65
76
 
66
77
  **Props**
67
78
 
68
- <table>
69
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
70
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
71
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
72
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
73
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
74
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
75
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
76
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
77
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
78
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user completes the IDValidation flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
79
- <tr><td><code>onApproved</code> (optional)</td><td>callback function that fires when the user completes the IDValidation flow with a valid ID. Arguments: same as onComplete.</td></tr>
80
- <tr><td><code>onDenied</code> (optional)</td><td>callback function that fires when the user completes the IDValidation flow with an invalid ID. Arguments: same as onComplete.</td></tr>
81
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
82
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
83
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
84
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
85
- <tr><td><code>captureSignature</code> (optional)</td><td>boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false.</td></tr>
86
- <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
87
- <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured, for available options consult the Additional Document Properties table below.</td></tr>
88
- <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
89
- <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
90
- <tr><td><code>idAutoCaptureEnabled</code> (optional)</td><td>boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is `true`.</td></tr>
91
- <tr><td><code>idCardAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8.</td></tr>
92
- <tr><td><code>passportAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75.</td></tr>
93
- <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3.</td></tr>
94
- <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3.</td></tr>
95
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
96
- <tr><td><code>instructions</code> (optional)</td><td>React element or string to render on the instructions screen.</td></tr>
97
- <tr><td><code>guideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
98
- <tr><td><code>portraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
99
- <tr><td><code>rotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
100
- <tr><td><code>precapturedDocuments</code> (optional)</td><td>object to allow documents that have been previously captured to be submitted. Valid keys: idCardFront, idCardBack, passport.</td></tr>
101
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
102
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
103
- <tr><td><code>manualReviewRequired</code> (optional)</td><td>boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false.</td></tr>
104
- <tr><td><code>idBackImageRequired</code> (optional)</td><td>boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Defaults to true.</td></tr>
105
- <tr><td><code>idImageResolutionCheck</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID (x) document image should be triggered. Defaults to false.</td></tr>
106
- <tr><td><code>verifyIdWithExternalDatabases</code> (optional)</td><td>boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false.</td></tr>
107
- <tr><td><code>bypassAgeValidation</code> (optional)</td><td>boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false.</td></tr>
108
- <tr><td><code>bypassNameMatching</code> (optional)</td><td>boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true.</td></tr>
109
- <tr><td><code>personalData</code> (optional)</td><td>object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country.</td></tr>
110
- <tr><td><code>cardData</code> (optional)</td><td>object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard.</td></tr>
111
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
112
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
113
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
114
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
115
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
116
- <tr><td><code>webhooksFireOnReview</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false.</td></tr>
117
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
118
- <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
119
- <tr><td><code>colors</code> (optional)</td><td>object containing any color overrides, for available options consult the Colors table below.</td></tr>
120
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
121
- <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
122
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
123
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
124
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
125
- </table>
79
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
80
+ | ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
81
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
82
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
83
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
84
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
85
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
86
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
87
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
88
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
89
+ | onComplete (optional) | callback function that fires when the user completes the IDValidation flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
90
+ | onApproved (optional) | callback function that fires when the user completes the IDValidation flow with a valid ID. Arguments: same as onComplete. |
91
+ | onDenied (optional) | callback function that fires when the user completes the IDValidation flow with an invalid ID. Arguments: same as onComplete. |
92
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
93
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
94
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
95
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
96
+ | captureSignature (optional) | boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false. |
97
+ | captureSignatureVideo (optional) | boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false. |
98
+ | captureAdditionalDocuments (optional) | array of additional documents to be captured, for available options consult the Additional Document Properties table below. |
99
+ | loadingOverlayMode (optional) | string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
100
+ | idCaptureRequirement (optional) | string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport. |
101
+ | idAutoCaptureEnabled (optional) | boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is true. |
102
+ | idCardAutoCaptureScoreThreshold (optional) | number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8. |
103
+ | passportAutoCaptureScoreThreshold (optional) | number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75. |
104
+ | idCardFocusScoreThreshold (optional) | number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3. |
105
+ | passportFocusScoreThreshold (optional) | number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3. |
106
+ | skipSuccessScreen (optional) | boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
107
+ | instructions (optional) | React element or string to render on the instructions screen. |
108
+ | guideType (optional) | string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit. |
109
+ | portraitGuidesOnMobile (optional) | boolean to indicate whether guide images should be rotated on mobile. Defaults to false. |
110
+ | rotateLoadingOverlayImageWhenPortrait (optional) | boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true. |
111
+ | precapturedDocuments (optional) | object to allow documents that have been previously captured to be submitted. Valid keys: idCardFront, idCardBack, passport. |
112
+ | companyId (optional) | company identifier to include with submission. |
113
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
114
+ | manualReviewRequired (optional) | boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false. |
115
+ | idBackImageRequired (optional) | boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Defaults to true. |
116
+ | idImageResolutionCheck (optional) | boolean to indicate if validation of the minimum resolution for an ID (x) document image should be triggered. Defaults to false. |
117
+ | verifyIdWithExternalDatabases (optional) | boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false. |
118
+ | bypassAgeValidation (optional) | boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false. |
119
+ | bypassNameMatching (optional) | boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true. |
120
+ | personalData (optional) | object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country. |
121
+ | cardData (optional) | object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard. |
122
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
123
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
124
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
125
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
126
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
127
+ | webhooksFireOnReview (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false. |
128
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
129
+ | assets (optional) | object containing any asset overrides, for available options consult the Assets table below. |
130
+ | colors (optional) | object containing any color overrides, for available options consult the Colors table below. |
131
+ | theme (optional) | name of an included theme or object containing theme properties. |
132
+ | verbiage (optional) | object containing any verbiage overrides, for available options consult the Verbiage table below. |
133
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
134
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
135
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
126
136
 
127
137
  **ID Capture Assets**
128
138
 
129
- <table>
130
- <tr><td><code>documentDetectionModelUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/models/documentdetection448/model.json</td></tr>
131
- <tr><td><code>focusModelUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/models/focus/model.json</td></tr>
132
- <tr><td><code>loadingOverlay.instructionImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/WebSDK-Instruction-DL-Capture-3-Portrait.png</td></tr>
133
- <tr><td><code>loadingOverlay.cameraAccessDenied.imageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/camera-disable-icon.png</td></tr>
134
- <tr><td><code>idCardFront.portraitGuidesImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Front-SVG-Portrait-2.svg</td></tr>
135
- <tr><td><code>idCardFront.landscapeGuidesImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Landscape-SVG-Portrait-2.svg</td></tr>
136
- <tr><td><code>idCardBack.portraitGuidesImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Back-SVG-Portrait-2.svg</td></tr>
137
- <tr><td><code>idCardBack.landscapeGuidesImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Back-SVG-Landscape-2.svg</td></tr>
138
- <tr><td><code>passport.portraitGuidesImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-Passport-Front-SVG-Portrait-2.svg</td></tr>
139
- <tr><td><code>passport.landscapeGuidesImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-Passport-Front-SVG-Landscape-2.svg</td></tr>
140
- <tr><td><code>flipIdPrompt.frontPortraitGuidesImageUrl</code></td><td>Default: value of idCardFront.portraitGuidesImageUrl</td></tr>
141
- <tr><td><code>flipIdPrompt.frontLandscapeGuidesImageUrl</code></td><td>Default: value of idCardFront.landscapeGuidesImageUrl</td></tr>
142
- <tr><td><code>flipIdPrompt.backPortraitGuidesImageUrl</code></td><td>Default: value of idCardBack.portraitGuidesImageUrl</td></tr>
143
- <tr><td><code>flipIdPrompt.backLandscapeGuidesImageUrl</code></td><td>Default: value of idCardBack.landscapeGuidesImageUrl</td></tr>
144
- </table>
139
+ | documentDetectionModelUrl | Default: https://websdk-cdn-dev.idmission.com/assets/models/documentdetection448/model.json |
140
+ | ------------------------------------------ | -------------------------------------------------------------------------------------------------- |
141
+ | focusModelUrl | Default: https://websdk-cdn-dev.idmission.com/assets/models/focus/model.json |
142
+ | loadingOverlay.instructionImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/WebSDK-Instruction-DL-Capture-3-Portrait.png |
143
+ | loadingOverlay.cameraAccessDenied.imageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/camera-disable-icon.png |
144
+ | idCardFront.portraitGuidesImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Front-SVG-Portrait-2.svg |
145
+ | idCardFront.landscapeGuidesImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Landscape-SVG-Portrait-2.svg |
146
+ | idCardBack.portraitGuidesImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Back-SVG-Portrait-2.svg |
147
+ | idCardBack.landscapeGuidesImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Back-SVG-Landscape-2.svg |
148
+ | passport.portraitGuidesImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-Passport-Front-SVG-Portrait-2.svg |
149
+ | passport.landscapeGuidesImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-Passport-Front-SVG-Landscape-2.svg |
150
+ | flipIdPrompt.frontPortraitGuidesImageUrl | Default: value of idCardFront.portraitGuidesImageUrl |
151
+ | flipIdPrompt.frontLandscapeGuidesImageUrl | Default: value of idCardFront.landscapeGuidesImageUrl |
152
+ | flipIdPrompt.backPortraitGuidesImageUrl | Default: value of idCardBack.portraitGuidesImageUrl |
153
+ | flipIdPrompt.backLandscapeGuidesImageUrl | Default: value of idCardBack.landscapeGuidesImageUrl |
145
154
 
146
155
  **ID Capture Colors**
147
- <table>
148
- <tr><td><code>loadingOverlay.continueBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
149
- <tr><td><code>loadingOverlay.continueBtn.textColor</code></td><td>Default: white</td></tr>
150
- <tr><td><code>loadingOverlay.continueBtn.loadingBackgroundColor</code></td><td>Default: gray</td></tr>
151
- <tr><td><code>loadingOverlay.continueBtn.loadingTextColor</code></td><td>Default: white</td></tr>
152
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
153
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtn.textColor</code></td><td>Default: white</td></tr>
154
- <tr><td><code>guideBoxUnsatisfiedColor</code></td><td>Default: white</td></tr>
155
- <tr><td><code>guideBoxSatisfiedColor</code></td><td>Default: green</td></tr>
156
- <tr><td><code>videoSignatureCapture.success.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
157
- <tr><td><code>videoSignatureCapture.success.retryBtn.textColor</code></td><td>Default: white</td></tr>
158
- <tr><td><code>success.doneBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
159
- <tr><td><code>success.doneBtn.textColor</code></td><td>Default: white</td></tr>
160
- <tr><td><code>success.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
161
- <tr><td><code>success.retryBtn.textColor</code></td><td>Default: white</td></tr>
162
- </table>
156
+
157
+ | loadingOverlay.continueBtn.backgroundColor | Default: #16a085 |
158
+ | ---------------------------------------------------------- | ---------------- |
159
+ | loadingOverlay.continueBtn.textColor | Default: white |
160
+ | loadingOverlay.continueBtn.loadingBackgroundColor | Default: gray |
161
+ | loadingOverlay.continueBtn.loadingTextColor | Default: white |
162
+ | loadingOverlay.cameraAccessDenied.retryBtn.backgroundColor | Default: #ea8557 |
163
+ | loadingOverlay.cameraAccessDenied.retryBtn.textColor | Default: white |
164
+ | guideBoxUnsatisfiedColor | Default: white |
165
+ | guideBoxSatisfiedColor | Default: green |
166
+ | videoSignatureCapture.success.retryBtn.backgroundColor | Default: #ea8557 |
167
+ | videoSignatureCapture.success.retryBtn.textColor | Default: white |
168
+ | success.doneBtn.backgroundColor | Default: #16a085 |
169
+ | success.doneBtn.textColor | Default: white |
170
+ | success.retryBtn.backgroundColor | Default: #ea8557 |
171
+ | success.retryBtn.textColor | Default: white |
163
172
 
164
173
  **ID Capture Verbiage**
165
174
 
166
- <table>
167
- <tr><td><code>loadingOverlay.headingText</code></td><td>Default: "Use your device camera to capture your ID"</td></tr>
168
- <tr><td><code>loadingOverlay.useContinuityCameraText</code></td><td>Default: "Use your iPhone as a webcam"</td></tr>
169
- <tr><td><code>loadingOverlay.modelsWarmingUpText</code></td><td>Default: "Models warming up..."</td></tr>
170
- <tr><td><code>loadingOverlay.cameraInitializingText</code></td><td>Default: "Camera initializing..."</td></tr>
171
- <tr><td><code>loadingOverlay.continueText</code></td><td>Default: "Continue"</td></tr>
172
- <tr><td><code>loadingOverlay.cameraAccessDenied.headingText</code></td><td>Default: "Your camera permission is disabled"</td></tr>
173
- <tr><td><code>loadingOverlay.cameraAccessDenied.descriptionText</code></td><td>Default: "This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser."</td></tr>
174
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtnText</code></td><td>Default: "Retry"</td></tr>
175
- <tr><td><code>idCardFront.instructionText</code></td><td>Default: "Scan the front of ID"</td></tr>
176
- <tr><td><code>idCardFront.capturingText</code></td><td>Default: "Capturing..."</td></tr>
177
- <tr><td><code>idCardFront.captureFailedText</code></td><td>Default: "Capture failed!"</td></tr>
178
- <tr><td><code>idCardBack.instructionText</code></td><td>Default: "Scan the back of ID"</td></tr>
179
- <tr><td><code>idCardBack.capturingText</code></td><td>Default: "Capturing..."</td></tr>
180
- <tr><td><code>idCardBack.captureFailedText</code></td><td>Default: "Capture failed!"</td></tr>
181
- <tr><td><code>passport.instructionText</code></td><td>Default: "Scan the ID page of passport"</td></tr>
182
- <tr><td><code>passport.capturingText</code></td><td>Default: "Capturing..."</td></tr>
183
- <tr><td><code>passport.captureFailedText</code></td><td>Default: "Capture failed!"</td></tr>
184
- <tr><td><code>flipIdPrompt.instructionText</code></td><td>Default: "Please flip your ID card..."</td></tr>
185
- <tr><td><code>additionalDocumentCapture.headingText</code></td><td>Default: "Additional document capture"</td></tr>
186
- <tr><td><code>additionalDocumentCapture.nextBtnText</code></td><td>Default: "Next"</td></tr>
187
- <tr><td><code>signatureCapture.headingText</code></td><td>Default: "Please sign the box below"</td></tr>
188
- <tr><td><code>signatureCapture.acceptBtnText</code></td><td>Default: "Accept"</td></tr>
189
- <tr><td><code>signatureCapture.clearBtnText</code></td><td>Default: "Clear"</td></tr>
190
- <tr><td><code>videoSignatureCapture.faceLiveness</code></td><td>Default: see Face Liveness Verbiage section below</td></tr>
191
- <tr><td><code>videoSignatureCapture.guidanceMessageText</code></td><td>Default: "Please sign the box below"</td></tr>
192
- <tr><td><code>videoSignatureCapture.acceptBtnText</code></td><td>Default: "Accept"</td></tr>
193
- <tr><td><code>videoSignatureCapture.clearBtnText</code></td><td>Default: "Clear"</td></tr>
194
- <tr><td><code>videoSignatureCapture.success.headingText</code></td><td>Default: "Video signature has been successfully captured!"</td></tr>
195
- <tr><td><code>videoSignatureCapture.success.doneBtnText</code></td><td>Default: "Done"</td></tr>
196
- <tr><td><code>videoSignatureCapture.success.retryBtnText</code></td><td>Default: "Retry"</td></tr>
197
- <tr><td><code>success.headingText</code></td><td>Default: "ID Capture Successful"</td></tr>
198
- <tr><td><code>success.idCardFrontText</code></td><td>Default: "ID Card Front"</td></tr>
199
- <tr><td><code>success.idCardBackText</code></td><td>Default: "ID Card Back"</td></tr>
200
- <tr><td><code>success.passportText</code></td><td>Default: "Passport"</td></tr>
201
- <tr><td><code>success.instructionText</code></td><td>Default: "Verify the entire ID was captured clearly with no glare."</td></tr>
202
- <tr><td><code>success.retryText</code></td><td>Default: "Retry"</td></tr>
203
- <tr><td><code>success.submittingText</code></td><td>Default: "Submitting..."</td></tr>
204
- <tr><td><code>success.submitText</code></td><td>Default: "Submit"</td></tr>
205
- </table>
175
+ | loadingOverlay.headingText | Default: "Use your device camera to capture your ID" |
176
+ | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
177
+ | loadingOverlay.useContinuityCameraText | Default: "Use your iPhone as a webcam" |
178
+ | loadingOverlay.modelsWarmingUpText | Default: "Models warming up..." |
179
+ | loadingOverlay.cameraInitializingText | Default: "Camera initializing..." |
180
+ | loadingOverlay.continueText | Default: "Continue" |
181
+ | loadingOverlay.cameraAccessDenied.headingText | Default: "Your camera permission is disabled" |
182
+ | loadingOverlay.cameraAccessDenied.descriptionText | Default: "This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser." |
183
+ | loadingOverlay.cameraAccessDenied.retryBtnText | Default: "Retry" |
184
+ | idCardFront.instructionText | Default: "Scan the front of ID" |
185
+ | idCardFront.capturingText | Default: "Capturing..." |
186
+ | idCardFront.captureFailedText | Default: "Capture failed!" |
187
+ | idCardBack.instructionText | Default: "Scan the back of ID" |
188
+ | idCardBack.capturingText | Default: "Capturing..." |
189
+ | idCardBack.captureFailedText | Default: "Capture failed!" |
190
+ | passport.instructionText | Default: "Scan the ID page of passport" |
191
+ | passport.capturingText | Default: "Capturing..." |
192
+ | passport.captureFailedText | Default: "Capture failed!" |
193
+ | flipIdPrompt.instructionText | Default: "Please flip your ID card..." |
194
+ | additionalDocumentCapture.headingText | Default: "Additional document capture" |
195
+ | additionalDocumentCapture.nextBtnText | Default: "Next" |
196
+ | signatureCapture.headingText | Default: "Please sign the box below" |
197
+ | signatureCapture.acceptBtnText | Default: "Accept" |
198
+ | signatureCapture.clearBtnText | Default: "Clear" |
199
+ | videoSignatureCapture.faceLiveness | Default: see Face Liveness Verbiage section below |
200
+ | videoSignatureCapture.guidanceMessageText | Default: "Please sign the box below" |
201
+ | videoSignatureCapture.acceptBtnText | Default: "Accept" |
202
+ | videoSignatureCapture.clearBtnText | Default: "Clear" |
203
+ | videoSignatureCapture.success.headingText | Default: "Video signature has been successfully captured!" |
204
+ | videoSignatureCapture.success.doneBtnText | Default: "Done" |
205
+ | videoSignatureCapture.success.retryBtnText | Default: "Retry" |
206
+ | success.headingText | Default: "ID Capture Successful" |
207
+ | success.idCardFrontText | Default: "ID Card Front" |
208
+ | success.idCardBackText | Default: "ID Card Back" |
209
+ | success.passportText | Default: "Passport" |
210
+ | success.instructionText | Default: "Verify the entire ID was captured clearly with no glare." |
211
+ | success.retryText | Default: "Retry" |
212
+ | success.submittingText | Default: "Submitting..." |
213
+ | success.submitText | Default: "Submit" |
206
214
 
207
215
  **Example**
208
216
 
@@ -216,6 +224,7 @@ IDmissionSDK.renderIdValidation('#target-element', {
216
224
  alert('Your ID could not be validated, you shall not pass!')
217
225
  },
218
226
  });
227
+
219
228
  ```
220
229
 
221
230
  ### FaceValidation
@@ -224,105 +233,101 @@ Render a fullscreen capture component that analyzes frames from the user's front
224
233
 
225
234
  **Props**
226
235
 
227
- <table>
228
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
229
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
230
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
231
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
232
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
233
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
234
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
235
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
236
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
237
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the FaceValidation flow, regardless of whether they are approved or denied. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
238
- <tr><td><code>onApproved</code> (optional)</td><td>callback function that fires when the user completes the FaceValidation flow and passes the realness check. Arguments: same as onComplete.</td></tr>
239
- <tr><td><code>onDenied</code> (optional)</td><td>callback function that fires when the user completes the FaceValidation flow and fails the realness check. Arguments: same as onComplete.</td></tr>
240
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
241
- <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after completing the FaceValidation flow and failing the realness check.</td></tr>
242
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
243
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
244
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
245
- <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
246
- <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
247
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
248
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
249
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
250
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
251
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
252
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
253
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
254
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
255
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
256
- <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
257
- <tr><td><code>colors</code> (optional)</td><td>object containing any color overrides, for available options consult the Colors table below.</td></tr>
258
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
259
- <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
260
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
261
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
262
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
263
- </table>
236
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
237
+ | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
238
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
239
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
240
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
241
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
242
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
243
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
244
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
245
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
246
+ | onComplete (optional) | callback function that fires when the user has completed the FaceValidation flow, regardless of whether they are approved or denied. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
247
+ | onApproved (optional) | callback function that fires when the user completes the FaceValidation flow and passes the realness check. Arguments: same as onComplete. |
248
+ | onDenied (optional) | callback function that fires when the user completes the FaceValidation flow and fails the realness check. Arguments: same as onComplete. |
249
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
250
+ | onExitAfterFailure (optional) | callback function that fires when the user clicks the exit button after completing the FaceValidation flow and failing the realness check. |
251
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
252
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
253
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
254
+ | loadingOverlayMode (optional) | string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
255
+ | timeoutDurationMs (optional) | the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds). |
256
+ | skipSuccessScreen (optional) | boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
257
+ | companyId (optional) | company identifier to include with submission. |
258
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
259
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
260
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
261
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
262
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
263
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
264
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
265
+ | assets (optional) | object containing any asset overrides, for available options consult the Assets table below. |
266
+ | colors (optional) | object containing any color overrides, for available options consult the Colors table below. |
267
+ | theme (optional) | name of an included theme or object containing theme properties. |
268
+ | verbiage (optional) | object containing any verbiage overrides, for available options consult the Verbiage table below. |
269
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
270
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
271
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
264
272
 
265
273
  **Face Liveness Assets**
266
274
 
267
- <table>
268
- <tr><td><code>loadingOverlay.instructionImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Selfie-Image-1.png</td></tr>
269
- <tr><td><code>loadingOverlay.cameraAccessDenied.imageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/camera-disable-icon.png</td></tr>
270
- <tr><td><code>failure.imageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/manual_capture.png</td></tr>
271
- </table>
275
+ | loadingOverlay.instructionImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Selfie-Image-1.png |
276
+ | ------------------------------------------ | ---------------------------------------------------------------------------- |
277
+ | loadingOverlay.cameraAccessDenied.imageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/camera-disable-icon.png |
278
+ | failure.imageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/manual\_capture.png |
272
279
 
273
280
  **Face Liveness Colors**
274
281
 
275
- <table>
276
- <tr><td><code>loadingOverlay.continueBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
277
- <tr><td><code>loadingOverlay.continueBtn.textColor</code></td><td>Default: white</td></tr>
278
- <tr><td><code>loadingOverlay.continueBtn.loadingBackgroundColor</code></td><td>Default: gray</td></tr>
279
- <tr><td><code>loadingOverlay.continueBtn.loadingTextColor</code></td><td>Default: white</td></tr>
280
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
281
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtn.textColor</code></td><td>Default: white</td></tr>
282
- <tr><td><code>guidesUnsatisfiedColor</code></td><td>Default: white</td></tr>
283
- <tr><td><code>guidesSatisfiedColor</code></td><td>Default: green</td></tr>
284
- <tr><td><code>guidanceMessagesSatisfiedBackgroundColor</code></td><td>Default: green</td></tr>
285
- <tr><td><code>guidanceMessagesUnsatisfiedBackgroundColor</code></td><td>Default: red</td></tr>
286
- <tr><td><code>guidanceMessagesSatisfiedTextColor</code></td><td>Default: white</td></tr>
287
- <tr><td><code>guidanceMessagesUnsatisfiedTextColor</code></td><td>Default: white</td></tr>
288
- <tr><td><code>success.doneBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
289
- <tr><td><code>success.doneBtn.textColor</code></td><td>Default: white</td></tr>
290
- <tr><td><code>success.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
291
- <tr><td><code>success.retryBtn.textColor</code></td><td>Default: white</td></tr>
292
- <tr><td><code>failure.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
293
- <tr><td><code>failure.retryBtn.textColor</code></td><td>Default: white</td></tr>
294
- <tr><td><code>failure.exitBtn.backgroundColor</code></td><td>Default: #666</td></tr>
295
- <tr><td><code>failure.exitBtn.textColor</code></td><td>Default: white</td></tr>
296
- </table>
282
+ | loadingOverlay.continueBtn.backgroundColor | Default: #16a085 |
283
+ | ---------------------------------------------------------- | ---------------- |
284
+ | loadingOverlay.continueBtn.textColor | Default: white |
285
+ | loadingOverlay.continueBtn.loadingBackgroundColor | Default: gray |
286
+ | loadingOverlay.continueBtn.loadingTextColor | Default: white |
287
+ | loadingOverlay.cameraAccessDenied.retryBtn.backgroundColor | Default: #ea8557 |
288
+ | loadingOverlay.cameraAccessDenied.retryBtn.textColor | Default: white |
289
+ | guidesUnsatisfiedColor | Default: white |
290
+ | guidesSatisfiedColor | Default: green |
291
+ | guidanceMessagesSatisfiedBackgroundColor | Default: green |
292
+ | guidanceMessagesUnsatisfiedBackgroundColor | Default: red |
293
+ | guidanceMessagesSatisfiedTextColor | Default: white |
294
+ | guidanceMessagesUnsatisfiedTextColor | Default: white |
295
+ | success.doneBtn.backgroundColor | Default: #16a085 |
296
+ | success.doneBtn.textColor | Default: white |
297
+ | success.retryBtn.backgroundColor | Default: #ea8557 |
298
+ | success.retryBtn.textColor | Default: white |
299
+ | failure.retryBtn.backgroundColor | Default: #ea8557 |
300
+ | failure.retryBtn.textColor | Default: white |
301
+ | failure.exitBtn.backgroundColor | Default: #666 |
302
+ | failure.exitBtn.textColor | Default: white |
297
303
 
298
304
  **Face Liveness Verbiage**
299
305
 
300
- <table>
301
- <tr><td><code>loadingOverlay.headingText</code></td><td>Default: "Use your device camera to capture your face"</td></tr>
302
- <tr><td><code>loadingOverlay.removeEyeCoveringsText</code></td><td>Default: "Remove Sunglasses & Hat"</td></tr>
303
- <tr><td><code>loadingOverlay.avoidExcessiveBacklightingText</code></td><td>Default: "Avoid Excessive Backlighting"</td></tr>
304
- <tr><td><code>loadingOverlay.continueText</code></td><td>Default: "Continue"</td></tr>
305
- <tr><td><code>loadingOverlay.cameraInitializingText</code></td><td>Default: "Camera initializing..."</td></tr>
306
- <tr><td><code>loadingOverlay.modelsWarmingUpText</code></td><td>Default: "Models warming up..."</td></tr>
307
- <tr><td><code>loadingOverlay.cameraAccessDenied.headingText</code></td><td>Default: "Your camera permission is disabled"</td></tr>
308
- <tr><td><code>loadingOverlay.cameraAccessDenied.descriptionText</code></td><td>Default: "This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser."</td></tr>
309
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtnText</code></td><td>Default: "Retry"</td></tr>
310
- <tr><td><code>guidanceHoldStillText</code></td><td>Default: "Hold still for a few seconds..."</td></tr>
311
- <tr><td><code>guidanceLookStraightText</code></td><td>Default: "Look straight into the camera..."</td></tr>
312
- <tr><td><code>guidanceMoveBackText</code></td><td>Default: "Move back..."</td></tr>
313
- <tr><td><code>guidanceMoveForwardText</code></td><td>Default: "Move forward..."</td></tr>
314
- <tr><td><code>guidanceMoveToCenterText</code></td><td>Default: "Move to the center..."</td></tr>
315
- <tr><td><code>guidanceRemoveEyeCoveringsText</code></td><td>Default: "Please remove your eye coverings (sunglasses, eye patch, etc.)..."</td></tr>
316
- <tr><td><code>guidanceRemoveHeadCoveringsText</code></td><td>Default: "Please remove your head coverings (hat, scarf, etc.)..."</td></tr>
317
- <tr><td><code>guidanceRemoveMaskText</code></td><td>Default: "Please remove your mask..."</td></tr>
318
- <tr><td><code>progressPreviewText</code></td><td>Default: "Processing..."</td></tr>
319
- <tr><td><code>success.headingText</code></td><td>Default: "Face liveness has been verified!"</td></tr>
320
- <tr><td><code>success.retryBtnText</code></td><td>Default: "Retry"</td></tr>
321
- <tr><td><code>success.doneBtnText</code></td><td>Default: "Done"</td></tr>
322
- <tr><td><code>failure.headingText</code></td><td>Default: "Live face not detected, please try again"</td></tr>
323
- <tr><td><code>failure.retryBtnText</code></td><td>Default: "Retry"</td></tr>
324
- <tr><td><code>failure.exitBtnText</code></td><td>Default: "Exit"</td></tr>
325
- </table>
306
+ | loadingOverlay.headingText | Default: "Use your device camera to capture your face" |
307
+ | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
308
+ | loadingOverlay.removeEyeCoveringsText | Default: "Remove Sunglasses & Hat" |
309
+ | loadingOverlay.avoidExcessiveBacklightingText | Default: "Avoid Excessive Backlighting" |
310
+ | loadingOverlay.continueText | Default: "Continue" |
311
+ | loadingOverlay.cameraInitializingText | Default: "Camera initializing..." |
312
+ | loadingOverlay.modelsWarmingUpText | Default: "Models warming up..." |
313
+ | loadingOverlay.cameraAccessDenied.headingText | Default: "Your camera permission is disabled" |
314
+ | loadingOverlay.cameraAccessDenied.descriptionText | Default: "This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser." |
315
+ | loadingOverlay.cameraAccessDenied.retryBtnText | Default: "Retry" |
316
+ | guidanceHoldStillText | Default: "Hold still for a few seconds..." |
317
+ | guidanceLookStraightText | Default: "Look straight into the camera..." |
318
+ | guidanceMoveBackText | Default: "Move back..." |
319
+ | guidanceMoveForwardText | Default: "Move forward..." |
320
+ | guidanceMoveToCenterText | Default: "Move to the center..." |
321
+ | guidanceRemoveEyeCoveringsText | Default: "Please remove your eye coverings (sunglasses, eye patch, etc.)..." |
322
+ | guidanceRemoveHeadCoveringsText | Default: "Please remove your head coverings (hat, scarf, etc.)..." |
323
+ | guidanceRemoveMaskText | Default: "Please remove your mask..." |
324
+ | progressPreviewText | Default: "Processing..." |
325
+ | success.headingText | Default: "Face liveness has been verified!" |
326
+ | success.retryBtnText | Default: "Retry" |
327
+ | success.doneBtnText | Default: "Done" |
328
+ | failure.headingText | Default: "Live face not detected, please try again" |
329
+ | failure.retryBtnText | Default: "Retry" |
330
+ | failure.exitBtnText | Default: "Exit" |
326
331
 
327
332
  **Example**
328
333
 
@@ -336,6 +341,7 @@ IDmissionSDK.renderFaceValidation('#target-element', {
336
341
  alert('Your face realness could not be validated, you shall not pass!')
337
342
  },
338
343
  });
344
+
339
345
  ```
340
346
 
341
347
  ### IdAndFaceValidation
@@ -344,73 +350,72 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
344
350
 
345
351
  **Props**
346
352
 
347
- <table>
348
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
349
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
350
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
351
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
352
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
353
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
354
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
355
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
356
- <tr><td><code>onBeforeLivenessCheck</code> (optional)</td><td>callback function that fires immediately prior to liveness check, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The liveness check request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
357
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
358
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed both flows. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
359
- <tr><td><code>onApproved</code> (optional)</td><td>callback function that fires when the user completes both flows with a valid ID and passes the realness check. Arguments: same as onComplete.</td></tr>
360
- <tr><td><code>onDenied</code> (optional)</td><td>callback function that fires when the user completes both flows with an invalid ID or fails the realness check. Arguments: same as onComplete.</td></tr>
361
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
362
- <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after completing the IDValidation flow and failing the realness check.</td></tr>
363
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
364
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
365
- <tr><td><code>captureSignature</code> (optional)</td><td>boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false.</td></tr>
366
- <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
367
- <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured, for available options consult the Additional Document Properties table below.</td></tr>
368
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
369
- <tr><td><code>precapturedDocuments</code> (optional)</td><td>object to allow documents that have been previously captured to be submitted. Valid keys: idCardFront, idCardBack, passport.</td></tr>
370
- <tr><td><code>idCaptureLoadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
371
- <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
372
- <tr><td><code>idAutoCaptureEnabled</code> (optional)</td><td>boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is `true`.</td></tr>
373
- <tr><td><code>idCardAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8.</td></tr>
374
- <tr><td><code>passportAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75.</td></tr>
375
- <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3.</td></tr>
376
- <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3.</td></tr>
377
- <tr><td><code>faceLivenessLoadingOverlayMode</code> (optional)</td><td>string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
378
- <tr><td><code>faceLivenessTimeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
379
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
380
- <tr><td><code>idCaptureInstructions</code> (optional)</td><td>React element or string to render on the instructions screen.</td></tr>
381
- <tr><td><code>idCaptureGuideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
382
- <tr><td><code>idCapturePortraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
383
- <tr><td><code>idCaptureRotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
384
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
385
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
386
- <tr><td><code>manualReviewRequired</code> (optional)</td><td>boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false.</td></tr>
387
- <tr><td><code>idBackImageRequired</code> (optional)</td><td>boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Defaults to true.</td></tr>
388
- <tr><td><code>idImageResolutionCheck</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID (x) document image should be triggeredDefaults to false.</td></tr>
389
- <tr><td><code>verifyIdWithExternalDatabases</code> (optional)</td><td>boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false.</td></tr>
390
- <tr><td><code>bypassAgeValidation</code> (optional)</td><td>boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false.</td></tr>
391
- <tr><td><code>bypassNameMatching</code> (optional)</td><td>boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true.</td></tr>
392
- <tr><td><code>personalData</code> (optional)</td><td>object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country.</td></tr>
393
- <tr><td><code>cardData</code> (optional)</td><td>object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard.</td></tr>
394
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
395
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
396
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
397
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
398
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
399
- <tr><td><code>webhooksFireOnReview</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false.</td></tr>
400
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
401
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
402
- <tr><td><code>assets.idCapture</code> (optional)</td><td>object containing any asset overrides, for available options consult the ID Capture Assets table above.</td></tr>
403
- <tr><td><code>assets.faceLiveness</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
404
- <tr><td><code>colors.idCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the ID Capture Colors table above.</td></tr>
405
- <tr><td><code>colors.faceLiveness</code> (optional)</td><td>object containing any color overrides, for available options consult the Face Liveness Colors table above.</td></tr>
406
- <tr><td><code>verbiage.idCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the ID Capture Verbiage table above.</td></tr>
407
- <tr><td><code>verbiage.faceLiveness</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above.</td></tr>
408
- <tr><td><code>verbiage.additionalDocumentCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the additionalDocumentCapture fields in the ID Capture Verbiage table above.</td></tr>
409
- <tr><td><code>verbiage.signatureCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the signatureCapture fields in the ID Capture Verbiage table above.</td></tr>
410
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
411
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
412
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
413
- </table>
353
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
354
+ | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
355
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
356
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
357
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
358
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
359
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
360
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
361
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
362
+ | onBeforeLivenessCheck (optional) | callback function that fires immediately prior to liveness check, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The liveness check request is passed in as a parameter and a promise resolving to the updated request should be returned. |
363
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
364
+ | onComplete (optional) | callback function that fires when the user has completed both flows. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
365
+ | onApproved (optional) | callback function that fires when the user completes both flows with a valid ID and passes the realness check. Arguments: same as onComplete. |
366
+ | onDenied (optional) | callback function that fires when the user completes both flows with an invalid ID or fails the realness check. Arguments: same as onComplete. |
367
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
368
+ | onExitAfterFailure (optional) | callback function that fires when the user clicks the exit button after completing the IDValidation flow and failing the realness check. |
369
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
370
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
371
+ | captureSignature (optional) | boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false. |
372
+ | captureSignatureVideo (optional) | boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false. |
373
+ | captureAdditionalDocuments (optional) | array of additional documents to be captured, for available options consult the Additional Document Properties table below. |
374
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
375
+ | precapturedDocuments (optional) | object to allow documents that have been previously captured to be submitted. Valid keys: idCardFront, idCardBack, passport. |
376
+ | idCaptureLoadingOverlayMode (optional) | string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
377
+ | idCaptureRequirement (optional) | string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport. |
378
+ | idAutoCaptureEnabled (optional) | boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is true. |
379
+ | idCardAutoCaptureScoreThreshold (optional) | number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8. |
380
+ | passportAutoCaptureScoreThreshold (optional) | number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75. |
381
+ | idCardFocusScoreThreshold (optional) | number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3. |
382
+ | passportFocusScoreThreshold (optional) | number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3. |
383
+ | faceLivenessLoadingOverlayMode (optional) | string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
384
+ | faceLivenessTimeoutDurationMs (optional) | the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds). |
385
+ | skipSuccessScreen (optional) | boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
386
+ | idCaptureInstructions (optional) | React element or string to render on the instructions screen. |
387
+ | idCaptureGuideType (optional) | string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit. |
388
+ | idCapturePortraitGuidesOnMobile (optional) | boolean to indicate whether guide images should be rotated on mobile. Defaults to false. |
389
+ | idCaptureRotateLoadingOverlayImageWhenPortrait (optional) | boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true. |
390
+ | companyId (optional) | company identifier to include with submission. |
391
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
392
+ | manualReviewRequired (optional) | boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false. |
393
+ | idBackImageRequired (optional) | boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Defaults to true. |
394
+ | idImageResolutionCheck (optional) | boolean to indicate if validation of the minimum resolution for an ID (x) document image should be triggeredDefaults to false. |
395
+ | verifyIdWithExternalDatabases (optional) | boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false. |
396
+ | bypassAgeValidation (optional) | boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false. |
397
+ | bypassNameMatching (optional) | boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true. |
398
+ | personalData (optional) | object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country. |
399
+ | cardData (optional) | object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard. |
400
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
401
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
402
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
403
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
404
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
405
+ | webhooksFireOnReview (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false. |
406
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
407
+ | theme (optional) | name of an included theme or object containing theme properties. |
408
+ | assets.idCapture (optional) | object containing any asset overrides, for available options consult the ID Capture Assets table above. |
409
+ | assets.faceLiveness (optional) | object containing any asset overrides, for available options consult the Face Liveness Assets table above. |
410
+ | colors.idCapture (optional) | object containing any color overrides, for available options consult the ID Capture Colors table above. |
411
+ | colors.faceLiveness (optional) | object containing any color overrides, for available options consult the Face Liveness Colors table above. |
412
+ | verbiage.idCapture (optional) | object containing any verbiage overrides, for available options consult the ID Capture Verbiage table above. |
413
+ | verbiage.faceLiveness (optional) | object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above. |
414
+ | verbiage.additionalDocumentCapture (optional) | object containing any verbiage overrides, for available options consult the additionalDocumentCapture fields in the ID Capture Verbiage table above. |
415
+ | verbiage.signatureCapture (optional) | object containing any verbiage overrides, for available options consult the signatureCapture fields in the ID Capture Verbiage table above. |
416
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
417
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
418
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
414
419
 
415
420
  **Example**
416
421
 
@@ -424,6 +429,7 @@ IDmissionSDK.renderIdAndFaceValidation('#target-element', {
424
429
  alert('Your ID or face realness could not be validated, you shall not pass!')
425
430
  },
426
431
  });
432
+
427
433
  ```
428
434
 
429
435
  ### CustomerIdAndBiometricsEnrollment
@@ -432,76 +438,75 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
432
438
 
433
439
  **Props**
434
440
 
435
- <table>
436
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
437
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
438
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
439
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
440
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
441
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
442
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
443
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
444
- <tr><td><code>enrollmentId</code></td><td>the unique identifier to use for the customer to be enrolled. Overrides <code>personalData.uniqueNumber</code> if both are specified.</td></tr>
445
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
446
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdAndBiometricsEnrollment flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
447
- <tr><td><code>onEnrolled</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdAndBiometricsEnrollment flow successfully. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
448
- <tr><td><code>onDenied</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdAndBiometricsEnrollment flow but could not be enrolled. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
449
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
450
- <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after completing the IDValidation flow and failing the realness check.</td></tr>
451
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
452
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
453
- <tr><td><code>captureSignature</code> (optional)</td><td>boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false.</td></tr>
454
- <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
455
- <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured, for available options consult the Additional Document Properties table below.</td></tr>
456
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
457
- <tr><td><code>idCaptureLoadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
458
- <tr><td><code>idCaptureRequirement</code> (optional)</td><td>string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport.</td></tr>
459
- <tr><td><code>idAutoCaptureEnabled</code> (optional)</td><td>boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is `true`.</td></tr>
460
- <tr><td><code>idCardAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8.</td></tr>
461
- <tr><td><code>passportAutoCaptureScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75.</td></tr>
462
- <tr><td><code>idCardFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3.</td></tr>
463
- <tr><td><code>passportFocusScoreThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3.</td></tr>
464
- <tr><td><code>faceLivenessLoadingOverlayMode</code> (optional)</td><td>string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
465
- <tr><td><code>faceLivenessTimeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
466
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
467
- <tr><td><code>idCaptureInstructions</code> (optional)</td><td>React element or string to render on the instructions screen.</td></tr>
468
- <tr><td><code>idCaptureGuideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
469
- <tr><td><code>idCapturePortraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
470
- <tr><td><code>idCaptureRotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
471
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
472
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
473
- <tr><td><code>manualReviewRequired</code> (optional)</td><td>boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false.</td></tr>
474
- <tr><td><code>idBackImageRequired</code> (optional)</td><td>boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Default is true</td></tr>
475
- <tr><td><code>idImageResolutionCheck</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Default is false/td></tr>
476
- <tr><td><code>verifyIdWithExternalDatabases</code> (optional)</td><td>boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false.</td></tr>
477
- <tr><td><code>bypassAgeValidation</code> (optional)</td><td>boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false.</td></tr>
478
- <tr><td><code>bypassNameMatching</code> (optional)</td><td>boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true.</td></tr>
479
- <tr><td><code>personalData</code> (optional)</td><td>object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country.</td></tr>
480
- <tr><td><code>cardData</code> (optional)</td><td>object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard.</td></tr>
481
- <tr><td><code>deduplicationEnabled</code> (optional)</td><td>boolean flag indicating whether submissions from the same user should be de-duplicated.</td></tr>
482
- <tr><td><code>deduplicationSynchronous</code> (optional)</td><td>boolean flag indicating whether to wait for de-duplication to complete before allowing the user to proceed.</td></tr>
483
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
484
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
485
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
486
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
487
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
488
- <tr><td><code>webhooksFireOnReview</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false.</td></tr>
489
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
490
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
491
- <tr><td><code>assets.idCapture</code> (optional)</td><td>object containing any asset overrides, for available options consult the ID Capture Assets table above.</td></tr>
492
- <tr><td><code>assets.faceLiveness</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
493
- <tr><td><code>colors.idCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the ID Capture Colors table above.</td></tr>
494
- <tr><td><code>colors.faceLiveness</code> (optional)</td><td>object containing any color overrides, for available options consult the Face Liveness Colors table above.</td></tr>
495
- <tr><td><code>colors.videoSignatureCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the videoSignatureCapture fields in the ID Capture Colors table above.</td></tr>
496
- <tr><td><code>verbiage.idCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the ID Capture Verbiage table above.</td></tr>
497
- <tr><td><code>verbiage.faceLiveness</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above.</td></tr>
498
- <tr><td><code>verbiage.additionalDocumentCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the additionalDocumentCapture fields in the ID Capture Verbiage table above.</td></tr>
499
- <tr><td><code>verbiage.signatureCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the signatureCapture fields in the ID Capture Verbiage table above.</td></tr>
500
- <tr><td><code>verbiage.videoSignatureCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the videoSignatureCapture fields in the ID Capture Verbiage table above.</td></tr>
501
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
502
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
503
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
504
- </table>
441
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
442
+ | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
443
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
444
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
445
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
446
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
447
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
448
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
449
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
450
+ | enrollmentId | the unique identifier to use for the customer to be enrolled. Overrides personalData.uniqueNumber if both are specified. |
451
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
452
+ | onComplete (optional) | callback function that fires when the user has completed the CustomerIdAndBiometricsEnrollment flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
453
+ | onEnrolled (optional) | callback function that fires when the user has completed the CustomerIdAndBiometricsEnrollment flow successfully. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
454
+ | onDenied (optional) | callback function that fires when the user has completed the CustomerIdAndBiometricsEnrollment flow but could not be enrolled. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
455
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
456
+ | onExitAfterFailure (optional) | callback function that fires when the user clicks the exit button after completing the IDValidation flow and failing the realness check. |
457
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
458
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
459
+ | captureSignature (optional) | boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false. |
460
+ | captureSignatureVideo (optional) | boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false. |
461
+ | captureAdditionalDocuments (optional) | array of additional documents to be captured, for available options consult the Additional Document Properties table below. |
462
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
463
+ | idCaptureLoadingOverlayMode (optional) | string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
464
+ | idCaptureRequirement (optional) | string to indicate which types of documents should be captured. Valid values: idCard, passport, idCardOrPassport, idCardAndPassport. Default is idCardOrPassport. |
465
+ | idAutoCaptureEnabled (optional) | boolean to indicate whether photos should be captured automatically when guidance conditions are met. Default is true. |
466
+ | idCardAutoCaptureScoreThreshold (optional) | number between 0 and 1 at which document detection guidance score condition is considered to be met for ID cards. Defaults to 0.8. |
467
+ | passportAutoCaptureScoreThreshold (optional) | number between 0 and 1 at which document detection guidance score condition is considered to be met for passports. Defaults to 0.75. |
468
+ | idCardFocusScoreThreshold (optional) | number between 0 and 1 at which focus guidance score condition is considered to be met for ID cards. Defaults to 0.3. |
469
+ | passportFocusScoreThreshold (optional) | number between 0 and 1 at which focus guidance score condition is considered to be met for passports. Defaults to 0.3. |
470
+ | faceLivenessLoadingOverlayMode (optional) | string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
471
+ | faceLivenessTimeoutDurationMs (optional) | the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds). |
472
+ | skipSuccessScreen (optional) | boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
473
+ | idCaptureInstructions (optional) | React element or string to render on the instructions screen. |
474
+ | idCaptureGuideType (optional) | string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit. |
475
+ | idCapturePortraitGuidesOnMobile (optional) | boolean to indicate whether guide images should be rotated on mobile. Defaults to false. |
476
+ | idCaptureRotateLoadingOverlayImageWhenPortrait (optional) | boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true. |
477
+ | companyId (optional) | company identifier to include with submission. |
478
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
479
+ | manualReviewRequired (optional) | boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false. |
480
+ | idBackImageRequired (optional) | boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Default is true |
481
+ | idImageResolutionCheck (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Default is false |
482
+ | verifyIdWithExternalDatabases (optional) | boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false. |
483
+ | bypassAgeValidation (optional) | boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false. |
484
+ | bypassNameMatching (optional) | boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true. |
485
+ | personalData (optional) | object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country. |
486
+ | cardData (optional) | object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard. |
487
+ | deduplicationEnabled (optional) | boolean flag indicating whether submissions from the same user should be de-duplicated. |
488
+ | deduplicationSynchronous (optional) | boolean flag indicating whether to wait for de-duplication to complete before allowing the user to proceed. |
489
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
490
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
491
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
492
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
493
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
494
+ | webhooksFireOnReview (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false. |
495
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
496
+ | theme (optional) | name of an included theme or object containing theme properties. |
497
+ | assets.idCapture (optional) | object containing any asset overrides, for available options consult the ID Capture Assets table above. |
498
+ | assets.faceLiveness (optional) | object containing any asset overrides, for available options consult the Face Liveness Assets table above. |
499
+ | colors.idCapture (optional) | object containing any color overrides, for available options consult the ID Capture Colors table above. |
500
+ | colors.faceLiveness (optional) | object containing any color overrides, for available options consult the Face Liveness Colors table above. |
501
+ | colors.videoSignatureCapture (optional) | object containing any color overrides, for available options consult the videoSignatureCapture fields in the ID Capture Colors table above. |
502
+ | verbiage.idCapture (optional) | object containing any verbiage overrides, for available options consult the ID Capture Verbiage table above. |
503
+ | verbiage.faceLiveness (optional) | object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above. |
504
+ | verbiage.additionalDocumentCapture (optional) | object containing any verbiage overrides, for available options consult the additionalDocumentCapture fields in the ID Capture Verbiage table above. |
505
+ | verbiage.signatureCapture (optional) | object containing any verbiage overrides, for available options consult the signatureCapture fields in the ID Capture Verbiage table above. |
506
+ | verbiage.videoSignatureCapture (optional) | object containing any verbiage overrides, for available options consult the videoSignatureCapture fields in the ID Capture Verbiage table above. |
507
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
508
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
509
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
505
510
 
506
511
  **Example**
507
512
 
@@ -510,6 +515,7 @@ IDmissionSDK.renderCustomerIdAndBiometricsEnrollment('#target-element', {
510
515
  sessionId: 'my-idmission-session-id',
511
516
  enrollmentId: 'some-guy',
512
517
  });
518
+
513
519
  ```
514
520
 
515
521
  ### CustomerBiometricsEnrollment
@@ -518,53 +524,52 @@ Render a fullscreen capture component that performs FaceValidation, and then sto
518
524
 
519
525
  **Props**
520
526
 
521
- <table>
522
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
523
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
524
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
525
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
526
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
527
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
528
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
529
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
530
- <tr><td><code>enrollmentId</code></td><td>the unique identifier to use for the customer to be enrolled. Overrides <code>personalData.uniqueNumber</code> if both are specified.</td></tr>
531
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
532
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerBiometricsEnrollment flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
533
- <tr><td><code>onEnrolled</code> (optional)</td><td>callback function that fires when the user has completed the CustomerBiometricsEnrollment flow successfully. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
534
- <tr><td><code>onDenied</code> (optional)</td><td>callback function that fires when the user has completed the CustomerBiometricsEnrollment flow but could not be enrolled. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
535
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
536
- <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after completing the IDValidation flow and failing the realness check.</td></tr>
537
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
538
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
539
- <tr><td><code>captureSignature</code> (optional)</td><td>boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false.</td></tr>
540
- <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
541
- <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured, for available options consult the Additional Document Properties table below.</td></tr>
542
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
543
- <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
544
- <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
545
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
546
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
547
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
548
- <tr><td><code>deduplicationEnabled</code> (optional)</td><td>boolean flag indicating whether submissions from the same user should be de-duplicated.</td></tr>
549
- <tr><td><code>deduplicationSynchronous</code> (optional)</td><td>boolean flag indicating whether to wait for de-duplication to complete before allowing the user to proceed.</td></tr>
550
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
551
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
552
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
553
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
554
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
555
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
556
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
557
- <tr><td><code>assets.faceLiveness</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
558
- <tr><td><code>colors.faceLiveness</code> (optional)</td><td>object containing any color overrides, for available options consult the Face Liveness Colors table above.</td></tr>
559
- <tr><td><code>colors.videoSignatureCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the videoSignatureCapture fields in the ID Capture Colors table above.</td></tr>
560
- <tr><td><code>verbiage.faceLiveness</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above.</td></tr>
561
- <tr><td><code>verbiage.additionalDocumentCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the additionalDocumentCapture fields in the ID Capture Verbiage table above.</td></tr>
562
- <tr><td><code>verbiage.signatureCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the signatureCapture fields in the ID Capture Verbiage table above.</td></tr>
563
- <tr><td><code>verbiage.videoSignatureCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the videoSignatureCapture fields in the ID Capture Verbiage table above.</td></tr>
564
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
565
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
566
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
567
- </table>
527
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
528
+ | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
529
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
530
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
531
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
532
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
533
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
534
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
535
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
536
+ | enrollmentId | the unique identifier to use for the customer to be enrolled. Overrides personalData.uniqueNumber if both are specified. |
537
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
538
+ | onComplete (optional) | callback function that fires when the user has completed the CustomerBiometricsEnrollment flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
539
+ | onEnrolled (optional) | callback function that fires when the user has completed the CustomerBiometricsEnrollment flow successfully. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
540
+ | onDenied (optional) | callback function that fires when the user has completed the CustomerBiometricsEnrollment flow but could not be enrolled. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
541
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
542
+ | onExitAfterFailure (optional) | callback function that fires when the user clicks the exit button after completing the IDValidation flow and failing the realness check. |
543
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
544
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
545
+ | captureSignature (optional) | boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false. |
546
+ | captureSignatureVideo (optional) | boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false. |
547
+ | captureAdditionalDocuments (optional) | array of additional documents to be captured, for available options consult the Additional Document Properties table below. |
548
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
549
+ | loadingOverlayMode (optional) | string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
550
+ | timeoutDurationMs (optional) | the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds). |
551
+ | skipSuccessScreen (optional) | boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
552
+ | companyId (optional) | company identifier to include with submission. |
553
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
554
+ | deduplicationEnabled (optional) | boolean flag indicating whether submissions from the same user should be de-duplicated. |
555
+ | deduplicationSynchronous (optional) | boolean flag indicating whether to wait for de-duplication to complete before allowing the user to proceed. |
556
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
557
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
558
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
559
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
560
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
561
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
562
+ | theme (optional) | name of an included theme or object containing theme properties. |
563
+ | assets.faceLiveness (optional) | object containing any asset overrides, for available options consult the Face Liveness Assets table above. |
564
+ | colors.faceLiveness (optional) | object containing any color overrides, for available options consult the Face Liveness Colors table above. |
565
+ | colors.videoSignatureCapture (optional) | object containing any color overrides, for available options consult the videoSignatureCapture fields in the ID Capture Colors table above. |
566
+ | verbiage.faceLiveness (optional) | object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above. |
567
+ | verbiage.additionalDocumentCapture (optional) | object containing any verbiage overrides, for available options consult the additionalDocumentCapture fields in the ID Capture Verbiage table above. |
568
+ | verbiage.signatureCapture (optional) | object containing any verbiage overrides, for available options consult the signatureCapture fields in the ID Capture Verbiage table above. |
569
+ | verbiage.videoSignatureCapture (optional) | object containing any verbiage overrides, for available options consult the videoSignatureCapture fields in the ID Capture Verbiage table above. |
570
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
571
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
572
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
568
573
 
569
574
  **Example**
570
575
 
@@ -573,6 +578,7 @@ IDmissionSDK.renderCustomerBiometricsEnrollment('#target-element', {
573
578
  sessionId: 'my-idmission-session-id',
574
579
  enrollmentId: 'some-guy',
575
580
  });
581
+
576
582
  ```
577
583
 
578
584
  ### CustomerVerification
@@ -581,44 +587,43 @@ Render a fullscreen capture component that analyzes frames from the user's front
581
587
 
582
588
  **Props**
583
589
 
584
- <table>
585
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
586
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
587
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
588
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
589
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
590
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
591
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
592
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
593
- <tr><td><code>enrollmentId</code></td><td>the unique identifier to match from previously enrolled customers.</td></tr>
594
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
595
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerVerification flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
596
- <tr><td><code>onCustomerMatched</code> (optional)</td><td>callback function that fires when the user has completed the CustomerVerification flow and matches the specified customer <code>enrollmentId</code>. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
597
- <tr><td><code>onCustomerNotMatched</code> (optional)</td><td>callback function that fires when the user has completed the CustomerVerification flow but does not match the specified customer <code>enrollmentId</code>. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
598
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
599
- <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after failing the realness check.</td></tr>
600
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
601
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
602
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
603
- <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
604
- <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
605
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
606
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
607
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
608
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
609
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
610
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
611
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
612
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
613
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
614
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
615
- <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
616
- <tr><td><code>colors</code> (optional)</td><td>object containing any color overrides, for available options consult the Face Liveness Colors table above.</td></tr>
617
- <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above.</td></tr>
618
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
619
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
620
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
621
- </table>
590
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
591
+ | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
592
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
593
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
594
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
595
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
596
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
597
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
598
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
599
+ | enrollmentId | the unique identifier to match from previously enrolled customers. |
600
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
601
+ | onComplete (optional) | callback function that fires when the user has completed the CustomerVerification flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
602
+ | onCustomerMatched (optional) | callback function that fires when the user has completed the CustomerVerification flow and matches the specified customer enrollmentId. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
603
+ | onCustomerNotMatched (optional) | callback function that fires when the user has completed the CustomerVerification flow but does not match the specified customer enrollmentId. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
604
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
605
+ | onExitAfterFailure (optional) | callback function that fires when the user clicks the exit button after failing the realness check. |
606
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
607
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
608
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
609
+ | loadingOverlayMode (optional) | string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
610
+ | timeoutDurationMs (optional) | the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds). |
611
+ | skipSuccessScreen (optional) | boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
612
+ | companyId (optional) | company identifier to include with submission. |
613
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
614
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
615
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
616
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
617
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
618
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
619
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
620
+ | theme (optional) | name of an included theme or object containing theme properties. |
621
+ | assets (optional) | object containing any asset overrides, for available options consult the Face Liveness Assets table above. |
622
+ | colors (optional) | object containing any color overrides, for available options consult the Face Liveness Colors table above. |
623
+ | verbiage (optional) | object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above. |
624
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
625
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
626
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
622
627
 
623
628
  **Example**
624
629
 
@@ -627,6 +632,7 @@ IDmissionSDK.renderCustomerVerification('#target-element', {
627
632
  sessionId: 'my-idmission-session-id',
628
633
  enrollmentId: 'some-guy',
629
634
  });
635
+
630
636
  ```
631
637
 
632
638
  ### CustomerIdentification
@@ -635,107 +641,104 @@ Render a fullscreen capture component that analyzes frames from the user's front
635
641
 
636
642
  **Props**
637
643
 
638
- <table>
639
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
640
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
641
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
642
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
643
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
644
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
645
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
646
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
647
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
648
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdentification flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
649
- <tr><td><code>onCustomerMatched</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdentification flow and matches a pre-registered customer <code>enrollmentId</code> in IDmission's database. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
650
- <tr><td><code>onCustomerNotMatched</code> (optional)</td><td>callback function that fires when the user has completed the CustomerIdentification flow but does not match any registered customer. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check.</td></tr>
651
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
652
- <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after failing the realness check.</td></tr>
653
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
654
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
655
- <tr><td><code>loadingOverlayMode</code> (optional)</td><td>string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
656
- <tr><td><code>timeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds).</td></tr>
657
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
658
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
659
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
660
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
661
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
662
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
663
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
664
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
665
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
666
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
667
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
668
- <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
669
- <tr><td><code>colors</code> (optional)</td><td>object containing any asset overrides, for available options consult the Colors table below.</td></tr>
670
- <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
671
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
672
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
673
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
674
- </table>
644
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
645
+ | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
646
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
647
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
648
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
649
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
650
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
651
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
652
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
653
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
654
+ | onComplete (optional) | callback function that fires when the user has completed the CustomerIdentification flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
655
+ | onCustomerMatched (optional) | callback function that fires when the user has completed the CustomerIdentification flow and matches a pre-registered customer enrollmentId in IDmission's database. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
656
+ | onCustomerNotMatched (optional) | callback function that fires when the user has completed the CustomerIdentification flow but does not match any registered customer. The SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check. |
657
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
658
+ | onExitAfterFailure (optional) | callback function that fires when the user clicks the exit button after failing the realness check. |
659
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
660
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
661
+ | loadingOverlayMode (optional) | string indicating which loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
662
+ | timeoutDurationMs (optional) | the duration of time in milliseconds that the user may try to pass the realness check. Defaults to 15000 (15 seconds). |
663
+ | skipSuccessScreen (optional) | boolean to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
664
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
665
+ | companyId (optional) | company identifier to include with submission. |
666
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
667
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
668
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
669
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
670
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
671
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
672
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
673
+ | theme (optional) | name of an included theme or object containing theme properties. |
674
+ | assets (optional) | object containing any asset overrides, for available options consult the Assets table below. |
675
+ | colors (optional) | object containing any asset overrides, for available options consult the Colors table below. |
676
+ | verbiage (optional) | object containing any verbiage overrides, for available options consult the Verbiage table below. |
677
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
678
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
679
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
675
680
 
676
681
  **Customer Identification Assets**
677
682
 
678
- <table>
679
- <tr><td><code>loadingOverlay.instructionImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Selfie-Image-1.png</td></tr>
680
- <tr><td><code>loadingOverlay.cameraAccessDenied.imageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/camera-disable-icon.png</td></tr>
681
- <tr><td><code>failure.imageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/manual_capture.png</td></tr>
682
- </table>
683
+ | loadingOverlay.instructionImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Selfie-Image-1.png |
684
+ | ------------------------------------------ | ---------------------------------------------------------------------------- |
685
+ | loadingOverlay.cameraAccessDenied.imageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/camera-disable-icon.png |
686
+ | failure.imageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/manual\_capture.png |
683
687
 
684
688
  **Customer Identification Colors**
685
689
 
686
- <table>
687
- <tr><td><code>loadingOverlay.continueBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
688
- <tr><td><code>loadingOverlay.continueBtn.textColor</code></td><td>Default: white</td></tr>
689
- <tr><td><code>loadingOverlay.continueBtn.loadingBackgroundColor</code></td><td>Default: gray</td></tr>
690
- <tr><td><code>loadingOverlay.continueBtn.loadingTextColor</code></td><td>Default: white</td></tr>
691
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
692
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtn.textColor</code></td><td>Default: white</td></tr>
693
- <tr><td><code>guidesUnsatisfiedColor</code></td><td>Default: white</td></tr>
694
- <tr><td><code>guidesSatisfiedColor</code></td><td>Default: green</td></tr>
695
- <tr><td><code>guidanceMessagesSatisfiedBackgroundColor</code></td><td>Default: green</td></tr>
696
- <tr><td><code>guidanceMessagesUnsatisfiedBackgroundColor</code></td><td>Default: red</td></tr>
697
- <tr><td><code>guidanceMessagesSatisfiedTextColor</code></td><td>Default: white</td></tr>
698
- <tr><td><code>guidanceMessagesUnsatisfiedTextColor</code></td><td>Default: white</td></tr>
699
- <tr><td><code>success.doneBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
700
- <tr><td><code>success.doneBtn.textColor</code></td><td>Default: white</td></tr>
701
- <tr><td><code>success.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
702
- <tr><td><code>success.retryBtn.textColor</code></td><td>Default: white</td></tr>
703
- <tr><td><code>failure.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
704
- <tr><td><code>failure.retryBtn.textColor</code></td><td>Default: white</td></tr>
705
- <tr><td><code>failure.exitBtn.backgroundColor</code></td><td>Default: #666</td></tr>
706
- <tr><td><code>failure.exitBtn.textColor</code></td><td>Default: white</td></tr>
707
- </table>
690
+ | loadingOverlay.continueBtn.backgroundColor | Default: #16a085 |
691
+ | ---------------------------------------------------------- | ---------------- |
692
+ | loadingOverlay.continueBtn.textColor | Default: white |
693
+ | loadingOverlay.continueBtn.loadingBackgroundColor | Default: gray |
694
+ | loadingOverlay.continueBtn.loadingTextColor | Default: white |
695
+ | loadingOverlay.cameraAccessDenied.retryBtn.backgroundColor | Default: #ea8557 |
696
+ | loadingOverlay.cameraAccessDenied.retryBtn.textColor | Default: white |
697
+ | guidesUnsatisfiedColor | Default: white |
698
+ | guidesSatisfiedColor | Default: green |
699
+ | guidanceMessagesSatisfiedBackgroundColor | Default: green |
700
+ | guidanceMessagesUnsatisfiedBackgroundColor | Default: red |
701
+ | guidanceMessagesSatisfiedTextColor | Default: white |
702
+ | guidanceMessagesUnsatisfiedTextColor | Default: white |
703
+ | success.doneBtn.backgroundColor | Default: #16a085 |
704
+ | success.doneBtn.textColor | Default: white |
705
+ | success.retryBtn.backgroundColor | Default: #ea8557 |
706
+ | success.retryBtn.textColor | Default: white |
707
+ | failure.retryBtn.backgroundColor | Default: #ea8557 |
708
+ | failure.retryBtn.textColor | Default: white |
709
+ | failure.exitBtn.backgroundColor | Default: #666 |
710
+ | failure.exitBtn.textColor | Default: white |
708
711
 
709
712
  **Customer Identification Verbiage**
710
713
 
711
- <table>
712
- <tr><td><code>loadingOverlay.headingText</code></td><td>Default: "Use your device camera to capture your face"</td></tr>
713
- <tr><td><code>loadingOverlay.removeEyeCoveringsText</code></td><td>Default: "Remove Sunglasses & Hat"</td></tr>
714
- <tr><td><code>loadingOverlay.avoidExcessiveBacklightingText</code></td><td>Default: "Avoid Excessive Backlighting"</td></tr>
715
- <tr><td><code>loadingOverlay.continueText</code></td><td>Default: "Continue"</td></tr>
716
- <tr><td><code>loadingOverlay.cameraInitializingText</code></td><td>Default: "Camera initializing..."</td></tr>
717
- <tr><td><code>loadingOverlay.modelsWarmingUpText</code></td><td>Default: "Models warming up..."</td></tr>
718
- <tr><td><code>loadingOverlay.cameraAccessDenied.headingText</code></td><td>Default: "Your camera permission is disabled"</td></tr>
719
- <tr><td><code>loadingOverlay.cameraAccessDenied.descriptionText</code></td><td>Default: "This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser."</td></tr>
720
- <tr><td><code>loadingOverlay.cameraAccessDenied.retryBtnText</code></td><td>Default: "Retry"</td></tr>
721
- <tr><td><code>guidanceHoldStillText</code></td><td>Default: "Hold still for a few seconds..."</td></tr>
722
- <tr><td><code>guidanceLookStraightText</code></td><td>Default: "Look straight into the camera..."</td></tr>
723
- <tr><td><code>guidanceMoveBackText</code></td><td>Default: "Move back..."</td></tr>
724
- <tr><td><code>guidanceMoveForwardText</code></td><td>Default: "Move forward..."</td></tr>
725
- <tr><td><code>guidanceMoveToCenterText</code></td><td>Default: "Move to the center..."</td></tr>
726
- <tr><td><code>progressPreviewText</code></td><td>Default: "Processing..."</td></tr>
727
- <tr><td><code>success.headingText</code></td><td>Default: "Customer has been identified!"</td></tr>
728
- <tr><td><code>success.retryBtnText</code></td><td>Default: "Retry"</td></tr>
729
- <tr><td><code>success.doneBtnText</code></td><td>Default: "Done"</td></tr>
730
- <tr><td><code>failure.headingText</code></td><td>Default: "Customer not found"</td></tr>
731
- <tr><td><code>failure.retryBtnText</code></td><td>Default: "Retry"</td></tr>
732
- <tr><td><code>failure.exitBtnText</code></td><td>Default: "Exit"</td></tr>
733
- </table>
714
+ | loadingOverlay.headingText | Default: "Use your device camera to capture your face" |
715
+ | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
716
+ | loadingOverlay.removeEyeCoveringsText | Default: "Remove Sunglasses & Hat" |
717
+ | loadingOverlay.avoidExcessiveBacklightingText | Default: "Avoid Excessive Backlighting" |
718
+ | loadingOverlay.continueText | Default: "Continue" |
719
+ | loadingOverlay.cameraInitializingText | Default: "Camera initializing..." |
720
+ | loadingOverlay.modelsWarmingUpText | Default: "Models warming up..." |
721
+ | loadingOverlay.cameraAccessDenied.headingText | Default: "Your camera permission is disabled" |
722
+ | loadingOverlay.cameraAccessDenied.descriptionText | Default: "This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser." |
723
+ | loadingOverlay.cameraAccessDenied.retryBtnText | Default: "Retry" |
724
+ | guidanceHoldStillText | Default: "Hold still for a few seconds..." |
725
+ | guidanceLookStraightText | Default: "Look straight into the camera..." |
726
+ | guidanceMoveBackText | Default: "Move back..." |
727
+ | guidanceMoveForwardText | Default: "Move forward..." |
728
+ | guidanceMoveToCenterText | Default: "Move to the center..." |
729
+ | progressPreviewText | Default: "Processing..." |
730
+ | success.headingText | Default: "Customer has been identified!" |
731
+ | success.retryBtnText | Default: "Retry" |
732
+ | success.doneBtnText | Default: "Done" |
733
+ | failure.headingText | Default: "Customer not found" |
734
+ | failure.retryBtnText | Default: "Retry" |
735
+ | failure.exitBtnText | Default: "Exit" |
734
736
 
735
737
  **Example**
736
738
 
737
739
  ```js
738
740
  IDmissionSDK.renderCustomerIdentification('#target-element', { sessionId: 'my-idmission-session-id' });
741
+
739
742
  ```
740
743
 
741
744
  ### VideoIdValidation
@@ -744,114 +747,111 @@ Render a fullscreen capture component that performs IDValidation and FaceValidat
744
747
 
745
748
  **Props**
746
749
 
747
- <table>
748
- <tr><td><code>sessionId</code></td><td>a session id generated with your IDmission credentials, or an async function that resolves to one.</td></tr>
749
- <tr><td><code>authUrl</code> (optional)</td><td>URL to authenticate against. Default: https://portal-api.idmission.com</td></tr>
750
- <tr><td><code>submissionUrl</code> (optional)</td><td>URL to submit data to. Default: https://portal-api.idmission.com/swagger</td></tr>
751
- <tr><td><code>documentServiceUrl</code> (optional)</td><td>URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/</td></tr>
752
- <tr><td><code>onBeforeDocumentUpload</code> (optional)</td><td>callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded.</td></tr>
753
- <tr><td><code>onDocumentUploadProgress</code> (optional)</td><td>callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters.</td></tr>
754
- <tr><td><code>onDocumentUploaded</code> (optional)</td><td>callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters.</td></tr>
755
- <tr><td><code>onDocumentUploadFailed</code> (optional)</td><td>callback function that fires when a document failed to upload. The error and metadata are passed in as parameters.</td></tr>
756
- <tr><td><code>onBeforeSubmit</code> (optional)</td><td>callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned.</td></tr>
757
- <tr><td><code>onSubmit</code> (optional)</td><td>callback function that fires when the user has completed the flow instead of making a call to IDmission's servers, allowing customers to specify their own submission logic. Arguments: the request payload that would have been dispatched to IDmission's API, which contains the images/documents/video submitted by the user. Note that when this parameter is supplied, `onComplete` will never fire, and the customer will need to implement their own error handling/retry logic. Use at your own risk!</td></tr>
758
- <tr><td><code>onComplete</code> (optional)</td><td>callback function that fires when the user has completed the VideoIdValidation flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user.</td></tr>
759
- <tr><td><code>onExitCapture</code> (optional)</td><td>callback function that fires when the user clicks the X button during capture.</td></tr>
760
- <tr><td><code>onExitAfterFailure</code> (optional)</td><td>callback function that fires when the user clicks the exit button after failing the realness check.</td></tr>
761
- <tr><td><code>onUserCancel</code> (optional)</td><td>callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay.</td></tr>
762
- <tr><td><code>onCameraAccessDenied</code> (optional)</td><td>callback function that fires when camera access is denied or lost.</td></tr>
763
- <tr><td><code>onMicrophoneAccessDenied</code> (optional)</td><td>callback function that fires when microphone access is denied or lost.</td></tr>
764
- <tr><td><code>lang</code> (optional)</td><td>language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto.</td></tr>
765
- <tr><td><code>captureSignature</code> (optional)</td><td>boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false.</td></tr>
766
- <tr><td><code>captureSignatureVideo</code> (optional)</td><td>boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false.</td></tr>
767
- <tr><td><code>captureAdditionalDocuments</code> (optional)</td><td>array of additional documents to be captured, for available options consult the Additional Document Properties table below.</td></tr>
768
- <tr><td><code>companyId</code> (optional)</td><td>company identifier to include with submission.</td></tr>
769
- <tr><td><code>needImmediateResponse</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true.</td></tr>
770
- <tr><td><code>manualReviewRequired</code> (optional)</td><td>boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false.</td></tr>
771
- <tr><td><code>idBackImageRequired</code> (optional)</td><td>boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Defaults to true.</td></tr>
772
- <tr><td><code>idImageResolutionCheck</code> (optional)</td><td>boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Default is true.</td></tr>
773
- <tr><td><code>verifyIdWithExternalDatabases</code> (optional)</td><td>boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false.</td></tr>
774
- <tr><td><code>bypassAgeValidation</code> (optional)</td><td>boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false.</td></tr>
775
- <tr><td><code>bypassNameMatching</code> (optional)</td><td>boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true.</td></tr>
776
- <tr><td><code>personalData</code> (optional)</td><td>object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country.</td></tr>
777
- <tr><td><code>cardData</code> (optional)</td><td>object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard.</td></tr>
778
- <tr><td><code>webhooksEnabled</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false.</td></tr>
779
- <tr><td><code>webhooksClientTraceId</code> (optional)</td><td>a customer provided trace id to use when invoking customer-configured webhooks.</td></tr>
780
- <tr><td><code>webhooksStripSpecialCharacters</code> (optional)</td><td>boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true.</td></tr>
781
- <tr><td><code>webhooksSendInputImages</code> (optional)</td><td>boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
782
- <tr><td><code>webhooksSendProcessedImages</code> (optional)</td><td>boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false.</td></tr>
783
- <tr><td><code>webhooksFireOnReview</code> (optional)</td><td>boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false.</td></tr>
784
- <tr><td><code>idCaptureProps</code> (optional)</td><td>object containing any overrides for IDValidation.</td></tr>
785
- <tr><td><code>faceLivenessProps</code> (optional)</td><td>object containing any overrides for IDValidation.</td></tr>
786
- <tr><td><code>idCardFrontDetectionThreshold</code> (optional)</td><td>number between 0 and 1 at which document detection guidance score condition is considered to be met for the ID card front during video capture. Defaults to 0.48.</td></tr>
787
- <tr><td><code>idCardFrontFocusThreshold</code> (optional)</td><td>number between 0 and 1 at which focus guidance score condition is considered to be met for the ID card front during video capture. Defaults to 0.15.</td></tr>
788
- <tr><td><code>goodIdCardFrontFramesThreshold</code> (optional)</td><td>number of good frames of the ID card front that must be captured before moving on during video capture. Defaults to 3.</td></tr>
789
- <tr><td><code>showIdCardBackDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user is instructed to show the back of their ID card during video capture. Defaults to 5000ms.</td></tr>
790
- <tr><td><code>readTextPrompt</code> (optional)</td><td>an optional text prompt to display on screen for the user to read during video capture after the ID card has been shown. Leave blank to skip the read text screen.</td></tr>
791
- <tr><td><code>readTextTimeoutDurationMs</code> (optional)</td><td>the duration of time in milliseconds that the user is allowed to spend reading the <code>readTextPrompt</code>. Defaults to 15000 (15 seconds).</td></tr>
792
- <tr><td><code>readTextMinReadingMs</code> (optional)</td><td>the duration of time in milliseconds that the user is forced to spend reading the `readTextPrompt` before they can click the Done button. Defaults to 10000 (10 seconds).</td></tr>
793
- <tr><td><code>skipSuccessScreen</code> (optional)</td><td>boolean or async function to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false.</td></tr>
794
- <tr><td><code>skipIdCapture</code> (optional)</td><td>boolean to indicate whether to skip the initial ID capture flow. Note that when this flag is set, submission to IDmission's servers will not be attempted; it should be used in tandem with onSubmit. Defaults to false.</td></tr>
795
- <tr><td><code>skipShowIdCardBack</code> (optional)</td><td>boolean or async function to indicate whether to instruct the user to show the back of their ID card during video capture. If an async function is supplied returning a boolean, it will be evaluated at the time of ID front video capture completion. Defaults to false.</td></tr>
796
- <tr><td><code>idCaptureLoadingOverlayMode</code> (optional)</td><td>string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
797
- <tr><td><code>idCaptureGuideType</code> (optional)</td><td>string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit.</td></tr>
798
- <tr><td><code>idCapturePortraitGuidesOnMobile</code> (optional)</td><td>boolean to indicate whether guide images should be rotated on mobile. Defaults to false.</td></tr>
799
- <tr><td><code>idCaptureRotateLoadingOverlayImageWhenPortrait</code> (optional)</td><td>boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true.</td></tr>
800
- <tr><td><code>faceLivenessLoadingOverlayMode</code> (optional)</td><td>string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default.</td></tr>
801
- <tr><td><code>sendBase64DocumentsInSwaggerProxy</code> (optional)</td><td>boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false.</td></tr>
802
- <tr><td><code>mergeAVStreams</code> (optional)</td><td>boolean flag to indicate whether recorded audio should be merged onto the recorded video stream before submission. Defaults to false.</td></tr>
803
- <tr><td><code>theme</code> (optional)</td><td>name of an included theme or object containing theme properties.</td></tr>
804
- <tr><td><code>assets</code> (optional)</td><td>object containing any asset overrides, for available options consult the Assets table below.</td></tr>
805
- <tr><td><code>colors</code> (optional)</td><td>object containing any asset overrides, for available options consult the Colors table below.</td></tr>
806
- <tr><td><code>verbiage</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Verbiage table below.</td></tr>
807
- <tr><td><code>geolocationEnabled</code> (optional)</td><td>boolean flag to indicate whether users should be prompted to share their location. Defaults to true.</td></tr>
808
- <tr><td><code>geolocationRequired</code> (optional)</td><td>boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false.</td></tr>
809
- <tr><td><code>debugMode</code> (optional)</td><td>boolean flag to enable on-screen prediction information output. Defaults to false.</td></tr>
810
- </table>
750
+ | sessionId | a session id generated with your IDmission credentials, or an async function that resolves to one. |
751
+ | --------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
752
+ | authUrl (optional) | URL to authenticate against. Default: https://portal-api.idmission.com |
753
+ | submissionUrl (optional) | URL to submit data to. Default: https://portal-api.idmission.com/swagger |
754
+ | documentServiceUrl (optional) | URL to upload image/video/audio assets to via [tus](https://tus.io/). Default: https://portal-api.idmission.com/files/ |
755
+ | onBeforeDocumentUpload (optional) | callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. |
756
+ | onDocumentUploadProgress (optional) | callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. |
757
+ | onDocumentUploaded (optional) | callback function that fires immediately after each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document token. The document token and metadata are passed in as parameters. |
758
+ | onDocumentUploadFailed (optional) | callback function that fires when a document failed to upload. The error and metadata are passed in as parameters. |
759
+ | onBeforeSubmit (optional) | callback function that fires immediately prior to submission, giving the client application an opportunity to specify custom asynchronous logic that mutates the request before it executes. The submission request is passed in as a parameter and a promise resolving to the updated request should be returned. |
760
+ | onSubmit (optional) | callback function that fires when the user has completed the flow instead of making a call to IDmission's servers, allowing customers to specify their own submission logic. Arguments: the request payload that would have been dispatched to IDmission's API, which contains the images/documents/video submitted by the user. Note that when this parameter is supplied, onComplete will never fire, and the customer will need to implement their own error handling/retry logic. Use at your own risk! |
761
+ | onComplete (optional) | callback function that fires when the user has completed the VideoIdValidation flow. Arguments: the SubmissionResponse from IDmission's API is passed as an argument to the customer's application for further handling, which indicates whether the user passed the validation check, and the request payload dispatched to IDmission's API, which contains the images submitted by the user. |
762
+ | onExitCapture (optional) | callback function that fires when the user clicks the X button during capture. |
763
+ | onExitAfterFailure (optional) | callback function that fires when the user clicks the exit button after failing the realness check. |
764
+ | onUserCancel (optional) | callback function that fires when the user clicks the exit button from the loading overlay, declining to engage with IDmission. Binding this callback results in the cancel button being rendered on the loading overlay. |
765
+ | onCameraAccessDenied (optional) | callback function that fires when camera access is denied or lost. |
766
+ | onMicrophoneAccessDenied (optional) | callback function that fires when microphone access is denied or lost. |
767
+ | lang (optional) | language code to use. Supported values: 'auto' (detect based on user's OS), 'en' (English), 'es' (Spanish). Defaults to auto. |
768
+ | captureSignature (optional) | boolean indicating whether the user should be prompted to sign the screen before submission. Defaults to false. |
769
+ | captureSignatureVideo (optional) | boolean indicating whether the user should be prompted to record themselves signing the screen before submission. Defaults to false. |
770
+ | captureAdditionalDocuments (optional) | array of additional documents to be captured, for available options consult the Additional Document Properties table below. |
771
+ | companyId (optional) | company identifier to include with submission. |
772
+ | needImmediateResponse (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Defaults to true. |
773
+ | manualReviewRequired (optional) | boolean flag to indicate whether responses should always be reviewed by a human. Defaults to false. |
774
+ | idBackImageRequired (optional) | boolean flag to indicate whether the back of the ID card image will be considered in processing decisions. Defaults to true. |
775
+ | idImageResolutionCheck (optional) | boolean to indicate if validation of the minimum resolution for an ID document image should be triggered. Default is true. |
776
+ | verifyIdWithExternalDatabases (optional) | boolean flag to indicate whether ID data should be verified with government databases such as AAMVA, watch lists, etc. Defaults to false. |
777
+ | bypassAgeValidation (optional) | boolean to indicate whether end-users under the age of 18 should be allowed through validation. Defaults to false. |
778
+ | bypassNameMatching (optional) | boolean to indicate if matching the name in the request against the name extracted from the ID should be bypassed. Defaults to true. |
779
+ | personalData (optional) | object of personal data to store with the submitted ID. Valid keys: uniqueNumber, name, phone, phoneCountryCode, email, dob, gender, addressLine1, addressLine2, city, district, postalCode, country. |
780
+ | cardData (optional) | object of credit/debit card data to store with the submitted ID. Valid keys: cardToken, cardLast4, cardExpDate, nameOnCard. |
781
+ | webhooksEnabled (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked after submission. Defaults to false. |
782
+ | webhooksClientTraceId (optional) | a customer provided trace id to use when invoking customer-configured webhooks. |
783
+ | webhooksStripSpecialCharacters (optional) | boolean flag to indicate whether non-alphanumeric characters should be removed from the submission data when customer-configured webhooks are invoked. Defaults to true. |
784
+ | webhooksSendInputImages (optional) | boolean flag to indicate whether raw user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
785
+ | webhooksSendProcessedImages (optional) | boolean flag to indicate whether processed user-captured images should be included in the submission data when customer-configured webhooks are invoked. Defaults to false. |
786
+ | webhooksFireOnReview (optional) | boolean flag to indicate whether customer-configured webhooks should be invoked upon ID being marked for manual review. Defaults to false. |
787
+ | idCaptureProps (optional) | object containing any overrides for IDValidation. |
788
+ | faceLivenessProps (optional) | object containing any overrides for IDValidation. |
789
+ | idCardFrontDetectionThreshold (optional) | number between 0 and 1 at which document detection guidance score condition is considered to be met for the ID card front during video capture. Defaults to 0.48. |
790
+ | idCardFrontFocusThreshold (optional) | number between 0 and 1 at which focus guidance score condition is considered to be met for the ID card front during video capture. Defaults to 0.15. |
791
+ | goodIdCardFrontFramesThreshold (optional) | number of good frames of the ID card front that must be captured before moving on during video capture. Defaults to 3. |
792
+ | showIdCardBackDurationMs (optional) | the duration of time in milliseconds that the user is instructed to show the back of their ID card during video capture. Defaults to 5000ms. |
793
+ | readTextPrompt (optional) | an optional text prompt to display on screen for the user to read during video capture after the ID card has been shown. Leave blank to skip the read text screen. |
794
+ | readTextTimeoutDurationMs (optional) | the duration of time in milliseconds that the user is allowed to spend reading the readTextPrompt. Defaults to 15000 (15 seconds). |
795
+ | readTextMinReadingMs (optional) | the duration of time in milliseconds that the user is forced to spend reading the readTextPrompt before they can click the Done button. Defaults to 10000 (10 seconds). |
796
+ | skipSuccessScreen (optional) | boolean or async function to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to false. |
797
+ | skipIdCapture (optional) | boolean to indicate whether to skip the initial ID capture flow. Note that when this flag is set, submission to IDmission's servers will not be attempted; it should be used in tandem with onSubmit. Defaults to false. |
798
+ | skipShowIdCardBack (optional) | boolean or async function to indicate whether to instruct the user to show the back of their ID card during video capture. If an async function is supplied returning a boolean, it will be evaluated at the time of ID front video capture completion. Defaults to false. |
799
+ | idCaptureLoadingOverlayMode (optional) | string indicating which ID capture loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
800
+ | idCaptureGuideType (optional) | string to indicate what type of guides to use during capture. Using fit is highly recommended in order to capture the best quality image. Valid values: fit, overlay. Defaults to fit. |
801
+ | idCapturePortraitGuidesOnMobile (optional) | boolean to indicate whether guide images should be rotated on mobile. Defaults to false. |
802
+ | idCaptureRotateLoadingOverlayImageWhenPortrait (optional) | boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to true. |
803
+ | faceLivenessLoadingOverlayMode (optional) | string indicating which face liveness loading overlay screen should be used. Supported values: default and legacy. Defaults to default. |
804
+ | sendBase64DocumentsInSwaggerProxy (optional) | boolean flag to enable download and replace behavior for documents in the Swagger Proxy API. Defaults to false. |
805
+ | mergeAVStreams (optional) | boolean flag to indicate whether recorded audio should be merged onto the recorded video stream before submission. Defaults to false. |
806
+ | theme (optional) | name of an included theme or object containing theme properties. |
807
+ | assets (optional) | object containing any asset overrides, for available options consult the Assets table below. |
808
+ | colors (optional) | object containing any asset overrides, for available options consult the Colors table below. |
809
+ | verbiage (optional) | object containing any verbiage overrides, for available options consult the Verbiage table below. |
810
+ | geolocationEnabled (optional) | boolean flag to indicate whether users should be prompted to share their location. Defaults to true. |
811
+ | geolocationRequired (optional) | boolean flag to indicate whether users should be blocked from proceeding if they block location access. Defaults to false. |
812
+ | debugMode (optional) | boolean flag to enable on-screen prediction information output. Defaults to false. |
811
813
 
812
814
  **Video ID Validation Assets**
813
815
 
814
- <table>
815
- <tr><td><code>idCapture</code> (optional)</td><td>object containing any asset overrides, for available options consult the ID Capture Assets table above.</td></tr>
816
- <tr><td><code>faceLiveness</code> (optional)</td><td>object containing any asset overrides, for available options consult the Face Liveness Assets table above.</td></tr>
817
- <tr><td><code>videoIdCapture.guides.frontImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Front-SVG-Landscape-2.svg</td></tr>
818
- <tr><td><code>videoIdCapture.guides.backImageUrl</code></td><td>Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Back-SVG-Landscape-2.svg</td></tr>
819
- </table>
816
+ | idCapture (optional) | object containing any asset overrides, for available options consult the ID Capture Assets table above. |
817
+ | ----------------------------------- | ---------------------------------------------------------------------------------------------------------- |
818
+ | faceLiveness (optional) | object containing any asset overrides, for available options consult the Face Liveness Assets table above. |
819
+ | videoIdCapture.guides.frontImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Front-SVG-Landscape-2.svg |
820
+ | videoIdCapture.guides.backImageUrl | Default: https://websdk-cdn-dev.idmission.com/assets/Shieldout-IDCard-Back-SVG-Landscape-2.svg |
820
821
 
821
822
  **Video ID Validation Colors**
822
823
 
823
- <table>
824
- <tr><td><code>idCapture</code> (optional)</td><td>object containing any color overrides, for available options consult the ID Capture Colors table above.</td></tr>
825
- <tr><td><code>faceLiveness</code> (optional)</td><td>object containing any color overrides, for available options consult the Face Liveness Colors table above.</td></tr>
826
- <tr><td><code>idVideoCapture.guidesSatisfiedColor</code></td><td>Default: green</td></tr>
827
- <tr><td><code>idVideoCapture.guidesUnsatisfiedColor</code></td><td>Default: white</td></tr>
828
- <tr><td><code>idVideoCapture.readTextDoneBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
829
- <tr><td><code>idVideoCapture.readTextDoneBtn.textColor</code></td><td>Default: white</td></tr>
830
- <tr><td><code>success.doneBtn.backgroundColor</code></td><td>Default: #16a085</td></tr>
831
- <tr><td><code>success.doneBtn.textColor</code></td><td>Default: white</td></tr>
832
- <tr><td><code>success.retryBtn.backgroundColor</code></td><td>Default: #ea8557</td></tr>
833
- <tr><td><code>success.retryBtn.textColor</code></td><td>Default: white</td></tr>
834
- </table>
824
+ | idCapture (optional) | object containing any color overrides, for available options consult the ID Capture Colors table above. |
825
+ | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
826
+ | faceLiveness (optional) | object containing any color overrides, for available options consult the Face Liveness Colors table above. |
827
+ | idVideoCapture.guidesSatisfiedColor | Default: green |
828
+ | idVideoCapture.guidesUnsatisfiedColor | Default: white |
829
+ | idVideoCapture.readTextDoneBtn.backgroundColor | Default: #16a085 |
830
+ | idVideoCapture.readTextDoneBtn.textColor | Default: white |
831
+ | success.doneBtn.backgroundColor | Default: #16a085 |
832
+ | success.doneBtn.textColor | Default: white |
833
+ | success.retryBtn.backgroundColor | Default: #ea8557 |
834
+ | success.retryBtn.textColor | Default: white |
835
835
 
836
836
  **Video ID Validation Verbiage**
837
837
 
838
- <table>
839
- <tr><td><code>idCapture</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the ID Capture Verbiage table above.</td></tr>
840
- <tr><td><code>faceLiveness</code> (optional)</td><td>object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above.</td></tr>
841
- <tr><td><code>idVideoCapture.guides.idFrontInstructionText</code></td><td>Default: "Display the front of your ID card..."</td></tr>
842
- <tr><td><code>idVideoCapture.guides.idBackInstructionText</code></td><td>Default: "Display the back of your ID card..."</td></tr>
843
- <tr><td><code>idVideoCapture.guides.flipIdInstructionText</code></td><td>Default: "Please flip your ID card..."</td></tr>
844
- <tr><td><code>idVideoCapture.readTextHeading</code></td><td>Default: "Please read the following text aloud"</td></tr>
845
- <tr><td><code>idVideoCapture.readTextDoneBtnText</code></td><td>Default: "Done"</td></tr>
846
- <tr><td><code>success.headingText</code></td><td>Default: "Video ID has been successfully captured!"</td></tr>
847
- <tr><td><code>success.retryBtnText</code></td><td>Default: "Retry"</td></tr>
848
- <tr><td><code>success.doneBtnText</code></td><td>Default: "Done"</td></tr>
849
- </table>
838
+ | idCapture (optional) | object containing any verbiage overrides, for available options consult the ID Capture Verbiage table above. |
839
+ | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
840
+ | faceLiveness (optional) | object containing any verbiage overrides, for available options consult the Face Liveness Verbiage table above. |
841
+ | idVideoCapture.guides.idFrontInstructionText | Default: "Display the front of your ID card..." |
842
+ | idVideoCapture.guides.idBackInstructionText | Default: "Display the back of your ID card..." |
843
+ | idVideoCapture.guides.flipIdInstructionText | Default: "Please flip your ID card..." |
844
+ | idVideoCapture.readTextHeading | Default: "Please read the following text aloud" |
845
+ | idVideoCapture.readTextDoneBtnText | Default: "Done" |
846
+ | success.headingText | Default: "Video ID has been successfully captured!" |
847
+ | success.retryBtnText | Default: "Retry" |
848
+ | success.doneBtnText | Default: "Done" |
850
849
 
851
850
  **Example**
852
851
 
853
852
  ```js
854
853
  IDmissionSDK.renderVideoIdValidation('#target-element', { sessionId: 'my-idmission-session-id' });
854
+
855
855
  ```
856
856
 
857
857
  ## Other Functionality
@@ -868,26 +868,31 @@ You can also capture this information from the event fired at load time via `e.d
868
868
  console.log('web sdk version:', e.detail.webSdkVersion)
869
869
  })
870
870
  </script>
871
+
871
872
  ```
872
873
 
873
874
  ### Preloading the models
874
875
 
875
- If you would like to programmatically issue a command to begin downloading and preparing the models on the client's browser *before* they enter a customer flow, the following method is available:
876
+ If you would like to programmatically issue a command to begin downloading and preparing the models on the client's browser _before_ they enter a customer flow, the following method is available:
877
+
876
878
  ```html
877
879
  <script type="module">
878
880
  document.addEventListener('idmission-web-sdk.ready', (e) => {
879
881
  IDmissionSDK.preloadModels()
880
882
  })
881
883
  </script>
884
+
882
885
  ```
883
886
 
884
887
  You may specify which models should be loaded and which should be skipped by supplying an object argument, like so:
888
+
885
889
  ```js
886
890
  IDmissionSDK.preloadModels({
887
891
  documentDetectionModel: true,
888
892
  focusModel: true,
889
893
  faceDetectionModel: false,
890
894
  })
895
+
891
896
  ```
892
897
 
893
898
  This can be useful if, for example, you know you won't need any flows that depend on face detection.
@@ -903,6 +908,7 @@ onBeforeSubmit: () => new Promise((resolve) => {
903
908
  // do whatever you want in here, websdk will delay submission until you call:
904
909
  resolve()
905
910
  })
911
+
906
912
  ```
907
913
 
908
914
  Calling `resolve()` without an argument as shown above will result in no modification being made to the request that will be sent to IDmission's servers.
@@ -914,6 +920,7 @@ onBeforeSubmit: (req) => new Promise((resolve) => {
914
920
  req.myRandomExtraThing = '123'
915
921
  resolve(req)
916
922
  })
923
+
917
924
  ```
918
925
 
919
926
  Note that you will receive the request as a parameter to `onBeforeSubmit`, and must `resolve` with the altered version in order for your changes to be committed.
@@ -938,6 +945,7 @@ verbiage: {
938
945
  }
939
946
  }
940
947
  }
948
+
941
949
  ```
942
950
 
943
951
  Leaving a locale out of your translation object will result in the default text being shown for that locale, with the rest of your provided translations being honored. This functionality can be leveraged to define translations for languages that the IDmission Web SDK does not yet support. If you end up creating full translations for new languages, feel free to send your translations our way at https://www.idmission.com/company/contact-us/, and we will try to get them added to the main SDK translation set!
@@ -950,17 +958,10 @@ Many customer flow documented above include a `captureAdditionalDocuments` prope
950
958
 
951
959
  **Additional Document Properties**
952
960
 
953
- <table>
954
- <tr>
955
- <td><code>name</code></td><td>string indicating the name of document to be captured</td>
956
- </tr>
957
- <tr>
958
- <td><code>description</code> (optional)</td><td>string describing to the user anything extra about the document that they should know</td>
959
- </tr>
960
- <tr>
961
- <td><code>skip</code> (optional)</td><td>async function that may return a boolean indicating whether this document should be skipped</td>
962
- </tr>
963
- <tr>
964
- <td><code>processAsPOA</code> (optional)</td><td>boolean indicating whether the document should be treated as a proof of address -- when true, the document will be processed and validated on the server.</td>
965
- </tr>
966
- </table>
961
+ | name | string indicating the name of document to be captured |
962
+ | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
963
+ | description (optional) | string describing to the user anything extra about the document that they should know |
964
+ | skip (optional) | async function that may return a boolean indicating whether this document should be skipped |
965
+ | processAsPOA (optional) | boolean indicating whether the document should be treated as a proof of address -- when true, the document will be processed and validated on the server. |
966
+
967
+ # HELLO