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

# Verificação bancária: alternativas e Continuar sem banco

> A verificação bancária da Didit nunca bloqueia: opções alternativas por país, Continuar sem banco, o resultado que escolhe e como é reportado.

A Verificação bancária nunca deixa uma pessoa bloqueada. Enquanto o passo aguarda por ela, a pessoa pode sempre escolher **Continuar sem o seu banco**, e o passo apresenta esta opção assim que nenhum método funcionar para o seu país ou para o seu banco. A sessão segue então o resultado que escolheu para esse caso, uma revisão por predefinição. Quando uma tentativa falhada esgota a última tentativa de todas as formas que ainda lhe são disponibilizadas, incluindo o carregamento de extrato, o passo não espera: termina automaticamente e segue `bank_attempts_exhausted_action`, uma recusa por predefinição, a menos que uma tentativa anterior já tenha chegado a um veredito, como uma divergência de nome. Esse veredito mantém-se.

Esta página aborda as outras formas de verificação que cada país oferece, quando a pessoa vê **Continuar sem o seu banco**, como cada caso é decidido e como consultar isso no resultado.

## As formas de verificação

| Forma de verificação | `method` | Onde é disponibilizada |
| - | - | - |
| Início de sessão no banco | `open_banking` | Onde uma rota cobre o país. |
| Verificação de conta | `account_lookup` | Onde uma rota cobre o país. |
| Carregamento de extrato | `statement` | Qualquer país, quando o passo a ativa (`bank_statement_enabled`). |
| Microdepósitos | `microdeposits` | Apenas onde uma rota envia os depósitos, após a cobrança, na mesma sessão, de um início de sessão no banco ou de uma verificação de conta (`bank_microdeposits_enabled`). |
| Continuar sem o seu banco | `none` | Sempre. Não pode ser desativada. |

A pessoa começa pelo início de sessão no banco ou pela verificação de conta, na ordem que definir para o país dela: consulte [Escolher os métodos por país](https://docs.didit.me/pt/core-technology/bank-verification/verification-methods.md#escolher-os-métodos-por-país). O carregamento de extrato e os microdepósitos são alternativas após essas duas opções. **Continuar sem o seu banco** surge em último lugar.

Uma forma que um país não pode utilizar nunca é disponibilizada à pessoa nesse país. Na consola, **Países e métodos** apresenta-a como **Não disponível** para esse país.

### Um país que nenhuma rota bancária cobre

Um país onde nem o início de sessão no banco nem a verificação de conta têm uma rota permanece no passo. As pessoas desse país carregam um extrato, quando o passo disponibiliza essa opção, ou continuam sem banco.

Uma operação de gravação mantém esse país quando omite `methods` ou o define como `null`. O respetivo campo `methods` não pode listar um método, porque nenhuma rota cobre esse país: isso é recusado ao gravar, por exemplo `Account check is not available in VNM.` Uma lista vazia também é recusada, como em todos os países ativados, com `Choose a method: bank sign-in, account check, or both.` Se o seu contrato definir preços próprios e não incluir o carregamento de extrato, uma operação de gravação que disponibilize essa opção sem nenhuma tentativa bancária prévia também recusa esse país.

```json theme={null}
{
  "bank_statement_enabled": true,
  "bank_countries": {
    "GBR": { "enabled": true, "institutions": "all" },
    "VNM": { "enabled": true, "institutions": "all" }
  }
}
```

Aqui, o Vietname representa um país que nenhuma rota bancária cobre. Não define `methods`, pelo que a gravação o mantém, e as pessoas desse país veem o carregamento de extrato e **Continuar sem o seu banco**.

### O carregamento de extrato

O carregamento de extrato solicita um extrato bancário dos últimos 3 meses que apresente o nome da pessoa, o seu banco e o número da conta. A Didit lê o documento, verifica se existem edições e faz a correspondência do nome do titular da mesma forma que numa verificação bancária.

Com `bank_statement_enabled` ativado, o passo disponibiliza-o em dois casos:

* **Após uma tentativa cobrada:** assim que for cobrada, na mesma sessão, uma tentativa de início de sessão no banco ou de verificação de conta, o carregamento de extrato é uma alternativa, incluída sem custos adicionais.
* **Sem tentativa bancária prévia:** em qualquer país, incluindo um que nenhuma rota bancária cubra. Isto requer `bank_statement_standalone_enabled`, que está ativado por predefinição. Desative-o para disponibilizar o carregamento de extrato apenas após uma tentativa cobrada.

O carregamento de extrato e os microdepósitos gastam cada um uma das `bank_max_attempts` do passo, as mesmas tentativas utilizadas pelo início de sessão no banco. Assim que a pessoa as tiver esgotado todas, nenhuma das opções volta a ser disponibilizada, mesmo após uma tentativa cobrada. A verificação de conta tem o seu próprio `bank_account_check_max_attempts`, pelo que, onde for o único método, uma pessoa que tenha utilizado todas as verificações de conta ainda pode carregar um extrato, quando o passo o disponibilizar. Quando uma tentativa falhada esgota a última tentativa de todas as formas que ainda são disponibilizadas à pessoa, incluindo o carregamento de extrato, o passo termina automaticamente: não é pedido à pessoa para continuar e o resultado não regista qualquer continuação. A sessão segue `bank_attempts_exhausted_action`, a menos que uma tentativa anterior já tenha chegado a um veredito, como uma divergência de nome, que se mantém. Para deixar margem para uma alternativa após uma tentativa falhada de início de sessão no banco, defina `bank_max_attempts` para `2` ou mais.

## Quando a pessoa vê Continuar sem o seu banco

`bank_continue_without_bank` define quando o passo mostra **Continuar sem o seu banco**:

| Valor | O passo mostra-o |
| - | - |
| `when_needed` (a predefinição) | Assim que nenhum método funcionar para o país ou banco da pessoa, quando não for possível contactar o seu banco neste momento e nenhum outro método a puder verificar, ou quando indicar que não tem banca online ou que o seu banco não está listado. |
| `from_start` | Também no primeiro ecrã. |

Nenhum dos valores desativa a opção: a pessoa pode sempre continuar. Na consola, defina-a no passo de Verificação bancária sob **Quando a pessoa não consegue verificar**, como **Mostrar Continuar sem banco**: **Quando nada mais funcionar** ou **Desde o início**.

```json theme={null}
{
  "bank_continue_without_bank": "when_needed"
}
```

### O que a pessoa vê

* **Nenhuma rota no seu país:** por exemplo, "Ainda não conseguimos ligar a bancos no Vietname", com o carregamento do extrato sob **Outras formas de verificar** e **Continuar sem o seu banco**.
* **Um banco que não pode ser utilizado aqui:** "Este banco não pode ser utilizado aqui". A pessoa pode introduzir os dados da sua conta onde o país oferecer a verificação de conta, carregar um extrato, escolher um banco diferente ou continuar sem o seu banco.
* **Sem banca online ou um banco que não está listado:** "Verifique a sua conta de outra forma", com as opções que o seu país disponibiliza e **Continuar sem o seu banco**.
* **Um banco que não está acessível neste momento:** a pessoa pode tentar novamente. O ecrã também oferece **Continuar sem o seu banco** assim que o outro método, início de sessão bancário ou a verificação de conta, não puder ajudar: o seu país não o disponibiliza, já não tem tentativas restantes ou a sua última tentativa também não conseguiu contactar o banco.
* **Após continuar:** "Obrigado, pode continuar". A pessoa nunca vê uma falha e avança para o passo seguinte do seu fluxo.

## Escolher o resultado

Quando a pessoa continua sem um banco, a Didit determina o motivo a partir do que aconteceu no passo. Nunca obtém um motivo a partir do dispositivo da pessoa. Cada motivo, registado como `continuation.reason`, segue a sua própria configuração de resultado:

* `no_route`: não existe nenhuma rota de início de sessão bancário ou de verificação de conta disponível no seu país. Decidido por `bank_unsupported_action`, `REVIEW` por predefinição, com o código de motivo `NOT_COVERED`.
* `institution_unsupported`: o banco selecionado não pode ser utilizado neste passo. Decidido por `bank_unsupported_action`, `REVIEW` por predefinição, com o código de motivo `NOT_COVERED`.
* `attempts_exhausted`: todas as tentativas já tinham sido esgotadas e nenhuma estava ainda em curso quando continuou. Decidido por `bank_attempts_exhausted_action`, `DECLINE` por predefinição.
* `person_choice`: existia uma forma de verificar e a pessoa optou por continuar. Isto inclui um banco que não estava acessível neste momento: o banco está abrangido, pelo que a escolha da própria pessoa é o motivo. Decidido por `bank_skipped_action`, `REVIEW` por predefinição, com o código de motivo `SKIPPED`.

`bank_skipped_action` e `bank_attempts_exhausted_action` aceitam `REVIEW` ou `DECLINE`. `bank_unsupported_action` também aceita `NO_ACTION`, o que aprova o passo e continua a registar `NOT_COVERED`.

Na consola, estas são as linhas **Banco ou país sem cobertura**, **Continuou sem banco** e **Tentativas esgotadas** do separador **Resultados** do passo.

```json theme={null}
{
  "bank_continue_without_bank": "when_needed",
  "bank_unsupported_action": "REVIEW",
  "bank_skipped_action": "REVIEW",
  "bank_attempts_exhausted_action": "DECLINE"
}
```

> [!NOTE]
>
> Continuar nunca substitui um veredito já alcançado por uma tentativa. Se uma tentativa já tiver sido avaliada, por exemplo se o banco ou um extrato tiver devolvido um titular que não coincide e a pessoa ainda tinha tentativas restantes, ou uma correspondência aproximada que não confirmou, o passo mantém esse veredito e os respetivos códigos de motivo. Nenhuma configuração de resultado da lista acima se aplica nesse caso, e não é adicionado nenhum `NOT_COVERED` ou `SKIPPED`. O resultado continua a registar que a pessoa continuou: consulte [Leia-o no resultado](#ler-o-resultado).

## Ler o resultado

### Decisão e webhooks

O item do passo em `bank_verifications[]`, na [decisão da sessão](https://docs.didit.me/pt/sessions-api/retrieve-session.md#verificação-bancária) e no objeto `decision` dos [webhooks `status.updated`](https://docs.didit.me/pt/integration/webhooks#arrays-plurais-v3-importante), indica se a pessoa continuou sem banco:

* `continued_without_bank` é `true`: a pessoa saiu do passo com **Continuar sem o seu banco**.
* `method` é `none` quando nenhuma tentativa foi avaliada antes de a pessoa continuar. Após uma tentativa avaliada, como um titular que não corresponde, `method` mantém o método dessa tentativa e o respetivo veredito mantém-se.
* `continuation` indica como a pessoa continuou:
  * `reason`: `no_route`, `institution_unsupported`, `attempts_exhausted` ou `person_choice`.
  * `country`: o país em que a pessoa estava a fazer a verificação, ISO 3166-1 alfa-3, ou `null` quando continuou antes de escolher um.
  * `offered`: as outras formas de verificação oferecidas para esse país, pela ordem em que foram oferecidas: `statement`, seguido de `microdeposits`. Vazio quando nenhuma foi oferecida.
  * `institution_id` e `institution_name`: para `institution_unsupported`, o banco que a pessoa não conseguiu utilizar: o banco que escolheu ou o banco no qual a sua última tentativa terminou. A Didit obtém ambos a partir da sua própria lista de bancos, nunca a partir do dispositivo da pessoa, pelo que um banco que não conste dessa lista deixa ambos como `null`. Ambos são `null` para qualquer outro motivo.
  * `continued_at`: quando a pessoa continuou.
* `reason_codes` contém `NOT_COVERED` ou `SKIPPED`, como em [Escolher o resultado](#escolher-o-resultado), quando a continuação determinou o resultado do passo. Após uma tentativa avaliada, mantém os códigos de motivo dessa tentativa.
* `not_covered` é `true` para `no_route` e `institution_unsupported`.

```json theme={null}
{
  "bank_verifications": [
    {
      "node_id": "feature_bank_verification",
      "status": "In Review",
      "method": "none",
      "continued_without_bank": true,
      "continuation": {
        "reason": "institution_unsupported",
        "country": "ESP",
        "offered": ["statement"],
        "institution_id": "example_bank_es",
        "institution_name": "Example Bank",
        "continued_at": "2026-11-03T08:15:41.512870+00:00"
      },
      "not_covered": true,
      "ownership": null,
      "reason_codes": ["NOT_COVERED"]
    }
  ]
}
```

O exemplo mostra apenas os campos abordados nesta página. Todos os campos constam do esquema `BankVerificationResult` da [referência da API](https://docs.didit.me/pt/sessions-api/retrieve-session.md).

Quando o seu fluxo restringe os dados que devolve, `continued_without_bank` e `continuation.reason` continuam a ser devolvidos, para que possa continuar a distinguir `no_route` de `institution_unsupported`, que partilham `NOT_COVERED`. Todas as outras chaves de `continuation` passam então a ter o valor `null`: o país, o banco, o que foi oferecido e quando. A própria `continuation` é `null` quando a pessoa não continuou. O campo `method` também não é devolvido nesses casos, pelo que deve ler `continued_without_bank`, e não `method`, para saber se a pessoa continuou.

### Regras do fluxo

As ramificações e as regras de estado personalizadas podem ler:

* `bank.continued_without_bank`: `true` ou `false`.
* `bank.continue_reason`: `no_route`, `institution_unsupported`, `attempts_exhausted` ou `person_choice`.
* `bank.method`: `none` quando a pessoa continuou sem banco antes de qualquer tentativa ser avaliada. Após uma tentativa avaliada, o método dessa tentativa.

### Relatório da sessão

Quando a pessoa continuou sem banco antes de qualquer tentativa ser avaliada, a linha **Método de verificação** do relatório em PDF da sessão apresenta **Continuou sem banco**. Após uma tentativa avaliada, indica o método dessa tentativa.

## Preços

* **Continuar sem o seu banco** nunca é faturado. As tentativas que a pessoa fez antes de continuar são faturadas normalmente.
* **Um carregamento de extrato sem nenhuma tentativa bancária cobrada antes** tem o custo de \$0.20 por extrato que a Didit leia e avalie. É faturado na sua própria linha de utilização, **Bank verification - statement upload** (`bank_statement_upload`), e a taxa do seu contrato ou preço especial aplica-se-lhe como a qualquer add-on. Se o seu contrato definir os seus próprios preços e não o incluir, o passo não o disponibiliza.
* **Um carregamento de extrato ou microdepósitos após um início de sessão bancário ou verificação de conta cobrados** na mesma sessão estão incluídos sem custos adicionais.

## Nós guardados antes de Continuar sem o seu banco

O parâmetro `bank_allow_skip` foi descontinuado. Um nó guardado com este parâmetro é agora executado com o valor correspondente:

| `bank_allow_skip` | O nó é executado com |
| - | - |
| `true` | `bank_continue_without_bank: "from_start"` |
| `false` ou não definido | `bank_continue_without_bank: "when_needed"` |

Um nó que não permitia ignorar costumava deixar a pessoa sem alternativas quando nada funcionava. Agora mostra **Continuar sem o seu banco** nesses casos, e `bank_unsupported_action`, `bank_attempts_exhausted_action` ou `bank_skipped_action` decide a sessão.

Durante uma única versão, uma gravação que envie `bank_allow_skip` mas nenhum `bank_continue_without_bank` continua a definir o modo a partir dele. Cada gravação escreve `bank_allow_skip` de volta: `true` para `from_start`, `false` para `when_needed`. Utilize `bank_continue_without_bank` em novas integrações.

## Testar na sandbox

Uma aplicação na sandbox não fatura nada, e o carregamento de extrato e os microdepósitos não necessitam de qualquer tentativa bancária prévia. Defina `bank_continue_without_bank` como `from_start` para ver **Continuar sem o seu banco** no primeiro ecrã e selecione-o para testar `bank_skipped_action`. Consulte [Testes na sandbox](https://docs.didit.me/pt/integration/sandbox-testing.md) para saber como funcionam as aplicações na sandbox em geral.

## Relacionados

* [Métodos de verificação bancária](https://docs.didit.me/pt/core-technology/bank-verification/verification-methods.md): início de sessão bancário e verificação de conta, por país.
* [Verificação de conta](https://docs.didit.me/pt/core-technology/bank-verification/account-check.md): formatos de conta, resultados e valores de sandbox.
* [Chaves de configuração da verificação bancária](https://docs.didit.me/pt/management-api/workflows/feature-configs.md#verificação-bancária): todas as chaves do passo.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.