A integração entre o Exact Spotter e o TOTVS CRM por meio do TOTVS IPAAS foi desenvolvida para otimizar o fluxo de informações entre essas duas plataformas. Com a integração entre as ferramentas você pode automatizar o processo de envio de lead/oportunidades geradas no Exact Spotter para o TOTVS CRM. Isso significa que os dados dos potenciais clientes são enviados automaticamente, sem a necessidade de intervenção manual, o que reduz significativamente o tempo gasto nessa tarefa e elimina erros que poderiam ocorrer durante o processo.
O fluxo de integração tem por objetivo principal integrar leads/clientes, contatos, oportunidades e atividades do Exact Spotter com o TOTVS CRM para que o profissional de vendas continue o processo de evolução no TOTVS CRM de uma oportunidade inicialmente gerada com o uso do Spotter por um assistente de vendas ou pré-vendedor.
Diagrama da integração de Leads/Oportunidades com origem no Exact Spotter para o TOTVS CRM
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2024-7-24_9-50-56.png](/download/attachments/859057685/image-2024-7-24_9-50-56.png?version=1&modificationDate=1721825764607&api=v2)
Diagrama da integração TOTVS CRM → Exact Spotter
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2024-7-24_9-51-34.png](/download/attachments/859057685/image-2024-7-24_9-51-34.png?version=1&modificationDate=1721825764493&api=v2)
Quando o lead/oportunidade entra na etapa "Lead Qualificado" do funil, é acionado um gatilho para que o registro seja enviado ao IPAAS para realizar a integração com o TOTVS CRM:
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2024-7-24_14-18-25.png](/download/attachments/859057685/image-2024-7-24_14-18-25.png?version=1&modificationDate=1721841505587&api=v2)
Abaixo estão as entidades que vem do Exact Spotter e são integradas ao TOTVS CRM.
Em cada uma delas, temos também o JSON de exemplo para aprimorar o entendimento do leitor.
Sempre que um lead é qualificado no Exact Spotter um evento é disparado para o IPAAS que integra as informações de Lead/Cliente, Contato, Oportunidade, Equipe da oportunidade e Atividade com o TOTVS CRM.
JSON de exemplo: json_lead_e_afins.txt
Lead/Cliente (Lead/Customer):
Inserção do lead/cliente no TOTVS CRM.
| Exact Spotter | Formato | TOTVS CRM |
| valor padrão true | boolean | active |
Lead.Address.Address_Maps Se nulo Então Endereço Padrão | string | addresses.address |
| variável totvs_crm_addresstypeid | uuid | addresses.addressType.id |
| Lead.Address.AddAddressInformation | string | addresses.complement |
| Lead.Address.City | string | addresses.cityName |
| Lead.Address.Country | string | addresses.countryName |
| Lead.Address.State | string | addresses.stateName |
Lead.Address.Address_Maps Se nulo Então Endereço Padrão | string | addresses.description |
| SPOTTER #' Lead.SsnEin | string | addresses.externalId |
| Lead.Address.ZipCode | string | addresses.postalCode |
| Lead.Id | string | code |
| valor padrão false | boolean | converted |
Se mandou um CNPJ Então variável totvs_crm_customerpersontype_pj Se mandou um CPF Então variável totvs_crm_customerpersontype | uuid | customerPersonType.id |
| SPOTTER # Lead.SsnEin | string | externalId |
Lead.SsnEin | string | leadIdentificationDocuments.documentNumber |
SPOTTER # Lead.SsnEin | string | leadIdentificationDocuments.externalId |
Se mandou um CNPJ Então CNPJ Se mandou um CPF Então CPF | string | leadIdentificationDocuments.identificationDocumentAcronym |
Se mandou um CNPJ Então CNPJ Se mandou um CPF Então CPF | uuid | leadIdentificationDocuments.identificationDocumentId |
| valor padrão true | boolean | leadOrigin.defaultValue |
| variável totvs_crm_leadoriginid | uuid | leadOrigin.id |
| variável totvs_crm_lead_stage | uuid | leadStage.id |
| Lead.Industry.id | uuid | locationBusinessLine.id |
| Lead.Company | string | name |
| SPOTTER # Lead.SsnEin | string | phones.externalId |
| Lead.Phone | string | phones.number |
| variável totvs_crm_phonetypeid_main | uuid | phones.phoneTypeId |
| valor padrão true | boolean | phones.standard |
Lead.SalesRep.Email (busca por username no TOTVS CRM) Se nulo Então variável totvs_crm_default_user | uuid | professionalId |
Lead.SalesRep.Email (busca por username no TOTVS CRM) Se nulo/não encontrado Então variável totvs_crm_default_user | string | professionalName |
| Lead.Company | string | tradingName |
| Lead.Site | string | website |
Contato (Contact):
Inserção do contato do lead/cliente no TOTVS CRM.
| Exact Spotter | Formato | TOTVS CRM |
| valor padrão true | boolean | active |
| Lead.Contact.Email | string | emails.email |
| variável totvs_crm_emailtypeid | uuid | emails.emailTypeId |
| SPOTTER # Lead.Contact.Id | string | emails.externalId |
| valor padrão true | boolean | emails.standard |
| SPOTTER # Lead.Contact.Id | string | externalId |
Se Lead.Contact.TypeMessenger = Facebook Então facebook Se Lead.Contact.TypeMessenger = Instagram Então instagram Se Lead.Contact.TypeMessenger = LinkedIn Então linkedin Se Lead.Contact.TypeMessenger = Twitter Então twitter | string | facebook | instagram | linkedin | twitter |
| SPOTTER # Lead.SsnEin | uuid | leadId |
| Lead.Contact.Name | string | name |
| SPOTTER # Lead.Contact.Id | string | phones.externalId |
| Lead.Contact.Phone | string | phones.number |
| variável totvs_crm_phonetypeid_main | uuid | phones.phoneTypeId |
| valor padrão true | boolean | phones.standard |
| Lead.Contact.Position | string | role |
Oportunidade (Opportunity):
Inserção da oportunidade para o lead/cliente no TOTVS CRM.
| Exact Spotter | Formato | TOTVS CRM |
Se for um Lead Então valor padrão LEAD Se for um Lead Então valor padrão CUSTOMER | string | accountType |
| SPOTTER #' Lead.SsnEin | uuid | address.id |
| SPOTTER # Lead.Contact.Id | uuid | contacts.id |
| valor padrão Oportunidade criada para o Lead + Lead.Company | string | description |
| data corrente + variável totvs_crm_expecteddays | string(uuuu-MM-dd'T'HH:mm:ss.SSS'Z') | expectedAt |
| SPOTTER # Lead.SsnEin # Lead.Id | string | externalId |
| SPOTTER # Lead.SsnEin | uuid | leadId | customerId |
| valor padrão Lead no Spotter: + Lead.PublicLink | string | note |
| variável totvs_crm_oportunity_type | uuid | opportunityTypeId |
| variável totvs_crm_pipeline | uuid | pipelineId |
| variável totvs_crm_oportunity_stage | uuid | stageId |
| data corrente | string(uuuu-MM-dd'T'HH:mm:ss.SSS'Z') | startedAt |
| valor padrão PROGRESS | string | status |
| valor padrão 0 | number | totalRecurrentValue |
| valor padrão 0 | number | totalSingleValue |
| valor padrão 0 | number | totalValue |
Lead.SalesRep.Email (busca por username no TOTVS CRM) Se nulo/não encontrado Então variável totvs_crm_default_user | uuid | userId |
Equipe da oportunidade (Team Members):
Inserção do pré vendedor na oportunidade no TOTVS CRM.
| Exact Spotter | Formato | TOTVS CRM |
| valor padrão true | boolean | active |
| valor padrão READ, UPDATE, TRANSFER e SHARE | string | allowedActions |
| SPOTTER # Lead.SsnEin # Lead.Id | string | externalId |
| valor padrão 1 | number | percentageOfParticipation |
| valor padrão true | boolean | responsible |
| variável totvs_crm_role_preseller | uuid | roleId |
Lead.SDR.Email Se nulo/não encontrado Então variável totvs_crm_preseller_default | uuid | userId |
Atividade (Activity):
Esta atividade é criada/atualizada assim que o lead/cliente é agendado/reagendado no Exact Spotter, a mesma está vinculada com a oportunidade do funil.
| Exact Spotter | Formato | TOTVS CRM |
| variável totvs_crm_activity_type | uuid | activityTypeId |
| valor padrão false | boolean | allDay |
| Appointment.Reference + Appointment.MeetingType | string | description |
| Appointment.DateTimeEndDate | string(uuuu-MM-dd'T'HH:mm:ss.SSS'Z') | endDate |
| SPOTTER # Lead.SsnEin # Lead.Id | string | externalId |
| SPOTTER # Lead.SsnEin | uuid | leadId | customerId |
| valor padrão Link Feedback: + Appointment.LinkFeedback | string | note |
| Appointment.Reference | string | origin.description |
| SPOTTER # Lead.SsnEin # Lead.Id | uuid | origin.id |
| valor padrão OPPORTUNITY | string | origin.type |
| valor padrão MEDIUM | string | priority |
| Appointment.DateTimeStartDate | string(uuuu-MM-dd'T'HH:mm:ss.SSS'Z') | startDate |
| valor padrão OPEN | string | status |
Lead.SalesRep.Email (busca por username no TOTVS CRM) Se nulo/não encontrado Então variável totvs_crm_default_user | uuid | userId |
É necessário contratar o pacote Essential ou superior do Exact Spotter.
Clone o diagrama de uma unidade de negócio existente no projeto Standard-CRM-Spotter-PRODUCAO, no IPAAS. Como sugestão, clonar o diagrama TSE001 - TOTVS SAO PAULO
Para isso, realize os seguintes procedimentos:
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2025-9-8_9-28-56.png](/download/attachments/859057685/image-2025-9-8_9-28-56.png?version=1&modificationDate=1757334533857&api=v2)
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2025-9-8_9-29-48.png](/download/attachments/859057685/image-2025-9-8_9-29-48.png?version=1&modificationDate=1757334586500&api=v2)
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2025-9-8_9-31-50.png](/download/attachments/859057685/image-2025-9-8_9-31-50.png?version=1&modificationDate=1757334708277&api=v2)
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2025-9-8_9-34-1.png](/download/attachments/859057685/image-2025-9-8_9-34-1.png?version=1&modificationDate=1757334839303&api=v2)
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2025-9-8_9-35-55.png](/download/attachments/859057685/image-2025-9-8_9-35-55.png?version=1&modificationDate=1757334952730&api=v2)
![Integrações > 7.1 - [TOTVS Corp] Exact Spotter - TOTVS CRM > image-2025-9-8_9-38-19.png](/download/attachments/859057685/image-2025-9-8_9-38-19.png?version=1&modificationDate=1757335096923&api=v2)
Cadastre um usuário no TOTVS CRM para a integração, este usuário deverá ser admin e ser marcado no banco como tal. Solicitar ao time de devOps da TOTVS CRM.
O fluxo de integração utiliza variáveis para que seja possível integrar mais unidades de negócio sem a necessidade de criar um projeto completo de integração.
As variáveis adotadas para cada unidade de negócio ficam armazenadas em um objeto personalizado do CRM, com o cadastro disponível em:
> Telas customizadas > Variáveis CRM x Spotter
Devem ser preenchidos os campos do formulário para cada unidade de negócio, abaixo:
| Coluna | Valor de exemplo | Observação |
|---|---|---|
| DIAGRAMA IPAAS | TSE000 - TOTVS TESTE | Nome do diagrama da unidade clonada no iPaaS |
| CRM COMPANYID | ab58f2c6-3e15-46a1-88a2-bce7f3d3a2dx | Identificador no CRM da unidade de negócio, cadastrado como empresa |
| CRM ROLE ID | ddf7aab8-d605-475e-99c4-d7af93259978 | Identificador no CRM do papel do usuário |
| CRM BEARER TOKEN | Bearer TOKEN | Token do usuário de integração do TOTVS CRM criado exclusivamente para a integração da unidade em questão. OBS: esse usuário é importante para diferenciar as demais unidades caso o time interno precise identificar problemas. OBS2: esse valor é pego da seguinte forma:
|
| CRM ID AGRUPADOR DE VENDA | 0034 | Código do agrupador de venda padrão para a oportunidade, para a unidade de negócio |
| CRM DESCRIÇÃO AGRUPADOR DE VENDA | TRADICIONAL | Descrição do agrupador de venda padrão para a oportunidade, para a unidade de negócio |
| SPOTTER TOKEN EXACT | 5c895e3f-e498-4a6d-b191-819660cbe523 | Token do usuário de integração do Spotter, localizado em: configuracoes/integracoes
|
| SPOTTER DEFAULT PRE SELLER | [email protected] | E-mail do usuário padrão cadastrado como pré-vendedor, utilizado caso não encontre o email do pré-vendedor da oportunidade no Spotter |
| SPOTTER DEFAULT USER | [email protected] | E-mail do usuário padrão cadastrado como vendedor, utilizado caso não encontre o email do pré-vendedor da oportunidade no Spotter |
Após configurado as variáveis específicas da unidade, é necessário criar os Workflows que dispara a volta da atualização da oportunidade para o Spotter
| Nome | Gatilho | Ação | Filtros | URL |
| Exact Spotter - Oportunidade Perdida | Oportunidade perdida | Chamar um endpoint HTTP remoto | Empresa = UNIDADE DA CORP AND ID Externo contém SPOTTER | URL do serviço do IPAAS Opportunity TOTVS CRM to Lead Exact Spotter
|
| Exact Spotter - Oportunidade Ganha | Oportunidade ganha | Chamar um endpoint HTTP remoto | Empresa = UNIDADE DA CORP AND ID Externo contém SPOTTER | URL do serviço do IPAAS Opportunity TOTVS CRM to Lead Exact Spotter
|
| Exact Spotter - Oportunidade Descartada | Oportunidade descartada | Chamar um endpoint HTTP remoto | Empresa = UNIDADE DA CORP AND ID Externo contém SPOTTER | URL do serviço do IPAAS Opportunity TOTVS CRM to Lead Exact Spotter
|
Para que o lead/cliente seja integrado corretamente com o TOTVS CRM, é necessário cadastrar o evento leadqualified no Exact Spotter que chamará o diagrama TSE000 - TOTVS TESTE que criamos acima como exemplo.
Utilize a seguinte documentação para inserir os eventos: https://exactspotter.docs.apiary.io/#/reference/0/webhooks-insercao
Dica: você pode utilizar o programa Postman para inserir o evento.
Segue documentação para auxilio: https://exactspotter.docs.apiary.io/#/reference/0/webhooks-insercao
O evento que vamos adicionar é:
Com o seguinte body:
{
"event": "event.leadqualified",
"url": "URL do Webhook do diagrama TSE000 - TOTVS TESTE"
} |
Após isso, todo lead qualificado no Exact Spotter será integrado com o TOTVS CRM.
FAQ
É possível customizar a integração para atender às necessidades específicas de um negócio?
Sim, é possível contemplar campos customizados de interesse do cliente, porém, será necessária uma contratação adicional do serviço. A inclusão desses campos personalizados exigirá uma modificação no diagrama/pipeline do IPAAS fornecido ao cliente específico.
É importante destacar que o modelo atual do IPAAS utiliza apenas os campos padrão disponibilizados pela API do TOTVS CRM. Portanto, qualquer adição de campos personalizados requer uma alteração no IPAAS, que será realizada através do atendimento da área de serviços.
Dessa forma, o cliente terá a oportunidade de personalizar a integração de acordo com suas necessidades específicas, incluindo campos customizados de interesse. O processo de alteração será coordenado pela equipe de serviços, garantindo a correta adaptação do TOTVS CRM e o bom funcionamento da integração com o Exact Spotter