Um Item criado pela primeira vez coleta até 365 dias no Brasil ou o maior histórico devolvido pelo ASPSP no Open Banking internacional. Uma atualização traz apenas os dados posteriores à última coleta mais uma sobreposição, então é mais rápida e preserva a identidade dos recursos — atualizar é sempre preferível a recriar um Item. Quando a atualização não exige nenhuma entrada do usuário, ela roda no servidor via PATCH /items/{id}, sem widget. O modo de atualização do Connect Widget só é necessário quando o banco precisa de uma nova ação do usuário.

Quando o widget é necessário

Se nenhuma entrada do usuário for necessária, prefira PATCH /items/{id} (server-side) para disparar um novo sync sem abrir o widget.

Passos da atualização

1

Gere um update token com o itemId

Chame POST /connect_token incluindo "itemId": "<id-do-item-existente>" no corpo. Esse token vira um update token: ele só pode atualizar aquele Item.
2

Monte o widget com updateItem

Passe ao widget tanto o connectToken (o update token) quanto a prop updateItem com o mesmo itemId.
3

O widget pede só o que falta

Se nenhuma entrada for necessária, a atualização roda automaticamente. Caso contrário, o widget pede apenas o que está faltando: credenciais, MFA ou re-concessão do consentimento.
4

Reaja ao webhook

Ao concluir, o status do Item passa a UPDATED e dispara o webhook item/updated. É nesse momento que você re-busca os produtos no servidor — não no onSuccess. Veja Webhooks.

Tabela de decisão: criar vs. atualizar

O update token só serve para o itemId com que foi gerado. Se você montar o widget com um updateItem diferente do itemId do token, o widget falha com UNAUTHORIZED — gere o token correto e reabra.

Atualização é incremental

A primeira coleta usa a janela inicial do provedor. Cada atualização posterior traz apenas o que mudou desde a última coleta, com sobreposição de aproximadamente três dias no Brasil e 90 dias no fluxo internacional. Para ASPSPs compatíveis, uma reconciliação de histórico completo é tentada a cada 30 dias. Quando o banco rejeita a janela máxima, a Malvo registra HISTORY_LIMITED, usa a maior janela compatível e não repete periodicamente uma estratégia sabidamente incompatível. Por isso, mantenha os Items vivos e atualize-os em vez de recriá-los — isso preserva IDs, histórico e reduz custo e tempo de sync.

OAuth do Open Finance

Atualizações de consentimento OUTDATED reabrem o redirect OAuth do banco. Veja como configurar o oauthRedirectUri.