pensechatDesenvolvedores
API de integração

Integração com o Pense Chat

Ligue o sistema da sua empresa, uma automação do n8n, Make ou Zapier, ou um assistente de IA à loja e ao estoque que a empresa tem no Pense Chat. Envie produtos, preços e estoque, consulte o catálogo e receba as vendas, pela API ou por MCP.

Endereçohttps://www.pensechat.com.br
AutenticaçãoAuthorization: Bearer SEU_TOKEN
FormatoJSON
MCPChatGPT, Claude, n8n e outros sistemas

Última atualização da documentação: 10/10/2026

Visão geral

Atualizado em 10/10/2026

Cada empresa cliente do Pense Chat tem o seu catálogo, o seu estoque e as suas vendas. Com esta API, outro sistema envia produtos, preços e estoque para a empresa, consulta os produtos e busca as vendas para dar baixa. As URLs são as mesmas para todas as empresas: é o token que diz de qual empresa é a chamada.

  • Sistema de gestão (ERP) da empresa, que manda o catálogo e recebe as vendas.
  • Automações no n8n, Make, Zapier ou Power Automate, por chamada HTTP.
  • Assistentes de IA como ChatGPT e Claude, e agentes do n8n, pelo servidor MCP.
  • Código próprio, em qualquer linguagem que faça uma chamada HTTP.
POST
/api/integracao/produtosEnviar produtos, preços e estoque
GET
/api/integracao/produtosConsultar produtos, preço e estoque
GET
/api/integracao/vendasBuscar vendas, cancelamentos e devoluções
POST
/api/integracao/vendas/confirmacaoConfirmar o que foi lançado
MCP
/api/integracao/mcpServidor MCP para IA e automações

Endereço base: https://www.pensechat.com.br

Autenticação

Atualizado em 10/10/2026

Todas as chamadas usam o cabeçalho Authorization com o token da conexão. Quem gera o token é a empresa, no painel do Pense Chat, em Configurações, aba Acesso por API, e manda para quem vai integrar.

Cada token tem as próprias permissões, marcadas pela empresa: ver produtos, editar produtos, ver vendas, confirmar vendas e usar o MCP. Ele também pode ter data de validade. Uma empresa pode ter vários tokens, um para cada sistema. Se um for trocado, o antigo para de funcionar na hora.

Authorization: Bearer SEU_TOKEN
Content-Type: application/json

Para testar o token:

Terminal
curl "https://www.pensechat.com.br/api/integracao/produtos?search=mouse&limit=1" \
  -H "Authorization: Bearer SEU_TOKEN"

Se voltar 401, o token está errado, venceu ou a conexão foi desligada. Se voltar 403, o token não tem permissão para aquele recurso, ou a empresa não contratou um módulo com catálogo (Loja, Estoque ou PDV).

Formatos e padrões

Atualizado em 09/10/2026

Como cada tipo de dado deve ser enviado. Números vão sempre com ponto, como manda o padrão JSON; a loja mostra em formato brasileiro (R$ 149,90) para o cliente. Dado fora do formato é recusado com 422, e a mensagem diz o campo.

DadoFormatoExemploObservação
Data e horaISO 8601 com fuso2026-10-09T10:05:00-03:00Sem fuso é recusado. A plataforma guarda em UTC e as respostas saem em UTC (terminam em Z). O horário de referência é o de Brasília (America/Sao_Paulo).
DinheiroNúmero com ponto, 2 casas, em reais149.90Sem R$, sem separador de milhar. Texto como "149,90" é recusado. Mais de 2 casas são arredondadas.
Estoque e quantidadeNúmero, até 4 casas18 ou 2.5Fração só para produto vendido por peso ou medida (kg, m, l).
PesoNúmero em kg, até 3 casas0.250250 gramas são 0.250.
MedidasNúmero em cm, até 2 casas17.5Altura, largura e comprimento da embalagem.
CódigosTexto ou número inteiro"7120" ou 7120product_code, variant_code e store_code. Número vira texto: 7120 e "7120" são o mesmo código.
SKUTexto, até 60 caracteres7120-1Obrigatório em toda grade.
Código de barras (ean)Texto, até 14 dígitos7891234567895Pode vir null.
TextosUTF-8, com acentosMouse sem fio, pretointernal_name até 200 caracteres; internal_description até 20.000.
Verdadeiro ou falsotrue ou false, sem aspastrueUsado em is_active e pickup_in_store.
Unidade de vendaUma da listaunun, kg, g, m, m2, l, cx, par.
Valor ausentenull ou campo omitidonullQuer dizer "não informado": nunca apaga o que já está na plataforma.
Id da plataformaNúmero inteiro1532No envio você não precisa dele: use os seus códigos. Ele volta na consulta e nas vendas, em product_id e variant_id.
MensagensPortuguês (pt-BR)Os campos e os códigos de erro são em inglês; as mensagens para a pessoa ler, em português.

Nomes e códigos

Atualizado em 09/10/2026

Na plataforma, quem identifica o produto é o id, um número que nunca muda. Os seus códigos vão junto em toda resposta, para você comparar com o seu sistema.

CampoO que éQuem defineOnde aparece
product_codeCódigo do produto no seu sistema.Seu sistema, no envio. Se mudar, vira outro produto.Envio, consulta e vendas.
variant_codeCódigo da grade no seu sistema. null no produto sem grade.Seu sistema, no envio.Envio, consulta e vendas.
skuSKU da grade.Seu sistema, no envio. Pode mudar: o antigo continua achando a grade.Envio, consulta e vendas.
eanCódigo de barras.Seu sistema, no envio.Envio, consulta e vendas.
product_idId do produto na plataforma. Nunca muda.A plataforma, ao criar o produto.Consulta e vendas.
variant_idId da grade na plataforma.A plataforma, ao criar a grade.Consulta e vendas.
online_codeCódigo do produto na plataforma.No produto que nasce pelo envio, sai do seu product_code. No cadastrado no painel, é o que a empresa escolheu.Consulta e vendas.
internal_nameNome interno, como está no seu sistema.Seu sistema, no envio. Atualizado a cada envio.Envio, consulta e vendas.
internal_descriptionDescrição interna, como está no seu sistema.Seu sistema, no envio. Atualizada a cada envio.Envio.
commercial_nameNome comercial, o que o cliente vê na loja.A empresa, no painel. O envio nunca muda.Consulta e vendas. Nas vendas vem com a grade, como "Mouse Gamer, Preto".

Exemplo: o mouse 7120 do seu sistema vira na plataforma o produto 1532. Ele volta como product_id 1532 e product_code 7120. Produto cadastrado direto no painel vem com product_code null até a empresa informar o código do seu sistema no cadastro do produto. No produto novo, o nome e a descrição comerciais começam iguais aos internos, e daí em diante são da empresa.

Como começar

Atualizado em 09/10/2026

  1. Peça o token à empresa. Ela gera no painel, marca as permissões que você vai usar e manda o token para você. Ele aparece uma vez só.
  2. Teste com produtos novos. Envie 2 ou 3 produtos que ainda não estão na plataforma. Eles entram como rascunho e o cliente não vê.
  3. Confira o resultado. A resposta mostra o que foi criado, atualizado ou recusado. A empresa também vê cada envio no painel, campo a campo.
  4. Envie a carga completa. Todos os produtos da empresa, com load_type: "full", em lotes de até 2000 grades.
  5. Depois, só o que mudar. Use load_type: "incremental" e envie os produtos alterados e os novos.

Enviar produtos, preços e estoque

Atualizado em 09/10/2026

Envie os produtos no corpo da chamada POST /api/integracao/produtos. A resposta já traz o resultado.

Como o produto é identificado

  • Pelo product_code junto com o variant_code, que são os códigos do seu sistema.
  • Se só o SKU mudar, continua sendo o mesmo produto.
  • Se o product_code mudar, vira outro produto.
  • Produto sem grade vai com um item em variants e variant_code null.

Nome interno e nome comercial

  • Envie o nome e a descrição do seu sistema em internal_name e internal_description. Eles são atualizados a cada envio. Quem já envia name e description pode continuar: valem como os internos.
  • O nome e a descrição comerciais, os que o cliente vê na loja, são feitos pela empresa. No produto novo eles começam iguais aos internos, e a empresa ajusta no painel. O seu envio nunca muda o nome comercial.
  • O nome da grade (variants[].name, como "Preto") segue a mesma regra do nome comercial.

O que é atualizado

  • A cada envio: preço, promoção, custo, estoque, código de barras, SKU, ativo, nome e descrição internos.
  • Só quando o produto é criado: categoria, marca, peso e medidas. Depois disso, quem cuida é a empresa.
  • Campo vazio ou null não apaga nada.
  • is_active: false no produto tira da loja o produto inteiro, com todas as grades. Numa grade, tira só ela: no mouse em Preto, Branco e Azul, desativar o Azul deixa o Preto e o Branco à venda.
  • Produto que não vem no envio é porque não mudou, e fica como está.

Estoque

stock.on_hand é o estoque que o seu sistema tem. A venda feita na plataforma baixa o estoque na hora; enquanto ela não for lançada no seu sistema, a plataforma desconta essa venda do número que você mandar. Exemplo: tinha 6, vendeu 3 na loja física e 3 na loja virtual. O seu sistema manda 3, e a plataforma fica com 0. Depois que a venda é lançada no seu sistema e confirmada, o desconto acaba.

Exemplo

Terminal
curl -X POST "https://www.pensechat.com.br/api/integracao/produtos" \
  -H "Authorization: Bearer SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: carga-2026-10-09-1005" \
  -d @produtos.json
produtos.json
{
  "store_code": "matriz",
  "generated_at": "2026-10-09T10:05:00-03:00",
  "load_type": "full",
  "products": [
    {
      "product_code": "6561",
      "internal_name": "ADAPTADOR BLUETOOTH C/ CABO P2",
      "internal_description": "Adaptador Bluetooth 5.0 com saída P2, para som automotivo e caixa de som.",
      "brand_name": "EXEMPLO",
      "category_code": "1",
      "category_name": "GERAL",
      "sale_unit_code": "un",
      "is_active": true,
      "variants": [
        {
          "variant_code": null,
          "sku": "6561",
          "ean": "7898843500046",
          "price": 89.9,
          "cost_price": 41.2,
          "weight": 0.12,
          "height": 4,
          "width": 9,
          "length": 14,
          "is_active": true,
          "stock": {
            "on_hand": 214
          }
        }
      ]
    },
    {
      "product_code": "7120",
      "internal_name": "MOUSE GAMER RGB 7200DPI",
      "brand_name": "EXEMPLO",
      "category_code": "4",
      "category_name": "PERIFERICOS",
      "sale_unit_code": "un",
      "is_active": true,
      "variants": [
        {
          "variant_code": "1",
          "sku": "7120-1",
          "ean": "7891234567895",
          "name": "Preto",
          "color_name": "PRETO",
          "price": 149.9,
          "promo_price": 129.9,
          "promo_starts_at": "2026-10-10T00:00:00-03:00",
          "promo_ends_at": "2026-10-20T23:59:59-03:00",
          "cost_price": 72.5,
          "weight": 0.25,
          "height": 6,
          "width": 10,
          "length": 17,
          "is_active": true,
          "stock": {
            "on_hand": 18
          }
        }
      ]
    }
  ]
}

Resposta

200 OK
{
  "batch_id": 1532,
  "status": "processed_with_errors",
  "received_at": "2026-10-09T13:05:03.000Z",
  "generated_at": "2026-10-09T13:05:00.000Z",
  "totals": {
    "received": 1200,
    "created": 12,
    "updated": 340,
    "unchanged": 846,
    "rejected": 2
  },
  "rejected": [
    {
      "product_code": "7120",
      "variant_code": "3",
      "sku": "7120-3",
      "message": "O preço precisa ser maior que zero."
    },
    {
      "product_code": "9001",
      "variant_code": null,
      "sku": "9001",
      "message": "A unidade cxa não existe na plataforma. Use un, kg, g, m, m2, l, cx ou par."
    }
  ]
}

status vem como processed (tudo certo) ou processed_with_errors (algum item recusado). Um item recusado não impede os outros.

Regras

  • Obrigatórios: store_code (o código da loja da empresa, normalmente "matriz"), generated_at, e em cada item product_code e sku. O que o seu sistema não tiver, envie null: a empresa completa no painel.
  • Até 2000 itens de variants por envio e 120 envios por hora por token. Qualquer chamada, inclusive pelo MCP, tem o teto de 120 por minuto por token.
  • Se precisar reenviar, use o mesmo Idempotency-Key: o envio não é processado duas vezes.

Consultar produtos

Atualizado em 09/10/2026

Busque por product_code, sku ou search (parte do nome, o id ou o código na plataforma). A resposta mostra o nome comercial (commercial_name), o nome do seu sistema (internal_name), o preço, o preço atual com promoção e o estoque disponível de cada grade. É a consulta ideal para um assistente de IA responder "tem o produto X? quanto custa?".

Terminal
curl "https://www.pensechat.com.br/api/integracao/produtos?product_code=7120" \
  -H "Authorization: Bearer SEU_TOKEN"
200 OK
{
  "products": [
    {
      "product_id": 1532,
      "online_code": "7120",
      "product_code": "7120",
      "commercial_name": "Mouse Gamer RGB 7200 DPI",
      "internal_name": "MOUSE GAMER RGB 7200DPI",
      "status": "published",
      "variants": [
        {
          "variant_id": 2871,
          "variant_code": "1",
          "sku": "7120-1",
          "ean": "7891234567895",
          "name": "Preto",
          "price": 149.9,
          "promo_price": 129.9,
          "current_price": 129.9,
          "stock": 18,
          "is_active": true
        }
      ]
    }
  ]
}

Vendas

Atualizado em 09/10/2026

Funciona em três passos: buscar as vendas, lançar no seu sistema e confirmar. O que foi confirmado sai da lista; o que não foi volta na próxima busca.

Entram as vendas feitas a partir do dia em que a empresa ligou a integração. Vendas anteriores não aparecem aqui.

1. Buscar

Retorna até 100 documentos ainda não confirmados, dos mais antigos para os mais novos: sale (venda paga), cancel (cancelamento de venda já confirmada) e return (devolução concluída). Buscar não altera nada.

Cada item vem com product_id e variant_id (o id na plataforma), online_code (o código na plataforma), product_code e variant_code (os seus códigos), internal_name (o nome no seu sistema) e commercial_name (o nome comercial que o cliente viu).

Entrega, retirada e canal

  • channel: site é venda pela loja virtual; pos é venda no balcão (PDV).
  • pickup_in_store: false: entrega. O endereço de entrega vem em customer (CEP, rua, número, complemento, bairro, cidade e UF) e o frete em shipping_cost.
  • pickup_in_store: true: retirada na loja. O endereço vem vazio (null) e o frete é zero.

Formas de pagamento

Cada venda traz a lista payments, com uma linha por forma usada: uma venda pode ser paga parte em dinheiro e parte no cartão. installments é o número de parcelas. O method_code é o código da forma de pagamento no cadastro da empresa. Estes são os códigos padrão da plataforma; a empresa pode cadastrar outros:

method_codeFormaParcela
pixPIXNão
cartao_creditoCartão de créditoSim
cartao_debitoCartão de débitoNão
boletoBoletoNão
transferenciaTransferênciaNão
dinheiroDinheiroNão

O exemplo abaixo traz uma venda com Pix e entrega, uma com cartão de crédito em 3 vezes e retirada na loja, uma de balcão paga em dinheiro e débito, um cancelamento e uma devolução.

Terminal
curl "https://www.pensechat.com.br/api/integracao/vendas" \
  -H "Authorization: Bearer SEU_TOKEN"
200 OK
{
  "generated_at": "2026-10-09T13:10:00.000Z",
  "limit": 100,
  "documents": [
    {
      "type": "sale",
      "number": "100245",
      "channel": "site",
      "placed_at": "2026-10-09T12:41:07.000Z",
      "pickup_in_store": false,
      "customer": {
        "name": "Maria Souza",
        "document": "12345678909",
        "email": "maria@exemplo.com.br",
        "phone": "31999990000",
        "postal_code": "30140071",
        "street": "Rua da Bahia",
        "number": "1000",
        "complement": "Apto 302",
        "neighborhood": "Centro",
        "city": "Belo Horizonte",
        "state": "MG"
      },
      "items": [
        {
          "product_id": 1532,
          "variant_id": 2871,
          "online_code": "7120",
          "product_code": "7120",
          "variant_code": "1",
          "internal_name": "MOUSE GAMER RGB 7200DPI",
          "commercial_name": "Mouse Gamer RGB 7200 DPI com 6 botões, Preto",
          "sku": "7120-1",
          "ean": "7891234567895",
          "unit": "un",
          "quantity": 1,
          "unit_price": 129.9,
          "discount": 0,
          "total": 129.9,
          "unit_cost": 72.5,
          "ncm": null,
          "cest": null,
          "origin": null
        }
      ],
      "subtotal": 129.9,
      "discount": 0,
      "shipping_cost": 18.5,
      "total": 148.4,
      "payments": [
        {
          "method_code": "pix",
          "method_name": "PIX",
          "amount": 148.4,
          "installments": 1
        }
      ],
      "invoice": null
    },
    {
      "type": "sale",
      "number": "100246",
      "channel": "site",
      "placed_at": "2026-10-09T14:05:22.000Z",
      "pickup_in_store": true,
      "customer": {
        "name": "João Lima",
        "document": "98765432100",
        "email": "joao@exemplo.com.br",
        "phone": "31988887777",
        "postal_code": null,
        "street": null,
        "number": null,
        "complement": null,
        "neighborhood": null,
        "city": null,
        "state": null
      },
      "items": [
        {
          "product_id": 1532,
          "variant_id": 2871,
          "online_code": "7120",
          "product_code": "7120",
          "variant_code": "1",
          "internal_name": "MOUSE GAMER RGB 7200DPI",
          "commercial_name": "Mouse Gamer RGB 7200 DPI com 6 botões, Preto",
          "sku": "7120-1",
          "ean": "7891234567895",
          "unit": "un",
          "quantity": 2,
          "unit_price": 129.9,
          "discount": 0,
          "total": 259.8,
          "unit_cost": 72.5,
          "ncm": null,
          "cest": null,
          "origin": null
        }
      ],
      "subtotal": 259.8,
      "discount": 0,
      "shipping_cost": 0,
      "total": 259.8,
      "payments": [
        {
          "method_code": "cartao_credito",
          "method_name": "Cartão de crédito",
          "amount": 259.8,
          "installments": 3
        }
      ],
      "invoice": null
    },
    {
      "type": "sale",
      "number": "100247",
      "channel": "pos",
      "placed_at": "2026-10-09T15:30:00.000Z",
      "pickup_in_store": true,
      "customer": {
        "name": "Consumidor",
        "document": null,
        "email": null,
        "phone": null,
        "postal_code": null,
        "street": null,
        "number": null,
        "complement": null,
        "neighborhood": null,
        "city": null,
        "state": null
      },
      "items": [
        {
          "product_id": 1532,
          "variant_id": 2871,
          "online_code": "7120",
          "product_code": "7120",
          "variant_code": "1",
          "internal_name": "MOUSE GAMER RGB 7200DPI",
          "commercial_name": "Mouse Gamer RGB 7200 DPI com 6 botões, Preto",
          "sku": "7120-1",
          "ean": "7891234567895",
          "unit": "un",
          "quantity": 1,
          "unit_price": 129.9,
          "discount": 9.9,
          "total": 120,
          "unit_cost": 72.5,
          "ncm": null,
          "cest": null,
          "origin": null
        }
      ],
      "subtotal": 129.9,
      "discount": 9.9,
      "shipping_cost": 0,
      "total": 120,
      "payments": [
        {
          "method_code": "dinheiro",
          "method_name": "Dinheiro",
          "amount": 50,
          "installments": 1
        },
        {
          "method_code": "cartao_debito",
          "method_name": "Cartão de débito",
          "amount": 70,
          "installments": 1
        }
      ],
      "invoice": null
    },
    {
      "type": "cancel",
      "number": "100231",
      "canceled_at": "2026-10-09T16:02:10.000Z",
      "reason": "Cliente desistiu da compra",
      "invoice": null
    },
    {
      "type": "return",
      "number": "D100198-1",
      "order_number": "100198",
      "opened_at": "2026-10-09T16:40:00.000Z",
      "reason": "Produto com defeito",
      "restocks": false,
      "refund_amount": 129.9,
      "items": [
        {
          "product_id": 1532,
          "variant_id": 2871,
          "online_code": "7120",
          "product_code": "7120",
          "variant_code": "1",
          "internal_name": "MOUSE GAMER RGB 7200DPI",
          "commercial_name": "Mouse Gamer RGB 7200 DPI com 6 botões, Preto",
          "sku": "7120-1",
          "ean": "7891234567895",
          "quantity": 1,
          "unit_paid": 129.9,
          "unit_cost": 72.5
        }
      ],
      "invoice": null
    }
  ]
}

2. Confirmar

Envie cada documento que você lançou. processed tira da lista; rejected mantém e mostra o motivo para a empresa no pedido.

Terminal
curl -X POST "https://www.pensechat.com.br/api/integracao/vendas/confirmacao" \
  -H "Authorization: Bearer SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d @confirmacao.json
confirmacao.json
{
  "documents": [
    {
      "type": "sale",
      "number": "100245",
      "status": "processed"
    },
    {
      "type": "sale",
      "number": "100246",
      "status": "rejected",
      "message": "Produto 7120-9 não cadastrado."
    }
  ]
}
200 OK
{
  "results": [
    {
      "type": "sale",
      "number": "100245",
      "result": "saved"
    },
    {
      "type": "sale",
      "number": "100246",
      "result": "saved"
    }
  ]
}

Para cada documento, a resposta diz: saved (registrado), already_confirmed (já estava confirmado), not_found (número não existe) ou not_due (ainda não pode ser confirmado, como venda não paga).

Onde usar

Atualizado em 09/10/2026

A API é HTTP com JSON e um token no cabeçalho, então funciona em qualquer ferramenta que faça uma chamada HTTP. Abaixo, o caminho nas mais usadas.

Sistema de gestão (ERP)

O fluxo de sempre: de tempos em tempos (a cada 5 ou 10 minutos, por exemplo), o seu sistema envia os produtos que mudaram, busca as vendas novas, lança do lado dele e confirma. Use a coleção do Postman para ver cada chamada pronta antes de programar.

n8n

  1. Para automação comum, use o nó HTTP Request. Em Authentication, escolha Generic Credential Type e Header Auth, com Name Authorization e Value Bearer SEU_TOKEN.
  2. Method GET e URL https://www.pensechat.com.br/api/integracao/vendas para buscar as vendas; method POST, URL https://www.pensechat.com.br/api/integracao/produtos e Body Content Type JSON para enviar produtos.
  3. Para um agente de IA no n8n, use o nó MCP Client Tool, como está na seção do MCP abaixo.

Make

  1. Use o módulo HTTP > Make a request.
  2. URL: o endereço da chamada, como https://www.pensechat.com.br/api/integracao/vendas. Method: GET ou POST.
  3. Em Headers, adicione Authorization com o valor Bearer SEU_TOKEN. No POST, Body type Raw, Content type JSON (application/json).

Zapier

  1. Use a ação Webhooks by Zapier > Custom Request.
  2. Method e URL da chamada, como GET e https://www.pensechat.com.br/api/integracao/vendas.
  3. Em Headers, Authorization com Bearer SEU_TOKEN e, no POST, Content-Type com application/json.

Assistentes de IA e LLMs

Para ChatGPT, Claude, agentes do n8n e qualquer cliente MCP, use o servidor MCP: o assistente vê as ferramentas que o token libera e chama sozinho. Os passos estão na seção do MCP.

Agentes que leem OpenAPI, como as ações de um GPT personalizado, podem importar a especificação de https://www.pensechat.com.br/api/integracao/openapi.json e usar autenticação Bearer com o token.

Código próprio

Qualquer linguagem serve. Os exemplos abaixo buscam as vendas em JavaScript e em Python:

JavaScript
const resposta = await fetch("https://www.pensechat.com.br/api/integracao/vendas", {
  headers: { Authorization: "Bearer SEU_TOKEN" },
});
const { documents } = await resposta.json();
Python
import requests

resposta = requests.get(
    "https://www.pensechat.com.br/api/integracao/vendas",
    headers={"Authorization": "Bearer SEU_TOKEN"},
    timeout=30,
)
documents = resposta.json()["documents"]

Conectar via MCP

Atualizado em 10/10/2026

MCP é um padrão para ligar sistemas a assistentes de IA. Com ele, o ChatGPT, o Claude, o n8n e outros podem consultar produtos, estoque e vendas da empresa usando o mesmo token da API, com as mesmas permissões.

Ferramentas disponíveis:

  • enviar_produtos: Enviar produtos, preços e estoque
  • consultar_produtos: Consultar produtos, preço e estoque
  • buscar_vendas: Buscar vendas, cancelamentos e devoluções
  • confirmar_vendas: Confirmar o que foi lançado

Duas formas de conectar

FormaEndereçoUse em
URL com o tokenhttps://www.pensechat.com.br/api/integracao/mcp/SEU_TOKENChatGPT, Claude (site e aplicativo) e qualquer sistema que só pede a URL do servidor.
URL + cabeçalhohttps://www.pensechat.com.br/api/integracao/mcpn8n e plataformas que aceitam o cabeçalho Authorization: Bearer SEU_TOKEN.

A URL com o token aparece no painel da empresa, ao criar ou trocar o token. Guarde como se fosse uma senha.

ChatGPT

  1. Em Settings > Apps & Connectors > Advanced settings, ligue o Developer mode.
  2. Em Apps & Connectors, clique em Create.
  3. Nome: Pense Chat. MCP Server URL: https://www.pensechat.com.br/api/integracao/mcp/SEU_TOKEN. Authentication: No authentication.
  4. Salve e, numa conversa, ative o conector Pense Chat.

Claude (site e aplicativo)

  1. Em Configurações > Conectores, clique em Adicionar conector personalizado.
  2. Nome: Pense Chat. URL do servidor MCP remoto: https://www.pensechat.com.br/api/integracao/mcp/SEU_TOKEN.

n8n

Nó MCP Client Tool, ligado a um agente de IA:

  • Endpoint: https://www.pensechat.com.br/api/integracao/mcp
  • Server Transport: HTTP Streamable
  • Authentication: Header Auth, Name Authorization, Value Bearer SEU_TOKEN

Outros sistemas

Se o sistema aceita servidor MCP remoto, cadastre a URL com o token. Se ele pedir o tipo de conexão, escolha HTTP. Sistemas que não usam MCP, como Pipedrive, Conta Azul ou Bling, podem usar a API desta página ou o n8n como ponte.

Testar sem nenhuma ferramenta

Terminal
curl -X POST "https://www.pensechat.com.br/api/integracao/mcp/SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

O token e a URL com o token dão acesso aos dados da empresa. Não compartilhe. Se vazar, a empresa gera outro no painel e o antigo para de funcionar na hora.

Erros

Atualizado em 09/10/2026

Os erros voltam como { "code": "...", "message": "..." }. O code é fixo, para o seu sistema tratar; a message explica em português.

HTTPcodeQuando
400invalid_jsonO corpo não é um JSON válido.
401unauthorizedToken errado, conexão desligada pela empresa ou empresa desativada.
401token_expiredO token venceu. Peça um novo para a empresa.
403forbiddenO token não tem permissão para este recurso.
403module_not_contractedA empresa não contratou um módulo com catálogo (Loja, Estoque ou PDV).
404resource_disabledEste recurso está desligado na plataforma.
413too_largeMais de 2000 itens de variants. Divida o envio.
422validation_failedFormato errado. A mensagem diz o campo.
429rate_limitedMais de 120 envios na última hora, ou mais de 120 chamadas no último minuto. Espere o tempo do Retry-After.
500Falha da plataforma. Reenvie com o mesmo Idempotency-Key.

Regras

Atualizado em 09/10/2026

  • Todas as chamadas usam o cabeçalho Authorization: Bearer TOKEN. O token é gerado pela empresa no painel, com permissões próprias e, se ela quiser, data de validade.
  • Um token alcança só a empresa que o gerou. Não existe chamada que atravesse empresas.
  • Nada é apagado. Para tirar algo da loja, desative com is_active false. Não existe chamada de exclusão.
  • Pela API dá para enviar produtos, preços e estoque, consultar produtos e buscar e confirmar vendas. Recursos desligados na plataforma não aparecem aqui.
  • Não fazem parte desta API: configurações, parâmetros, integrações, IA, senhas e usuários do painel.
  • Formato: JSON, datas com fuso (ISO 8601), valores com ponto e 2 casas, peso em kg e medidas em cm.
  • Cada envio de produtos fica registrado no painel da empresa, com o que mudou em cada item.

Referência técnica

Atualizado em 10/10/2026

  • Swagger: todos os campos, tipos e respostas, com teste no navegador.
  • Postman: as chamadas prontas; preencha token nas variáveis.
  • OpenAPI (JSON): para gerar cliente, importar em outra ferramenta ou dar a um agente de IA.