Acme Bank Token & captcha solo regresa Bank requires attention

Al probar con esta cuenta demo la integración, siempre regresa “Bank requires attention” (code: 500)

  • El proceso normal de crear credenciales usando (usuario:test, password: test) funciona correctamente

  • Eventualmente recibo por webhook credential_create, por lo que al buscar su job status, me regresa 410.

  • El objecto de TwoFA que me indica que debo regresar por twoFA es el siguiente, en el que solo se muestra una entrada en el array con propiedad “customtoken”:
    22%20AM

  • Se envía a twoFA el objeto de {twofa: {customtoken: "test"}} según lo visto en el captcha abajo:
    17%20AM

  • El job status para esta credencial me regresa lo siguiente (status: 200):
    27%20PM

  • Al cabo de unos segundos, si vuelvo a correr el mismo request, me regresa 500:
    16%20PM

No estoy seguro si esto es esperado para este endpoint, como una forma de mostrar este resultado particular, por lo que necesito aclararlo.

Adicionalmente, en caso productivo, que es lo que debe hacer el usuario en este caso?

Adicionalmente, quisiera saber si siempre que ocurre un status 410 o 411 debo esperar recibir esta notificación por WebHooks.

Ya que al usar Acme Bank - Connection Code Test, si le pido que arroje un 411, este solo manda un webHook de “credential_create”, pero nunca me manda “credential_update”, su status si busco el job directamente si me muestra el 411:

50%20PM

SIN EMBARGO, el status de la credencial, si la busco es 101, siempre. Esperaría que mostrara el 411 igual que su job status asignado.

Hola Gabriel, una vez que recibes un código final:
200s, 500s, 400s (excepto 410) no hay razón para la que sigas recibiendo más estados.
En éste caso se trata de un problema con la conexión de prueba, lo vamos a revisar.

El sitio Connection Code Test, te ayuda a establecer códigos finales para que puedas manejarlos según tu lógica de negocio. Es por eso que no puedes establecer código como 102 ó 410. Si quieres manejar la lógica de token o captcha lo deberás hacer con el sitio correspondiente en la Organización de ACME.

Respecto a tu pregunta:

Adicionalmente, quisiera saber si siempre que ocurre un status 410 o 411 debo esperar recibir esta notificación por WebHooks

Sí, deberías recibir una notificación de “credential_update” para ambas.

La lógica con “token & captcha” la realizo con ese sitio directamente, y como comentas, una vez recibido status 200, cambia a 500 posteriormente.

En el caso de Connection Code test, no estoy recibiendo por webhook el cambio de credenciales causado por el status 411. El cual si aparece en ACME - Token o ACME - Token & Captcha

No estoy recibiendo los WebHooks con credential_update al cambiar el status de una credencial a 410, el ejemplo abajo muestra los console logs de ACME - Token:

  1. Pido agregar la credencial y mando usuario y contraseña, recibiendo esto en el WebHook:

     WEBHOOK BODY:  {
       event: 'credential_create',
       id_job: '5d432bf7228fe716c5064565',
       id_job_uuid: '5d432bf7228fe716c5064564',
       id_credential: '5d432bf7228fe718247bb168',
       id_user: '5d3be6cc228fe756e046bd1c',
       id_external: '5910a6c2-f4ad-42cc-9eb5-3b91514af764',
       id_site: '56cf5728784806f72b8b4569',
       id_site_organization: '56cf4ff5784806152c8b4567',
       id_site_organization_type: '56cf4f5b784806cf028b4568',
       is_executing: 1,
       endpoints: { credential: [ '/v1/credentials/5d432bf7228fe718247bb168' ] }
     }
    
  2. Al recibir esto en el FE, solicito el sync status usando el id_job, en este caso regresa el status: 400, lo que me regresa:

     0: {code: 100, name: "Register", description: "API register a new job (via a REST request)", end: false},
     1: {code: 101, name: "Starting", description: "Provider got job information to start working", end: false} ,
     2: {code: 410, address: "https://sync.paybook.com/v1/jobs/5d432bf7228fe716c5064565/twofa",    twofa: Array(1), name: "Waiting 2FA", description: "Waiting for two-fa", …}
     length: 3
    

    Si en este momento hago fetch a las credenciales de ACME - TOKEN, esta aparece con un code:101, no un 410 como lo indica su job status.

  3. Todavía no he recibido ningun WebHook event, y si no mandara el Token, si lo recibiría una vez regresara 411, pero no para 410.

  4. En este caso, si mando el TwoFA token, posteriormente recibo un evento de “refresh” y los dos eventos de “credential_update”:

    relativeUrl:  https://sync.paybook.com/v1/jobs/5d432bf7228fe716c5064565/twofa
    urlEnpoint:  https://sync.paybook.com/v1/jobs/5d432bf7228fe716c5064565/twofa
    WEBHOOK BODY:  {
      event: 'refresh',
      id_job: '5d432bf7228fe716c5064565',
      id_job_uuid: '5d432bf7228fe716c5064564',
      id_credential: '5d432bf7228fe718247bb168',
      id_user: '5d3be6cc228fe756e046bd1c',
      id_external: '5910a6c2-f4ad-42cc-9eb5-3b91514af764',
      id_site: '56cf5728784806f72b8b4569',
      id_site_organization: '56cf4ff5784806152c8b4567',
      id_site_organization_type: '56cf4f5b784806cf028b4568',
      endpoints: {
        credential: [ '/v1/credentials/5d432bf7228fe718247bb168' ],
        accounts: [
          '/v1/accounts?id_credential=5d432bf7228fe718247bb168&limit=5000&skip=0&wbhk=1'
        ],
        transactions: [
          '/v1/transactions?id_credential=5d432bf7228fe718247bb168&limit=5000&skip=0&wbhk=1'
        ]
      }
    }
    WEBHOOK BODY:  {
      event: 'credential_update',
      id_job: '5d432bf7228fe716c5064565',
      id_job_uuid: '5d432bf7228fe716c5064564',
      id_credential: '5cc090e2228fe73edf1c7599',
      id_user: '5c3ce9088c91e701334a0df4',
      id_external: '39f8aa74-0a73-41da-ae4e-4bf5145d4ce1',
      id_site: '56cf5728784806f72b8b4569',
      id_site_organization: '56cf4ff5784806152c8b4567',
      id_site_organization_type: '56cf4f5b784806cf028b4568',
      is_executing: 0,
      endpoints: { credential: [ '/v1/credentials/5cc090e2228fe73edf1c7599' ] }
    }
    WEBHOOK BODY:  {
      event: 'credential_update',
      id_job: '5d432bf7228fe716c5064565',
      id_job_uuid: '5d432bf7228fe716c5064564',
      id_credential: '5d432bf7228fe718247bb168',
      id_user: '5d3be6cc228fe756e046bd1c',
      id_external: '5910a6c2-f4ad-42cc-9eb5-3b91514af764',
      id_site: '56cf5728784806f72b8b4569',
      id_site_organization: '56cf4ff5784806152c8b4567',
      id_site_organization_type: '56cf4f5b784806cf028b4568',
      is_executing: 0,
      endpoints: { credential: [ '/v1/credentials/5d432bf7228fe718247bb168' ] }
    }
    

Me llama la atención recibir “refresh” antes de “credential_update”, adicionalmente esperaría recibir “credential_update” al cambiar el status de 101 a 410 para ACME - Token al momento de enviar las credenciales.
Esto no sucede, por lo que he tenido suerte de que hay un cambio en el status antes de enviar la solicitud de https://sync.paybook.com/v1/jobs/${job}/status?token=${token}, de lo contrario tendría que ejecutar un interval, lo cual no estaría seguro si se comportara igual en producción.

Si necesito ayuda aclarando esto.

Por favor, revisa la entrada:

1 me gusta