> ## Documentation Index
> Fetch the complete documentation index at: https://docs.suot.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Incluir condutor no MDF-e

> Adicione condutor a MDF-e autorizado com $mdfe->includeDriver() — evento 110114.

## O quê / quando

Troca ou inclusão de motorista em manifesto já autorizado (evento `110114`), sem cancelar e reemitir.

## Exemplo

```php theme={null}
use Suot\Fiscal\Core\Exception\InfrastructureException;
use Suot\Fiscal\Core\Result\RetryMode;
use Suot\Fiscal\Mdfe\Data\MdfeDriver;

try {
    $result = $mdfe->includeDriver()
        ->forOperation('ot-123-mdfe-driver')
        ->inHomologation()
        ->accessKey($chave44)
        ->emitterCnpj($cnpj)
        ->withDriver(new MdfeDriver(
            name: 'Joao da Silva',
            cpf: '12345678901',
        ))
        ->handle();
} catch (InfrastructureException $e) {
    $failure = $e->toFailure('include_driver');
    // Host: alertar; QueryBeforeRetry se timeout após envio
    throw $e;
}

if ($result->isDriverIncluded()) {
    // Host: persistir protocolNumber do evento; atualizar condutor na OT
}

if (! $result->isDriverIncluded()) {
    $failure = $result->failure();
    $policy = $result->retryPolicy();
    match ($policy?->mode) {
        RetryMode::AfterCorrection => /* corrigir CPF/nome e tentar de novo */,
        RetryMode::QueryBeforeRetry => /* byAccessKey() antes de reenviar */,
        RetryMode::AfterDelay, RetryMode::Immediate => /* filar conforme política */,
        RetryMode::Never, null => /* definitivo; não reenviar */,
    };
}
```

Resultado: `IncludeDriverMdfeResult` — `isDriverIncluded()`, `failure()`, `retryPolicy()`.

Ver [Emissão](/fiscal/mdfe/emissao).
