Primeiros passos

Este guia mostra como configurar sua primeira integração com a API PaysClub em menos de 5 minutos.

1. Criar uma API Key

Acesse Dashboard → Integrações → Chaves de API e clique em "Criar chave". Selecione os escopos que precisa e copie a chave gerada.

Guarde a chave em local seguro. Ela só é exibida uma vez.

2. Testar a conexão

Faça uma requisição simples para listar seus produtos:

Terminal
curl -s https://app.paysclub.com/api/v1/products \
  -H "Authorization: Bearer pk_live_SUA_CHAVE" | json_pp

Se tudo estiver correto, você verá a lista dos seus produtos.

3. Configurar um webhook

Para receber notificações em tempo real (ex: nova venda), crie um endpoint:

Terminal
curl -X POST https://app.paysclub.com/api/v1/webhooks \
  -H "Authorization: Bearer pk_live_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://meusite.com/api/paysclub-webhook",
    "events": ["order.paid", "member.enrolled"]
  }'
Guarde o secret retornado — você vai precisar dele para verificar a assinatura dos webhooks recebidos.

4. Processar eventos

Crie um endpoint no seu servidor para receber os webhooks:

Node.js (Express)
const express = require("express");
const crypto = require("crypto");
const app = express();

app.use(express.json());

const WEBHOOK_SECRET = process.env.PAYSCLUB_WEBHOOK_SECRET;

app.post("/api/paysclub-webhook", (req, res) => {
  // 1. Verificar assinatura
  const signature = req.headers["x-paysclub-signature"];
  const body = JSON.stringify(req.body);
  const computed = "sha256=" + crypto
    .createHmac("sha256", WEBHOOK_SECRET)
    .update(body)
    .digest("hex");

  if (!crypto.timingSafeEqual(Buffer.from(computed), Buffer.from(signature))) {
    return res.status(401).json({ error: "Invalid signature" });
  }

  // 2. Processar evento
  const { event, data } = req.body;

  switch (event) {
    case "order.paid":
      console.log("Nova venda!", data.amount, "BRL");
      // Enviar notificação, atualizar CRM, etc.
      break;

    case "member.enrolled":
      console.log("Novo membro:", data.buyer_id);
      // Adicionar ao onboarding, enviar boas-vindas, etc.
      break;
  }

  res.json({ received: true });
});

app.listen(3001);

Próximos passos

Explore a referência completa da API para ver todos os endpoints disponíveis:

  • Pedidos — consultar e gerenciar vendas
  • Produtos — listar seus produtos
  • Membros — ver compradores e acessos
  • Webhooks — todos os eventos disponíveis