Saltar al contenido principal
La Verificación bancaria nunca deja a una persona sin salida. Mientras el paso la espera, siempre puede elegir Continue without your bank, y el paso se lo muestra en cuanto ningún método funciona para su país o su banco. La sesión sigue entonces el resultado que elegiste para ese caso, que por defecto es una revisión. Cuando un intento fallido agota el último intento de todas las vías que todavía se le ofrecen, incluida la subida de un extracto, el paso no espera: termina por sí solo y sigue bank_attempts_exhausted_action, que por defecto es un rechazo, salvo que un intento anterior ya haya llegado a un veredicto, como una discrepancia de nombre. En ese caso, ese veredicto se mantiene. Esta página explica las demás vías de verificación que ofrece cada país, cuándo ve la persona Continue without your bank, cómo se decide cada caso y cómo leerlo en el resultado.
La Verificación bancaria todavía no está habilitada en producción. Hasta que lo esté, no puedes añadir este paso a un flujo de verificación (workflow) ni llamar a esta API, ni en producción ni en sandbox, y esta página describe cómo funcionará.

Las vías de verificación

La persona empieza con el inicio de sesión en el banco o con la verificación de cuenta, en el orden que configures para su país: consulta Elegir los métodos por país. La subida de extracto y los microdepósitos son alternativas posteriores a esos dos. Continue without your bank va al final. Una vía que un país no puede usar nunca se ofrece a las personas de ese país. En la consola, Países y métodos la muestra como No disponible para ese país.

Un país al que no da servicio ninguna ruta bancaria

Un país en el que ni el inicio de sesión en el banco ni la verificación de cuenta tienen una ruta permanece en el paso. Sus usuarios suben un extracto, cuando el paso lo ofrece, o continúan sin banco. Al guardar, se conserva ese país si se omite methods o se establece en null. Su methods no puede incluir ningún método, porque ninguna ruta da servicio a ninguno allí: eso se rechaza al guardar, por ejemplo con Account check is not available in VNM. Una lista vacía también se rechaza, como en cualquier país habilitado, con Choose a method: bank sign-in, account check, or both. Si tu contrato fija sus propios precios y no incluye la subida de extracto, también se rechaza ese país al guardar una configuración que ofrece la subida sin un intento bancario previo.
Aquí Vietnam representa un país al que no da servicio ninguna ruta bancaria. No establece methods, así que se conserva al guardar, y sus usuarios ven la subida de extracto y Continue without your bank.

La subida de extracto

La subida de extracto pide un extracto bancario de los últimos 3 meses que muestre el nombre de la persona, su banco y el número de cuenta. Didit lo lee, comprueba si ha sido editado y verifica la coincidencia del nombre del titular igual que verifica el nombre del titular proporcionado por un banco. Con bank_statement_enabled activado, el paso la ofrece en dos casos:
  • Después de un intento cobrado: una vez que se ha cobrado un inicio de sesión en el banco o una verificación de cuenta en la misma sesión, la subida de extracto es una alternativa, incluida sin cargo adicional.
  • Sin un intento bancario previo: en cualquier país, incluido uno al que no da servicio ninguna ruta bancaria. Esto requiere bank_statement_standalone_enabled, que está activado por defecto. Desactívalo para ofrecer la subida de extracto solo después de un intento cobrado.
La subida de extracto y los microdepósitos consumen cada uno uno de los bank_max_attempts del paso, los mismos intentos que usa el inicio de sesión en el banco. Cuando la persona los ha agotado todos, ya no se ofrece ninguno de los dos, ni siquiera después de un intento cobrado. La verificación de cuenta tiene su propio bank_account_check_max_attempts, así que, donde es el único método, una persona que ha usado todas las verificaciones de cuenta todavía puede subir un extracto, cuando el paso lo ofrece. Cuando un intento fallido agota el último intento de todas las vías que todavía se le ofrecen a la persona, incluida la subida de un extracto, el paso termina por sí solo: no se le pide a la persona que continúe y el resultado no registra ninguna continuación. La sesión sigue bank_attempts_exhausted_action, salvo que un intento anterior ya haya llegado a un veredicto, como una discrepancia de nombre, que entonces se mantiene. Para dejar margen a una alternativa después de un inicio de sesión en el banco fallido, establece bank_max_attempts en 2 o más.

Cuándo ve la persona Continuar sin tu banco

bank_continue_without_bank define cuándo muestra el paso Continuar sin tu banco: Ningún valor desactiva la opción: la persona siempre puede continuar. En la consola, configúralo en el paso de Verificación bancaria, en Cuando la persona no puede verificar, como Mostrar Continuar sin banco: Cuando nada más funciona o Desde el principio.

Qué ve la persona

  • Ninguna vía en su país: por ejemplo, “Todavía no podemos conectar con bancos de Vietnam”, con la carga del extracto en Otras formas de verificar, y Continuar sin tu banco.
  • Un banco que no se puede usar aquí: “Este banco no se puede usar aquí”. La persona puede introducir los datos de su cuenta si el país ofrece la comprobación de cuenta, subir un extracto, elegir otro banco o continuar sin su banco.
  • Sin banca en línea, o un banco que no aparece en la lista: “Verifica tu cuenta de otra forma”, con las formas que ofrece su país, y Continuar sin tu banco.
  • Un banco con el que no se puede contactar en este momento: la persona puede volver a intentarlo. La pantalla también ofrece Continuar sin tu banco cuando el otro método, el inicio de sesión bancario o la comprobación de cuenta, no puede ayudar: su país no lo ofrece, no le quedan intentos o en el último intento tampoco se pudo contactar con el banco.
  • Después de continuar: “Gracias, puedes continuar”. A la persona nunca se le muestra un fallo, y pasa al siguiente paso de tu flujo.

Elige el resultado

Cuando la persona continúa sin banco, Didit determina el motivo a partir de lo que ocurrió en el paso. Nunca toma un motivo del dispositivo de la persona. Cada motivo, registrado como continuation.reason, sigue su propia configuración de resultado:
  • no_route: ninguna vía de inicio de sesión bancario ni de comprobación de cuenta da servicio a su país. Lo decide bank_unsupported_action, REVIEW de forma predeterminada, con el código de motivo NOT_COVERED.
  • institution_unsupported: el banco que eligió no se puede usar en este paso. Lo decide bank_unsupported_action, REVIEW de forma predeterminada, con el código de motivo NOT_COVERED.
  • attempts_exhausted: todos los intentos ya se habían agotado, y ninguno seguía en curso, cuando continuó. Lo decide bank_attempts_exhausted_action, DECLINE de forma predeterminada.
  • person_choice: había una forma de verificar disponible y la persona eligió continuar. Esto incluye un banco con el que no se podía contactar en ese momento: el banco es compatible, así que el motivo es la propia elección de la persona. Lo decide bank_skipped_action, REVIEW de forma predeterminada, con el código de motivo SKIPPED.
bank_skipped_action y bank_attempts_exhausted_action aceptan REVIEW o DECLINE. bank_unsupported_action también acepta NO_ACTION, que aprueba el paso y aun así registra NOT_COVERED. En la consola, son las filas Bank or country not covered, Continued without a bank and Attempts exhausted de la pestaña Outcomes del paso.
Continuar nunca sustituye un veredicto que ya se haya emitido para un intento. Si un intento ya se evaluó, por ejemplo, el banco o un extracto devolvió un titular que no coincide y a la persona le quedaban intentos, o una coincidencia cercana que no confirmó, el paso conserva ese veredicto y sus códigos de motivo. En ese caso no se aplica ninguna configuración de resultado de la lista anterior, y no se añade NOT_COVERED ni SKIPPED. El resultado sigue registrando que la persona continuó: consulta Consúltalo en el resultado.

Cómo leerlo en el resultado

Decisión y webhooks

El elemento del paso en bank_verifications[], tanto en la decisión de la sesión como en el objeto decision de los webhooks status.updated, indica que la persona continuó sin banco:
  • continued_without_bank es true: la persona salió del paso con Continue without your bank.
  • method es none cuando no se evaluó ningún intento antes de que la persona continuara. Tras un intento evaluado, por ejemplo uno en el que el titular no coincide, method sigue siendo el método de ese intento y su veredicto se mantiene.
  • continuation indica cómo continuó la persona:
    • reason: no_route, institution_unsupported, attempts_exhausted o person_choice.
    • country: el país en el que la persona estaba verificándose, en formato ISO 3166-1 alfa-3, o null si continuó antes de elegir uno.
    • offered: las otras formas de verificación disponibles para ese país, en el orden en que se ofrecían: statement y luego microdeposits. Vacío si no ofreció ninguna.
    • institution_id y institution_name: para institution_unsupported, el banco que la persona no pudo usar, es decir, el banco que eligió o el banco en el que terminó su último intento. Didit toma ambos valores de su propia lista de bancos, nunca del dispositivo de la persona, por lo que un banco que no está en esa lista deja ambos en null. Ambos son null para cualquier otro motivo.
    • continued_at: cuándo continuó la persona.
  • reason_codes contiene NOT_COVERED o SKIPPED, como se explica en Elige el resultado, cuando la continuación determinó el resultado del paso. Tras un intento evaluado, conserva los códigos de motivo de ese intento.
  • not_covered es true para no_route e institution_unsupported.
El ejemplo muestra solo los campos que trata esta página. Todos los campos están en el esquema BankVerificationResult de la referencia de la API. Cuando tu flujo limita los datos que devuelve, continued_without_bank y continuation.reason se siguen devolviendo, así que puedes seguir distinguiendo no_route de institution_unsupported, que comparten NOT_COVERED. En ese caso, todas las demás claves de continuation son null: el país, el banco, lo que se ofreció y cuándo. continuation en sí es null cuando la persona no continuó. Tampoco se devuelve method en ese caso, así que lee continued_without_bank, no method, para saber que la persona continuó.

Reglas del flujo

Las ramas y las reglas de estado personalizadas pueden leer:
  • bank.continued_without_bank: true o false.
  • bank.continue_reason: no_route, institution_unsupported, attempts_exhausted o person_choice.
  • bank.method: none cuando la persona continuó sin banco antes de que se evaluara ningún intento. Tras un intento evaluado, el método de ese intento.

Informe de la sesión

Cuando la persona continuó sin banco antes de que se evaluara ningún intento, la fila Método de verificación del informe PDF de la sesión indica Continuó sin banco. Tras un intento evaluado, indica el método de ese intento.

Precios

  • Continue without your bank nunca se factura. Los intentos que la persona hizo antes de continuar se facturan como de costumbre.
  • Una carga de extracto sin que se haya cobrado antes un intento bancario cuesta $0.20 por extracto que Didit lee y evalúa. Se factura en su propia línea de uso, Bank verification - statement upload (bank_statement_upload), y se le aplica tu tarifa contractual o precio especial como a cualquier complemento. Si tu contrato fija sus propios precios y no incluye la carga de extractos, el paso no la ofrece.
  • Una carga de extracto o los microdepósitos después de un inicio de sesión bancario o una comprobación de cuenta cobrados en la misma sesión están incluidos sin coste adicional.

Nodos guardados antes de Continue without your bank

bank_allow_skip se ha retirado. Un nodo guardado con él ahora se ejecuta con el valor que representaba: Un nodo que no permitía omitir el paso dejaba antes a la persona sin forma de avanzar cuando nada le funcionaba. Ahora muestra Continue without your bank en esos casos, y bank_unsupported_action, bank_attempts_exhausted_action o bank_skipped_action deciden la sesión. Durante una versión, una operación de guardado que envía bank_allow_skip pero no bank_continue_without_bank sigue definiendo el modo a partir de él. Cada guardado vuelve a escribir bank_allow_skip: true para from_start y false para when_needed. Usa bank_continue_without_bank en las integraciones nuevas.

Pruebas en sandbox

Una aplicación de sandbox no factura nada, y la carga de extracto y los microdepósitos no necesitan ningún intento bancario previo. Establece bank_continue_without_bank en from_start para ver Continue without your bank en la primera pantalla, y elígelo para probar bank_skipped_action. Consulta Pruebas en sandbox para saber cómo funcionan las aplicaciones de sandbox en general.

Relacionado

Última modificación el 1 de noviembre de 2026