# WebHook

## Integração com FaceSign - Login por Biometria Facial

Este guia detalha os passos necessários para integrar o **Login com FaceSign** no seu sistema, utilizando biometria facial 3D para autenticação segura dos usuários.

### Pré-requisitos

Antes de iniciar a integração, certifique-se de que você possui:

* Conta no Portal Admin da FaceSign.
* Um domínio válido para hospedar o webhook de callback.
* Ambiente de desenvolvimento configurado com suporte a Webhooks e WebView2 ou Chromium.

***

### Passo a Passo da Integração

#### 1. Crie um Webhook para Receber o Callback

Você deve criar um endpoint seguro (HTTPS) que receberá os dados do processo de autenticação realizado via FaceSign.

Exemplo:

```
https://seusistema.com.br/callback-facesign
```

#### 2. Implemente WebView2 ou Chromium na Aplicação

Incorpore uma janela web dentro da sua aplicação para carregar a URL de login da FaceSign. Isso pode ser feito com:

* **WebView2 (Windows)**
* **Chromium Embedded Framework (CEF)**
* Ou qualquer outra implementação compatível com navegadores modernos.

#### 3. Aponte o WebView para a URL Parametrizada

Acesse o Portal Admin da FaceSign para obter a URL base de SSO fornecida pela plataforma. Ela será semelhante a:

```
https://dev-app.facesign.in/sso/3330bb2d-127e-0000-ada0-f7d99b44d659
```

> ⚠️ Esta URL é única por cliente e deve ser obtida diretamente no portal.

#### 4. Capture o CPF do Usuário

Implemente uma tela ou campo onde o usuário insira seu **CPF** antes de abrir o WebView. Este CPF será usado como parâmetro na URL de autenticação.

#### 5. Envie o CPF como Parâmetro na URL

Concatene o CPF coletado ao final da URL usando o parâmetro `clientUserId`.

**Exemplo:**

```
https://dev-app.facesign.in/sso/3330bb2d-127e-0000-ada0-f7d99b44d659?clientUserId=12345678901
```

> 🔐 Enviar o CPF como parâmetro aumenta a segurança e permite vincular a biometria ao usuário correto.

#### 6. Autenticação Facial no App da FaceSign

O usuário será redirecionado para o app da FaceSign, onde realizará a autenticação biométrica facial 3D.

#### 7. Configure a Página de Callback no FaceSign

No Portal Admin da FaceSign:

1. Acesse a página de edição do cliente.
2. Vá até a aba **Funcionalidades**.
3. Localize o botão **Habilitar SSO** e clique para ativá-lo.
4.

```
<figure><img src="https://2933983217-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FZHOws1GppZYJspgX4wu1%2Fuploads%2FjQa9tH0UEm021Lc3epVL%2Fhabilitar%20SSO.png?alt=media&#x26;token=e851aadd-d3a1-443b-9e2a-23fffecf6692" alt=""><figcaption></figcaption></figure>
```

5. Selecione a opção **Webhook**.
6.

```
<figure><img src="https://2933983217-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FZHOws1GppZYJspgX4wu1%2Fuploads%2FxVBJWC5b9vX6LfSafjdx%2FSelecione_WebHook.png?alt=media&#x26;token=049e58d4-b604-4223-8588-f050bd98e4d3" alt=""><figcaption></figcaption></figure>
```

#### 8. Informe a URL do WebHook

Preencha o campo **“URL para callback Webhook”** com o endpoint criado no passo 1:

<figure><img src="https://2933983217-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FZHOws1GppZYJspgX4wu1%2Fuploads%2FM6DonDCPvwfBtGq0oSOZ%2Furl_callBack.png?alt=media&#x26;token=4940cf0d-b1ce-47cb-a259-3d0aac56aec0" alt=""><figcaption></figcaption></figure>

#### 09.  Faça uma chamada para o endpoint de validação. A chamada deve ser feita para o endpoint gerado pelo portal

<figure><img src="https://2933983217-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FZHOws1GppZYJspgX4wu1%2Fuploads%2FA0bEKI8SW6ubWIDVyMz7%2Flink_SSO.png?alt=media&#x26;token=5252ce5c-b29e-4ac7-8175-08e77fd282d7" alt=""><figcaption></figcaption></figure>

#### 10. Receba o Callback no Formato JSON

Após a autenticação bem-sucedida, a FaceSign enviará uma requisição POST contendo os seguintes dados:

```json
{
  "clientId": "30af224e-9ac6-40eb-89f9-b2a7d2081a59",
  "status": "Ativo",
  "cpf": "24748342820",
  "name": "Leandro Gujev Firmino",
  "face": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCALQAeQDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCpt4qNhVpwAOKrsm7mgCtKuKruauSLVZ4+aAMm/sjcqaw3Mli2GB2V1kiYrNvbRJ1KkUAZsd0HXcpqQXW7qcfWse8gksZCEPy1V8yZj97FAHRf...
  "coordinates": "latitude: -20.4238977, longitude: -49.9681062",
  "ipAdrress": "192.168.2.116",
  "transactionID": "68290cd6-4517-4d71-6730-08dd51a42f40"
}
```

#### 11. Regras de Autenticação na Aplicação

* Caso a resposta seja positiva, libere o acesso do usuário.
* Caso contrário, negue o acesso e registre o erro para auditoria.
* Armazene os dados pessoais de forma segura, respeitando as normas de privacidade, como LGPD.

***

### Considerações Finais

Com esta integração, seu sistema ganha um método de autenticação altamente seguro e simplificado, reduzindo a dependência de senhas e otimizando a experiência do usuário.

### Suporte e Contato

Para suporte técnico ou dúvidas, utilize o Portal Admin FaceSign ou entre em contato com nossa equipe através dos canais oficiais.
