Pixcord Guide
TermosDiscordComece a usar
  • Iniciando no Pixcord
  • Notas de atualização
  • Termos de uso
  • 👋Adicionando meu servidor
    • Iniciando no Pixcord
  • 📊Painel de controle do meu servidor
    • Geral (em breve)
    • Estilos
      • Banner
      • Ícone
      • Título
      • Plano de fundo
      • Categorias
      • Produto padrão
      • Embed
      • Temas
    • Saque (em breve)
    • Produtos
      • Criando um produto
      • Apresentação
      • Promoção
      • Requerir login
      • Quantidade
      • Informações adicionais
      • Campos
        • Membro do servidor
        • Usuário do Discord
        • Texto
        • Nickname de Minecraft
      • Ações
        • Ações disponíveis
          • Adicionar cargo
          • Remover cargo
          • Esperar
          • Enviar mensagem
          • Desbanir
          • Mutar
        • Ações extra
          • Request em API
          • Comando em servidor de Minecraft
    • Estatísticas (em breve)
    • Registros (em breve)
    • Chaves (em breve)
  • ℹ️Informações
    • Placeholders
    • Premium
  • 🔌Extras e plug-ins
    • API (em breve)
    • Sites e aplicativos (Request na API)
    • Minecraft
Fornecido por GitBook
Nesta página
  • Passo-a-passo demonstrativo
  • 1. No Pixcord...
  • 2. No Website...
  • 3. No Pixcord...
  • 4. No Website...
  • 5. Estrutura do request
  • 6. Continuando nosso código...
  1. Extras e plug-ins

Sites e aplicativos (Request na API)

Sabemos que vender produtos em seu website ou aplicativo é algo complicado que demanda tempo e muito estudo. Com o Pixcord você consegue automatizar este processo em questão de minutos, literalmente!

AnteriorAPI (em breve)PróximoMinecraft

Atualizado há 10 meses

Passo-a-passo demonstrativo

1. No Pixcord...

Configurando o Produto

Após realizar as configurações básicas do produto, crie uma ação do tipo Request em API

2. No Website...

Crie uma rota API do tipo POST, como por exemplo /premiumactive

app.post("/api/premiumactive", async (req, res) => {

})

3. No Pixcord...

Configurando o Produto

4. No Website...

Por segurança, todas as requisições feitas pelo Pixcord contém x-pixcord-key nos seus headers. Isso evita que pessoas não autorizadas realizem um request válido em sua API.

Salve a chave encontrada na página Chaves do Pixcord em um arquivo seguro. Como por exemplo, em um arquivo .env.

PIXCORD_KEY=PIXCORD_KEY-1234567890_abcdefghijklmnopqrstuvwxyz

Atenção! Alguém com esta chave conseguirá realizar requisições maliciosas em seu website! Guarde com segurança.

Voltando para a rota da API, verifique se a chave enviada nos headers do request é igual à chave salva. Caso não seja, retorne com um erro.

app.post("/api/premiumactive", async (req, res) => {
    const pixcordKey = req.headers["x-pixcord-key"];
    if (pixcordKey != process.env.PIXCORD_KEY) return res.status(403).json({ message: "Chave do Pixcord inválida." })
})

5. Estrutura do request

Os requests enviados pelo Pixcord contém as seguintes infomações:

headers: {
  "x-purchase-id": "ID da compra",
  "x-pixcord-key": "Chave de segurança do Pixcord citada acima",
  "x-guild-id": "ID do servidor da compra"
}, 
body: {
  fields: {
    "nome do campo": "valor do campo"
  },
  purchase: {
    id: "ID da compra",
    payment_method: "Método de pagamento",
    productId: "Id produto",
    status: "Status da compra",
    subtotal_value: "Valor total da compra, sem desconto",
    total_value: "Valor total da compra",
    discount_value: "Valor do desconto",
    usedCouponCode: "Código do cupom utilizado" || null,
    usedCouponId: "ID do cupom utilizado" || null,
    unit_value: "Preço da unidade do produto",
    quantity: "Quantidade comprada",
    loggedUser: "ID do usuário logado" || null
  }
 }

Sabendo disso, crie os campos necessários no produto do Pixcord para que o usuário seja informado, e o acesse utilizando <Request>.body.fields["nome do campo"] em sua API.

6. Continuando nosso código...

  • Obtenha o username utilizando req.body.fields["username"]

  • Procure pelo usuário no banco de dados. (await UserSchema.findOne({ username: username }))

  • Caso não encontre, retorne um erro informando.

  • Defina que o usuário é premium (user.premium = true)

  • Salve o usuário! (user.save())

app.post("/api/premiumactive", async (req, res) => {
    const pixcordKey = req.headers["x-pixcord-key"];
    if (pixcordKey != process.env.PIXCORD_KEY) return res.status(403).json({ message: "Chave do Pixcord inválida." });
    
    const username = req.body.fields["username"];
    
    const user = await UserSchema.findOne({ username: username });
    if (!user) return res.status(404).json({ message: "Usário não encontrado" });
    
    user.premium = true;
    await user.save();
    
    return res.status(200).json({ message: `Premium ativado com sucesso para ${user.username}!` })
})

Este é um exemplo simples, mas com seu código o céu é o limite!

No exemplo estaremos utilizando um website feito em e , mas utilize o que for mais adequado para você!

Após realizar as configurações básicas do produto, crie uma ação do tipo Request em API

Defina a URL com a rota criada para seu aplicativo

Pronto! A configuração do produto já está pronta! Agora basta salvar.

Retorne uma mensagem indicando sucesso! E pronto! Todo o sistema está pronto, sua integração com o já está funcionando! Em alguns simples passos, você já pode vender produtos em seu website!

🔌
Express
Mongoose
Pixcord