É possível conectar o Bling ao Pulsefy, mas não existe, por enquanto, uma integração nativa direta "de um clique". Para fazer isso, é necessário utilizar uma plataforma de automação como middleware ou a API pública de ambos.
O que você consegue sincronizar entre Bling e Pulsefy
- Produtos: cadastrar novos produtos no Bling e criá-los automaticamente no Pulsefy (com nome, preço, descrição e SKUs).
- Contatos/Clientes: sincronizar os dados do cliente quando um novo pedido ou oportunidade entra no pipeline.
- Pedidos e Vendas: atualizar o status de uma oportunidade no CRM do Pulsefy assim que o pedido for faturado ou enviado no Bling.
Neste método, vamos usar o n8n, por ser uma das melhores opções para essa integração. Ele oferece total flexibilidade sem os custos de mensalidade por execuções do Zapier ou Make (se você utilizar a versão self-hosted/auto-hospedada). No n8n, você usará os nós de Webhook ou HTTP Request para conversar com a API v2 do Pulsefy e a API v3 do Bling.
1. Cadastrar o aplicativo na Área do Integrador do Bling
Na API v3 do Bling, a única forma de obter credenciais de API (Client ID e Client Secret) e configurar Webhooks para enviar dados para o n8n é cadastrando um Aplicativo na Área do Integrador.
Nota
Acesse a Central de Extensões e clique em Área do Integrador, ou entre direto em bling.com.br/cadastro.aplicativos.php. Na tela de cadastro de aplicativos, clique no botão Criar aplicativo.


Visibilidade do aplicativo
- Público: o aplicativo será usado em outras contas Bling e passará por homologação. Enquanto não for homologado, o número de usuários que podem autorizá-lo fica restrito a 10.
- Privado: o aplicativo será usado apenas na própria conta Bling. É a opção recomendada para esta integração interna.

Dados do aplicativo
Clique em próximo e preencha os dados do aplicativo:
- Logo: precisa estar em .svg e na resolução mínima de 250 x 250 px. Baixe aqui a logo do Pulsefy em SVG (260 px).
- Nome: pode usar Pulsefy.
- Categoria: classificação de negócio, podendo marcar CRM.
- Descrição: apague todo o texto padrão de instruções e escreva apenas uma linha simples. Pode colar este texto: "Aplicativo de integração interna entre o Bling e o Pulsefy via n8n para sincronização de produtos e contatos."
- Descrição curta: descrição curta do aplicativo, usada na Central de Extensões.
Para os campos restantes:
- Link de redirecionamento (obrigatório): a URL de callback OAuth2 do seu n8n:
https://seu-n8n.com/rest/oauth2-credential/callback(substitua "seu-n8n.com" pelo endereço do seu n8n). O n8n possui uma rota padrão para receber a autorização OAuth2 das integrações; quando você criar a credencial do Bling dentro do n8n, ele vai pedir o Client ID e o Client Secret do app e usará esse mesmo link para validar a conta. - Link da homepage: pode usar https://pulsefy.ia.br/.
- Link do manual, vídeo demonstrativo, nome do desenvolvedor, e-mail e celular: como se trata de um aplicativo privado, alguns campos podem ser ignorados.
Lista de escopos (permissões)
O escopo é a representação da permissão para operar sobre os recursos do usuário. Informe somente os escopos necessários, passando maior clareza e segurança no momento da autorização. Para inserir os escopos, clique no botão Adicionar:

Os escopos escolhidos serão listados no formulário. Para excluir um escopo, passe o cursor sobre a linha desejada e clique no ícone da lixeira. Qualquer adição ou exclusão de escopos só é confirmada após o salvamento do aplicativo.
Exemplo prático: o usuário quer vender seus produtos no Pulsefy, já tem os produtos centralizados no Bling e quer importá-los para a aba de Produtos (Pagamentos > Produtos). Para atender a esse objetivo, busque e marque na janela de escopos:
- Produtos: Leitura e Escrita (para garantir, caso no futuro queira atualizar dados no Bling).
- Estoque: Leitura (caso queira trazer a quantidade em estoque para o Pulsefy).
- Categorias de Produtos: Leitura (opcional, mas recomendado se você organiza produtos por categorias).
Como vai funcionar o fluxo depois de salvar:
- Exportação/Sincronização: o n8n consulta os produtos cadastrados no Bling através da API usando esse escopo de Produtos.
- Criação no Pulsefy: o n8n lê cada item e o envia via API para a tela de Produtos do Pulsefy com o mesmo nome, preço e tipo (Físico).
Como funciona a baixa de estoque na prática
Venda fecha no Pulsefy ➔ n8n recebe o Webhook ➔ n8n cria Pedido de Venda no Bling ➔ Bling debita o estoque automaticamente
Se você tentar apenas "escrever" o novo saldo de estoque via API sem registrar uma venda, o Bling perde a rastreabilidade fiscal e o histórico financeiro. Criando o Pedido de Venda, o Bling debita o estoque automaticamente, gera o lançamento financeiro de receita e deixa tudo pronto para emitir a Nota Fiscal em um clique. Para isso, marque Leitura e Escrita nos escopos de Vendas / Pedidos de Venda e em Contatos. Assim seu app fica pronto para as duas pontas: puxar o catálogo para o Pulsefy e enviar as vendas de volta para o Bling.

2. Obter os tokens e autorizar o Bling no n8n
O passo após salvar o aplicativo é obter os tokens de autorização (Client ID / Secret) e autorizar a conexão dentro do n8n. Abra o aplicativo cadastrado e acesse as Informações do APP — essa tela tem os dois dados essenciais:
- Client ID: copie o código exibido clicando no ícone de cópia ao lado.
- Client Secret: clique no ícone de olho (👁️) para revelar a chave, ou clique no ícone de cópia para copiar o texto direto.

Criar a credencial OAuth2 no n8n
- Vá até a aba Credentials no seu n8n, clique em Create Credential e pesquise por OAuth2 API.
- Cole o Client ID e o Client Secret nos respectivos campos.
- Altere o campo Grant Type para Authorization Code — o Bling utiliza obrigatoriamente o fluxo de código de autorização (authorization_code) para liberar os tokens de acesso.
Como preencher os campos do formulário:
- Grant Type: Authorization Code.
- Authorization URL:
https://www.bling.com.br/Api/v3/oauth/authorize - Access Token URL:
https://api.bling.com.br/Api/v3/oauth/token - Client ID / Client Secret: cole os valores gerados no Bling.
- Authentication: mantenha como Header (envia como Basic Auth).
- Auth URI Query Parameters: apague o texto
access_type=offlinecaso venha preenchido por padrão — o Bling não utiliza esse parâmetro e ele pode gerar erro na requisição. - Ignore SSL Issues (Insecure): mantenha desativado.
Assim que mudar para Authorization Code, o n8n exibirá a URL de redirecionamento (OAuth Redirect URL) e o botão Connect my account. Ao clicar nele, uma janela popup do Bling vai abrir: faça o login (se necessário) e clique em Autorizar. O n8n atualizará a tela para Account connected.




Nota
3. Cadastrar o Webhook no Bling
O que são Webhooks? Webhook é um método de comunicação utilizado para que aplicativos e sistemas se comuniquem em tempo real de forma reativa, sempre que um evento específico ocorre. Em vez de criar uma rotina que consulte periodicamente a API do Bling, os webhooks são acionados automaticamente a cada ação (produto cadastrado, atualizado ou excluído), e o sistema recebe os dados em tempo real.
- Idempotência: caso o Bling envie o mesmo webhook duas vezes, sua aplicação deve responder a ambas as requisições com um código HTTP 2xx.
- Entrega não ordenada: não há garantia da entrega dos eventos na ordem em que foram gerados. Uma prática recomendada é gerenciar os webhooks de forma assíncrona, usando filas.
- Retentativas: serão feitas tentativas por até 3 dias. Uma requisição é considerada entregue quando o integrador responde com HTTP 2xx em até 5 segundos. Ao final das retentativas com falha, o webhook do recurso é desabilitado até ser reabilitado manualmente.
Acesse o aplicativo já cadastrado e navegue até a aba Webhooks:


Preencha os campos exatamente assim:
1. Configuração de servidores (no topo)
- Alias: um nome para identificar o seu n8n. Exemplo: n8n Pulsefy.
- URL: cole a URL de produção do nó Webhook criado no n8n. Exemplo:
https://n8n.SEU.DOMINIO.COM/webhook/bling-produtos
2. Configuração de webhooks (nas caixas abaixo)
- No bloco Produtos, clique na chave para mudar de "Webhook inativo" para Webhook ativo (a chavinha fica verde).
- Clique em Detalhes ao lado direito do bloco de Produtos.
- No menu expandido, em Servidor, selecione o servidor "n8n Pulsefy" e, em Gatilhamento / Eventos, marque Inclusão (novos produtos) e Alteração (atualizações de preço, nome ou dados).
Como testar se o Bling está enviando para o n8n
- No n8n, configure a trigger da sua automação. O Bling envia os webhooks utilizando o método POST — sempre use POST, pois o n8n rejeita se estiver aguardando um GET.
- Abra o workflow e clique em Listen for Test Event (ou Test step) no nó de Webhook.
- Salve as configurações no Bling.
- Vá no Bling e faça uma pequena alteração em um produto (ou crie um novo) em bling.com.br/produtos.php.
- O n8n vai receber o payload com os dados e o ID do produto em tempo real.

Veja que em body.data o Bling já enviou tudo o que você precisa para cadastrar no Pulsefy: ID no Bling, Nome, Preço e Descrição. Com esses dados chegando no evento, você nem precisa fazer uma segunda chamada para a API do Bling — é só criar o nó do Pulsefy no n8n.
4. Gerar a chave da Integração Privada no Pulsefy
O Pulsefy utiliza a arquitetura de chaves de API v2, substituindo a antiga API Key pelas Integrações Privadas. Para gerar a chave (Location Access Token):
- Criar Integração: no menu lateral, clique em Integrações Privadas > Criar Integração / Nova Integração.
- Preencher dados: Nome: n8n Integração; Descrição: Chave para conectar o n8n e criar produtos. Clique em Próximo.
- Selecionar escopos: busque por Products e selecione
products.readonlyeproducts.write. - Copiar o token: clique em Salvar. A tela vai gerar o Location Access Token. Copie essa chave!

A API v2 exige que você informe explicitamente qual é a subconta (locationId) que vai receber o produto. Vá em Configurações > Perfil da empresa e copie o ID de localização no cabeçalho:

5. Criar o produto no Pulsefy (nó HTTP Request no n8n)
No n8n, adicione um nó HTTP Request logo após o Webhook:
- Method: POST
- URL:
https://services.leadconnectorhq.com/products/ - Authentication: Predefined Credential Type > HighLevel API (ou insira o API Key / Bearer Token da sua subconta no cabeçalho Authorization). No campo API Key, cole a chave inteira da Integração Privada.

1. Ligar o "Send Headers"
Ative a chave Send Headers, clique em Add Header e preencha:
- Name:
Version - Value:
2021-07-28
Esse valor é a versão da API v2 do Pulsefy. Informar esse header garante que a API entenda exatamente qual estrutura de dados você está enviando e recebendo, evitando que futuras atualizações quebrem a automação. Sem ele, o Pulsefy recusa a chamada com erro 400 ou 401.
2. Ligar o "Send Body"
Ative a chave Send Body. Em Body Content Type, selecione JSON e, em Specify Body, selecione Using JSON. Cole o JSON abaixo:
{
"locationId": "SEU_LOCATION_ID",
"name": {{ JSON.stringify($json.body.data.nome) }},
"productType": "PHYSICAL",
"image": {{ JSON.stringify($json.body.data.imagemURL) }},
"description": {{ JSON.stringify($json.body.data.descricaoCurta) }},
"prices": [
{
"name": "Preço Padrão",
"type": "one_time",
"currency": "BRL",
"amount": {{ $json.body.data.preco }}
}
]
}Mantenha em Expression (ícone fx ativo): assim o n8n substitui os códigos dinâmicos pelos dados reais de cada produto que chegar no Webhook. No modo Fixed, o texto seria enviado literalmente.
Depois de colar, clique no botão vermelho Execute step para testar o envio:

Com isso, o Pulsefy autentica perfeitamente e cria os produtos vindos do Bling:

6. Colocar em produção
- Copiar a Production URL (n8n): volte no nó de Webhook, clique na aba Production URL e copie o link gerado (sem o -test).
- Atualizar a URL no Bling: em Configurações > Webhooks, cole a Production URL no lugar da URL de teste e salve.
- Ativar o workflow (n8n): no canto superior direito, altere a chave de Inactive para Active (verde) e salve o workflow (Ctrl + S ou Cmd + S).
Pronto! A partir de agora, qualquer produto criado ou editado no Bling vai direto para o Pulsefy em tempo real.
7. E se já tenho produtos antigos cadastrados? (Carga inicial / Backfill)
Para sincronizar em massa os produtos que já estão no Bling (sem editar um por um para disparar o Webhook), crie um fluxo paralelo de carga inicial no próprio n8n — o n8n suporta múltiplos gatilhos na mesma tela:
- Adicione o trigger manual: clique no
+e adicione o nó When clicking 'Execute Workflow'. - Busque os produtos do Bling: conecte um nó HTTP Request com Method
GET, URLhttps://api.bling.com.br/Api/v3/produtos?limite=100e Authentication: Predefined Credential Type > Bling OAuth2 API. - Adicione um nó Split Out: o Bling retorna uma lista (array) em
data. No campo Field To Split Out, coloquedatae deixe Include em "No Other Fields". Isso transforma a lista única em itens individuais. - Ligue o Split Out no nó do Pulsefy: conecte a saída do Split Out direto na entrada do nó HTTP Request (Pulsefy) já configurado.
- Ajuste as variáveis no JSON do Pulsefy: como os dados agora vêm do GET do Bling (e não do Webhook), troque os caminhos para usar
$jsondireto:{{ JSON.stringify($json.nome) }},{{ JSON.stringify($json.descricaoCurta) }}e{{ $json.preco }}. - Dispare a carga em massa: clique no nó When clicking 'Execute workflow' e aperte Execute workflow. O n8n vai percorrer os produtos um por um e cadastrar todos no Pulsefy automaticamente.


Como funciona na prática: para rodar o passado, você clica no botão manual uma única vez; para novos produtos, o nó de Webhook fica escutando o Bling em tempo real e dispara o mesmo nó do Pulsefy. No painel do Pulsefy, em Pagamentos > Produtos, atualize a página para ver a lista completa sendo preenchida.
Importante
