# VerificationStatus

Status values emitted via the `idv_status_change_event` during the identity verification process. Use these to track progress and handle outcomes in your application.

## Members

| Member | Value | Description |
|  --- | --- | --- |
| `verificationDidCancel` | `"verificationDidCancel"` | User cancelled the verification |
| `verificationDidComplete` | `"verificationDidComplete"` | Verification completed successfully |
| `verificationDidFail` | `"verificationDidFail"` | Verification failed. Check `additionalData.error` for details |
| `verificationDidStartCapturing` | `"verificationDidStartCapturing"` | SDK started capturing documents |
| `verificationDidStartProcessing` | `"verificationDidStartProcessing"` | SDK started processing captured images |
| `verificationRequiresRecapture` | `"verificationRequiresRecapture"` | Recapture needed. Check `additionalData.error` for the reason |


## Usage

```javascript
import { NativeModules, NativeEventEmitter } from 'react-native';

const { TsIdv } = NativeModules;
const eventEmitter = new NativeEventEmitter(TsIdv);

eventEmitter.addListener('idv_status_change_event', (params) => {
    const status = params['status'];
    const additionalData = params['additionalData'];

    switch (status) {
        case 'verificationDidComplete':
            // Fetch results from your backend
            break;
        case 'verificationDidFail':
            console.error(`Verification failed: ${additionalData?.error}`);
            break;
        case 'verificationRequiresRecapture':
            console.warn(`Recapture needed: ${additionalData?.error}`);
            break;
    }
});
```

Note
Once `verificationDidComplete` is emitted, fetch the verification results from your backend as described in [Handle verification result](/guides/verify/quick_start_ios#step-10-handle-verification-result).