Os SDKs do Malvo Connect são embrulhos finos sobre o mesmo widget hospedado em https://malvo.io. Cada SDK abre esse widget (em iframe modal, popup ou WebView, conforme a plataforma) e faz a ponte dos eventos do widget para os seus callbacks. O modelo é o mesmo em todas as plataformas, então o que você aprende em uma vale para as demais.

Modelo comum

1

Seu backend gera o connectToken

A cadeia é POST https://api.malvo.io/auth (com clientId + clientSecret) → apiKey (TTL de 2h) → POST https://api.malvo.io/connect_tokenaccessToken (o connectToken, TTL de 30 min). clientId, clientSecret e apiKey ficam apenas no servidor.
2

O SDK abre o widget hospedado

Você passa o connectToken ao SDK. Ele carrega o widget hospedado em https://malvo.io, onde o usuário escolhe a instituição, digita as credenciais ou autoriza via OAuth do Open Finance — sempre na infraestrutura da Malvo, nunca na sua aplicação.
3

Contrato comum entre os SDKs publicados

connectToken, includeSandbox, updateItem, os filtros e os callbacks onSuccess / onError / onOpen / onClose / onEvent têm os mesmos nomes e a mesma semântica em React, React Native, Flutter e na script tag. Opções específicas, como retorno por deep link no mobile, são documentadas em cada pacote.
Os webhooks são a fonte da verdade. Os callbacks do frontend (onSuccess etc.) são best-effort — o usuário pode fechar a aba antes do onSuccess disparar. Persista as conexões a partir dos webhooks item/created / item/updated no seu backend. Veja Webhooks.

Escolha o seu SDK

React / Next.js

Pacote @malvo/react-connect. O componente <MalvoConnect> monta o widget ao renderizar.

Web (script tag)

<script src="https://malvo.io/widget.js"> expõe o global MalvoConnect. Sem build.

Node (server)

Pacote @malvo/server. O MalvoClient cuida da auth e expõe um método por endpoint.

React Native

Pacote @malvo/react-native-connect para apps iOS e Android com React Native.

Expo

Uso do @malvo/react-native-connect em projetos Expo.

Flutter

Pacote flutter_malvo_connect para apps Flutter (iOS e Android).

Swift / iOS

Status: pacote nativo ainda não publicado; veja as alternativas suportadas.

Kotlin / Android

Status: artefato nativo ainda não publicado; veja as alternativas suportadas.

Pacotes e plataformas

Não existe um pacote npm único @malvo/connect que faça tudo. No servidor (Node), use @malvo/server (a classe MalvoClient) contra https://api.malvo.io. Os pacotes de frontend são @malvo/react-connect, @malvo/react-native-connect e flutter_malvo_connect; a Web usa a script tag https://malvo.io/widget.js.

Repositórios

O código-fonte dos SDKs e dos exemplos vive em github.com/malvo-io. Há um único host de API, https://api.malvo.io, e o widget é servido em https://malvo.io.

Próximos passos

Connect Widget

Todas as opções de inicialização e callbacks, em detalhe.

Quickstart

Do zero ao primeiro Item, usando o sandbox.

Webhooks

A fonte da verdade para o ciclo de vida dos Items.

Autenticação

clientId/clientSecretapiKeyconnectToken.