> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.vlenseg.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.vlenseg.com/_mcp/server.

# September 15, 2025

## Enhancements

### SMS provider selection

The `StepVerifyPhone` endpoint now accepts a `smsProviders` field so tenants can choose which SMS gateway to use for OTP delivery on a per-request basis:

| Value | Provider     |
| ----- | ------------ |
| `1`   | Infobip      |
| `2`   | Vodafone     |
| `3`   | Cequens      |
| `4`   | Victory Link |
| `5`   | BroadNet     |
| `6`   | Ezagel       |
| `7`   | Orange       |

Omit the field to use the tenant default.

### Extracted data flag

All three verification endpoints (`verify/id/front`, `verify/id/back`, `verify/liveness/multi`) now support `getExtractedData: boolean`. Set to `false` when you only need the verification status and don't need the full OCR output — reduces response payload size.

### LinkUserWithExistingTransaction

New endpoint `POST /api/DigitalIdentity/LinkUserWithExistingTransaction` allows associating an existing API-key-only OCR transaction to a logged-in user without repeating the capture flow. See the [Digital Identity guide](/digital-identity#alternative-link-an-existing-transaction) for details.

## Bug fixes

* Fixed `govern_english` returning Arabic characters for some governorates in `IdFrontStepApiOutput`
* Resolved a race condition where concurrent `verify/id/front` calls could generate duplicate transactions for the same user