laravel-hubspot maintained by agenciafmd
Laravel - Hubspot
- Envia as conversões para o Hubspot
Instalação
composer require agenciafmd/laravel-hubspot:v12.x-dev
Antes de começarmos, é preciso solicitar uma conta para termos acesso ao Hubspot como desenvolvedor.
Isso caso o 'Marketing' responsável pela integração não tenha criado o formulário lá ainda. Caso ele já tenha
criado, peça o Código de incorporação do formulário, e pule para esse passo Código de incorporação
e depois pule para adicionar os valores no .env. Se não, continue na Documentação.
Bom, vamos começar.
Acessando o Hubspot
Configuração do formulário
O nosso objetivo inicial é criar um formulário para capturar os leads do site e enviar para o Hubspot.



Criar formulário
Agora vamos criar o formulário que iremos utilizar para capturar os leads.
Por exemplo
Seguindo os padrões que temos de LP que é {nome, email, telefone}, mas claro que se o form que você estiver codando tenha mais campos, adicione os campos necessários.

Adicionar campos
Agora vamos começar a personalizar o formulário, adicionando os campos necessários para nosso projeto.
Neste caso dos prints, o projeto precisava apenas de nome, email e telefone, então já comecei removendo o campo de "Last name" que vem por padrão.

E logo após, adicionei o campo de telefone que faltava.


Após adicionar os campos necessários, basta salvar o formulário clicando em "Revisar e Atualizar".


Código de incorporação
Pegue o código de incorporação do formulário no Hubspot para termos o valor de portalId e formId.


Agora com os valores em mãos, vamos seguir para implementação no projeto.
Uso

Dentro do nosso projeto Laravel, vamos adicionar os valores no arquivo .env:
HUBSPOT_PORTAL_ID=
HUBSPOT_FORM_ID=
Por exemplo:
HUBSPOT_PORTAL_ID=50XXXXX
HUBSPOT_FORM_ID=9fd442c4-XXXX-XXXX-XXXX-55369297a2dc
E no terminal rode o comando:
php artisan queue:listen --queue=low
Agora para implementar no nosso Submit do livewire, seguimos o exemplo abaixo:
use Agenciafmd\Hubspot\Jobs\SendConversionsToHubspot;
...
$payload = [
'fields' => [
['name' => 'firstname', 'value' => $data['name']],
['name' => 'email', 'value' => $data['email']],
['name' => 'phone', 'value' => '+55' . preg_replace('/\D/', '', $data['phone'])],
],
'context' => [
'pageUri' => request()->url(),
'pageName' => 'Contato - ' . config('app.name'),
],
];
SendConversionsToHubspot::dispatch($payload)
->delay(5)
->onQueue('low');
...
Feito isso, agora é só testar o formulário e verificar nos storage/logs/hubspot-20YY-MM-DD.log se foi registrado.

E verificar com o Marketing se o lead chegou no Hubspot.


