Pacto Soluções
Esta página do wiki foi descontinuada e pode estar desatualizada. A documentação oficial e atualizada do NicoChat está em docs.nicochat.com/p/468-pacto-solucoes. Consulte sempre o link acima — o conteúdo abaixo é mantido apenas como histórico.
O Pacto Soluções é o NicoApp de integração com o sistema de gestão para academias Pacto (concorrente do EVO/W12). Com ele, seu bot consulta e cadastra clientes, registra observações, verifica situação, plano, parcelas em aberto, saldo em conta corrente, objetivos e histórico de presença do aluno — tudo direto do fluxo do NicoChat.
Disponível na aba de NicoApps. Base da integração: API oficial Pacto, via gateway apigw.pactosolucoes.com.br.
Como obter a credencial (token)
Diferente da EVO (usuário + senha via Basic Auth), a Pacto usa um único token, informado no campo Credencial API na instalação do app. Segundo o próprio cadastro do app, o caminho para gerar essa credencial é:
No sistema Pacto, acesse o módulo ADM.
Vá em Configurações → Integrações → ADM → API Sistema Pacto.
Clique em Gerar Credencial para criar o token de integração.
Copie o valor gerado e cole no campo Credencial API na instalação do NicoApp Pacto Soluções.
Essa credencial é enviada automaticamente pelo NicoChat em toda ação do app (todas as ações têm autenticação por token habilitada) — não é preciso configurar cabeçalho de autenticação em cada ação individualmente.
A Pacto não publica documentação pública detalhando esse fluxo passo a passo. O caminho acima reflete a configuração já registrada neste app; se o menu tiver mudado, confirme com o suporte Pacto (fale@pactosolucoes.com.br / (62) 3414-0314) ou com o gerente de conta da academia.
Limitações e requisitos de plano
Exigência de plano/módulo comercial e limite de requisições (rate limit) para a API não são divulgados publicamente pela Pacto. Confirme com o suporte ou gerente de conta da Pacto antes de dimensionar um bot de atendimento em produção.
Ao instalar e testar: comece com poucas ações e observe o campo
metaretornado pela API (mapeado internamente e usado no tratamento de erro) — mensagens de limite ou bloqueio de uso costumam aparecer ali, assim como erros HTTP 429 (too many requests) ou 401/403 (credencial inválida ou sem permissão).Módulos comerciais: como o sistema Pacto é modular, é possível que a liberação da API dependa de um módulo/complemento contratado à parte — assim como a EVO exige o plano Black. Valide isso com a Pacto antes de prometer a integração a um cliente.
O que o miniapp faz
As ações abaixo são as publicadas no catálogo do app (organizadas nas mesmas pastas usadas no editor: Leads & Dados de Contato e Dados de Alunos).
Leads & Dados de Contato
Ação | O que faz | Endpoint | Entradas principais | Saídas |
|---|---|---|---|---|
Consultar Informações de Clientes (Filtros) | Retorna clientes com base em e-mail ou CPF | GET /psec/clientes/consultarClienteJson | ID da Empresa (obrigatório, select dinâmico); E-mail, CPF (opcionais, ao menos um recomendado) | ID do Cliente, N° Matrícula, Data de Nascimento, Situação Atual, E-mail, Telefone, CPF (1º da lista) + Todos os Clientes Listados (JSON) |
Consultar Cliente por ID | Retorna os dados do cliente pelo ID | GET /v1/cliente/{codigo} | ID do Cliente (obrigatório) | Nome, N° Matrícula, Situação Atual, CPF, Telefones (array), Data de Nascimento, E-mails (array), Todas as Informações (JSON) |
Incluir Cliente | Cadastra um cliente como Visitante na empresa | POST /v2/cliente | ID da Empresa, Nome Completo, CPF, Celular (obrigatórios); N° Matrícula, Gênero, Data de Nascimento (opcionais) | ID do Cliente, Situação Atual, Todas as Informações (JSON) |
Inserir Observações no Cliente | Grava uma observação no cadastro do cliente | POST /cliente/gravarobservacao | ID da Empresa, N° Matrícula, Observação (obrigatórios) | ID da Observação |
Buscar Histórico de Presença | Obtém aulas realizadas, aulas no mês e semanas consecutivas de frequência | GET /cliente/historico-presenca | ID da Empresa, N° de Matrícula (obrigatórios) | Histórico (JSON) |
Obter Informações do Plano do Cliente | Retorna o plano atual do cliente | GET /clientes/{matricula}/dados-plano | N° de Matrícula (obrigatório) | Todas as Informações (JSON), Nome do Plano, Situação Atual, Vínculos, Possui GymPass, Possui TotalPass |
Dados de Alunos
Ação | O que faz | Endpoint | Entradas principais | Saídas |
|---|---|---|---|---|
Obter Objetivos do Aluno | Lista os objetivos cadastrados do aluno | GET /alunoTurma/objetivos/{matricula} | ID da Empresa, N° de Matrícula (obrigatórios) | Objetivos (JSON) |
Obter Parcelas em Aberto | Lista as parcelas em aberto do aluno (situação "EA", ignora remessa e multa/juros) | GET /parcelas/by-matricula/{matricula} | N° da Matrícula (obrigatório) | Parcelas em Aberto (JSON) |
Obter Saldo do Aluno | Retorna o saldo atual da conta corrente do aluno | GET /clientes/{matricula}/saldo-conta-corrente | N° Matrícula (obrigatório) | Saldo Atual |
Em desenvolvimento: o editor do app tem um décimo sub-fluxo, "Atualizar Situação de um Aluno" (endpoint previsto /psec/alunos/situacao/{id}), que ainda não foi publicado como ação no catálogo do app — hoje ele não aparece na lista de ações instaláveis. Antes de divulgar essa ação a clientes, finalize a chamada ao endpoint correto no editor do sub-fluxo.
Dicas e observações
Tratamento de erros: quando a Pacto recusa ou falha uma chamada, a ação cai no bloco
action_failed, alimentado pelo conteúdo de$.metada resposta — use o caminho de erro do bloco para tratar no fluxo (ex.: credencial inválida, matrícula não encontrada, limite de uso atingido).Limpeza de payload: em ações de escrita (ex.: Incluir Cliente), um passo de JavaScript remove do payload os campos
undefined,nullou string vazia antes de montar o corpo da requisição — evita enviar chaves em branco que a API poderia rejeitar ou interpretar incorretamente.N° de Matrícula é a chave principal: a maioria das ações de consulta de aluno (Parcelas, Saldo, Plano, Objetivos, Histórico, Observação) usa a Matrícula como identificador — ela sai de Incluir Cliente/Consultar Cliente e deve ser guardada em variável do bot ou do CRM assim que obtida.
ID do Cliente encadeado: o ID do Cliente retornado por Incluir Cliente ou Consultar (Filtros) alimenta a ação Consultar Cliente por ID.
Select dinâmico de Empresa: o campo ID da Empresa carrega as opções direto da conta Pacto conectada (fonte dinâmica "empresas"), escolhida uma vez no desenho do fluxo.
Economize requisições: como não há confirmação pública de limites, trate a API da Pacto com a mesma cautela recomendada para a EVO — evite repetir consultas de catálogo/situação a cada mensagem e monitore respostas de erro que indiquem limite de uso.