> ## 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.

# SDKs de verificação de identidade para web: JS e iframe

> SDKs web Didit de KYC, KYB e AML em JavaScript, iframe ou redirecionamento. Desde $0.33 por KYC completo, $10 grátis/mês, sem contratos.

> [!NOTE]
>
> Estas guias cobrem a verificação de identidade. Para o início de sessão dos utilizadores finais, use as [guias da plataforma de Autenticação](https://docs.didit.me/pt/authentication/overview.md); os novos pacotes de Autenticação dependem da versão lançada.

Integre a verificação Didit na sua aplicação web. Oferecemos sete métodos de integração para se adaptarem à sua arquitetura e aos seus requisitos de experiência do utilizador. Escolha o que corresponde à sua stack.

> [!NOTE]
>
> **Escolha o seu método de integração**: desde iframes sem código, de configuração rápida, até ao controlo programático total com o nosso SDK JavaScript, ou plugins prontos a usar para WordPress, Shopify e Salesforce.

***

## Métodos de integração

| Método | Tempo de configuração | Backend? | Ideal para |
| - | - | - | - |
| [JavaScript SDK](https://docs.didit.me/pt/integration/web-sdks/javascript-sdk.md) | 3 minutos | Opcional | Controlo total — React/Vue/Angular/Next.js/Nuxt/Svelte/JS puro |
| [InContext (Iframe)](https://docs.didit.me/pt/integration/web-sdks/incontext-iframe.md) | \< 1 minuto | Opcional | Experiência incorporada sem redirecionamento |
| [Redirect](https://docs.didit.me/pt/integration/web-sdks/web-redirect.md) | 5 minutos | Sim | Máxima compatibilidade, fluxos entre dispositivos |
| [WebView (iOS/Android)](https://docs.didit.me/pt/integration/web-sdks/webview-in-ios-android.md) | 15 minutos | Sim | Alternativa para dispositivos móveis quando não existe SDK nativo |
| [WordPress + WooCommerce](https://docs.didit.me/pt/integration/web-sdks/wordpress-woocommerce.md) | 5 minutos | Sem código | Sites WordPress, lojas WooCommerce |
| [Shopify](https://docs.didit.me/pt/integration/web-sdks/shopify.md) | 5 minutos | Sem código | Lojas Shopify — verificação no checkout ou na conta |
| [Salesforce](https://docs.didit.me/pt/integration/web-sdks/salesforce.md) | 10 minutos | Sem código | CRM Salesforce — verificação de registos de Contacto/Lead |

> [!NOTE]
>
> **Recomendação**: para aplicações web em produção, use o **JavaScript SDK** para a melhor experiência do utilizador e controlo programático total. Use o **iframe InContext** para a configuração mais rápida, o **Redirect** quando for necessária verificação entre dispositivos, e as integrações dedicadas para **WordPress / Shopify / Salesforce** se trabalhar nessas plataformas.

***

## JavaScript SDK

O SDK JavaScript da Didit oferece uma forma programática de integrar a verificação, com controlo total sobre a experiência do utilizador.

**Principais funcionalidades:**

* Gestão de sessões e callbacks de eventos
* Suporte para React, Vue, Angular, NextJS, Nuxt, Svelte e JavaScript puro
* Suporte total para TypeScript
* Modos modal e inline

**Início rápido:**

```javascript theme={null}
import { DiditSdk } from '@didit-protocol/sdk-web';

DiditSdk.shared.onComplete = (result) => {
  switch (result.type) {
    case 'completed':
      console.log('Verification completed!');
      console.log('Session ID:', result.session?.sessionId);
      console.log('Status:', result.session?.status);
      break;
    case 'cancelled':
      console.log('User cancelled verification');
      break;
    case 'failed':
      console.error('Verification failed:', result.error?.message);
      break;
  }
};

// Start verification with the `url` returned by POST /v3/session/ (or your UniLink)
DiditSdk.shared.startVerification({
  url: 'https://verify.didit.me/session/3FaJ9wLqX2Mz'
});
```

→ [**Documentação completa do JavaScript SDK**](https://docs.didit.me/pt/integration/web-sdks/javascript-sdk.md)

***

## InContext (Iframe)

Incorpore o fluxo de verificação diretamente na sua aplicação através de um iframe. Experiência fluida, sem redirecionar os utilizadores para fora do seu site.

**Principais funcionalidades:**

* UniLink (sem necessidade de backend) — configuração em \< 1 minuto
* Sessão de API (com backend) — personalização completa
* Implementações modal e inline
* Exemplos de componentes React

**Início rápido:**

```html theme={null}
<iframe 
  src="https://verify.didit.me/u/YOUR_WORKFLOW_ID_BASE64"
  style="width: 100%; height: 700px; border: none;" 
  allow="camera; microphone; geolocation; clipboard-write; fullscreen; autoplay; encrypted-media; digital-credentials-get"
></iframe>
```

→ [**Documentação completa do InContext**](https://docs.didit.me/pt/integration/web-sdks/incontext-iframe.md)

***

## Redirect

Redirecione os utilizadores para a página de verificação alojada pela Didit. Após a conclusão, os utilizadores regressam ao seu URL de retorno.

**Principais funcionalidades:**

* Máxima compatibilidade com navegadores
* Suporte para verificação entre dispositivos
* Integração simples
* Funciona quando o acesso à câmara através de iframe é problemático

**Início rápido:**

```javascript theme={null}
// After creating a session via your backend
window.location.href = verificationUrl;
```

→ [**Documentação completa do Redirect**](https://docs.didit.me/pt/integration/web-sdks/web-redirect.md)

***

## Comparação

| Funcionalidade | JavaScript SDK | InContext (Iframe) | Redirect |
| - | - | - | - |
| Tempo de configuração | 3 min | \< 1 min | 5 min |
| Backend necessário | Opcional | Opcional | Sim |
| Permanece no seu domínio | Sim | Sim | Não |
| Suporte entre dispositivos | Sim | Sim | Sim |
| Controlo programático total | Sim | Limitado | Apenas callback |
| Callbacks de eventos | Em tempo real | `postMessage` | Apenas callback |
| Marca branca | Sim | Sim | Sim |
| Compatibilidade com navegadores | Todos | Todos | Todos |

> [!NOTE]
>
> Os três métodos entregam resultados finais e assinados através de [webhooks](https://docs.didit.me/pt/integration/webhooks.md). A comparação acima descreve a experiência no navegador, não a forma como recebe a decisão de verificação.

***

## Configuração

### Permissões obrigatórias do iframe

Para integrações com iframe InContext, inclua sempre estas permissões:

```html theme={null}
allow="camera; microphone; geolocation; clipboard-write; fullscreen; autoplay; encrypted-media; digital-credentials-get"
```

***

## Repositórios de exemplo

> [card] [Exemplos do SDK Web](https://github.com/didit-protocol/sdk-web-examples)
>
> Exemplos em React, Vue, Angular, Next.js, Nuxt, Svelte e JavaScript puro

> [card] [Exemplo de iframe](https://github.com/didit-protocol/iframe-example)
>
> Exemplos de iframe com UniLink e com sessão de API

> [card] [Demo completa em Next.js](https://github.com/didit-protocol/didit-full-demo)
>
> Integração completa em Next.js, de ponta a ponta

> [card] [Pacote NPM](https://www.npmjs.com/package/@didit-protocol/sdk-web)
>
> `@didit-protocol/sdk-web` no npm

## Relacionados

* [Webhooks](https://docs.didit.me/pt/integration/webhooks.md) — receba resultados de verificação assinados no seu backend
* [API de criação de sessão](https://docs.didit.me/pt/sessions-api/create-session.md) — o endpoint por detrás de cada SDK web
* [SDKs nativos](https://docs.didit.me/pt/integration/native-sdks/overview.md) — iOS, Android, React Native, Flutter


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