--- title: 6.9. Assinantes e CCB url: https://docs.vehub.com.br/Emiss%C3%A3o%20de%20Ativos/API/Cr%C3%A9dito/6.%20Proposta/6.9.%20Assinantes%20e%20CCB/ --- # 6.9. Assinantes e CCB !!! warning "Especificação — em construção" Os serviços descritos nesta área ainda não estão disponíveis. ## 🔗 Endpoints | Método | URL | |--------|-----| | ![GET](https://img.shields.io/badge/GET-green) | `/credito/propostas/{idProposta}/assinantes` | | ![GET](https://img.shields.io/badge/GET-green) | `/credito/propostas/{idProposta}/ccb` | --- ## 🧾 Descrição Acompanha a formalização: quem precisa assinar, quem já assinou, e o download da CCB depois de concluída. Os assinantes são criados **quando a proposta é registrada** na bancarizadora — antes disso, a listagem vem vazia. --- ## Listar assinantes ### 🧪 Exemplo de cURL ```bash curl -X GET "https://api.vehub.com.br/credito/propostas/1001/assinantes" \ -H "Authorization: Bearer {seu_token}" \ -H "GrupoEconomico: {seu_grupo_economico}" ``` ### 📥 Response — `200 OK` ```json [ { "id": 55, "nome": "João da Silva", "documento": "12345678900", "email": "joao@exemplo.com", "idMetodoAssinatura": 2, "metodoAssinatura": "Eletrônica", "biometria": true, "idStatusAssinatura": 1, "statusAssinatura": "Pendente", "dataAssinatura": null } ] ``` ### 🧾 Detalhamento dos Campos | Campo | Tipo | Descrição | |-------|------|-----------| | id | integer | Identificador do assinante | | nome | string | Nome do assinante | | documento | string | CPF, sem máscara | | email | string | E-mail para o qual a notificação de assinatura é enviada | | idMetodoAssinatura | integer / null | `1` Digital, `2` Eletrônica. Nulo quando a plataforma de assinatura não exige modalidade | | metodoAssinatura | string / null | Descrição do método | | biometria | boolean | `true` quando a modalidade exige biometria facial | | idStatusAssinatura | integer | `1` Pendente, `2` Assinado, `3` Rejeitado | | statusAssinatura | string | Descrição do status | | dataAssinatura | string / null | Momento da assinatura, em UTC | --- ## Quem assina | Tipo de pessoa do tomador | Assinantes | |---|---| | **Pessoa física** | O próprio tomador | | **Pessoa jurídica** | Todas as pessoas vinculadas com `representanteLegal = true` | **Não assinam:** cônjuge, avalistas, garantias (proprietário do bem, fiel depositário, agente de garantias) e o parceiro originador. !!! tip "Se falta assinante, o problema está no cadastro" Uma pessoa jurídica sem nenhum representante legal marcado não tem signatário e a formalização não avança. Garanta ao menos um `representanteLegal = true` em [4.3. Pessoa Jurídica e Representantes](../4.%20Tomador/4.3.%20Pessoa%20Jurídica%20e%20Representantes.md). --- ## ⚠️ Não existe link de assinatura A **formalização é conduzida pela bancarizadora**, que notifica cada assinante **por e-mail** com o convite de assinatura. Isso significa que: - **não há URL de assinatura** para você embutir na sua aplicação; - **não há reenvio de notificação** por esta API; - o e-mail cadastrado no tomador (ou no representante legal) precisa estar **correto e acessível** — é o único canal da formalização. Acompanhe o andamento por esta listagem ou pelos [eventos de webhook](../8.%20Notificações%20-%20WebHook/8.4.%20Eventos%20de%20Proposta%20e%20Formalização.md) (`credito.assinatura.aguardando`, `credito.contrato.formalizado`). Se a sua operação exige jornada de assinatura embutida, fale com o nosso time antes de desenhar a integração. --- ## Baixar a CCB ### 🔗 Endpoint | Método | URL | |--------|-----| | ![GET](https://img.shields.io/badge/GET-green) | `/credito/propostas/{idProposta}/ccb` | Devolve o PDF da Cédula de Crédito Bancário, com `Content-Type: application/pdf`. ### 🧪 Exemplo de cURL ```bash curl -X GET "https://api.vehub.com.br/credito/propostas/1001/ccb" \ -H "Authorization: Bearer {seu_token}" \ -H "GrupoEconomico: {seu_grupo_economico}" \ --output ccb-1001.pdf ``` ### ❌ 409 Conflict — operação não finalizada ```json { "type": "https://tools.ietf.org/html/rfc9110#section-15.5.10", "status": 409, "errors": [ { "campo": null, "mensagem": "A CCB estará disponível quando a operação for finalizada. Situação atual: Aguardando assinaturas." } ] } ``` !!! important "A CCB só existe depois de finalizada" O download exige que a proposta esteja no status `6` — **Finalizado**. Enquanto a formalização está em curso (`5` — Aguardando assinaturas), o PDF não está disponível. Aguarde o evento `credito.contrato.formalizado` antes de tentar baixar. --- ## 🧭 Acompanhamento recomendado ```mermaid flowchart LR A[Proposta registrada] --> B[GET /assinantes
todos Pendente] B --> C[Webhook
credito.assinatura.aguardando] C --> D[Assinantes recebem e-mail] D --> E[Webhook
credito.contrato.formalizado] E --> F[GET /ccb
PDF disponível] ```